.page-id-6393 .mkdf-pli-image{
    height: 268px;
    width: auto;
    overflow: hidden;
    border-radius: 10px;
}
.single-portfolio-item .entry-title{
    font-size: 4rem;
}
.single-portfolio-item .mkdf-portfolio-single-title{
    font-size: 2rem;
}
.single-portfolio-item .mkdf-ps-related-title a, .single-portfolio-item .mkdf-ps-related-title{
    font-size: 1.5rem !important;
}
.single-portfolio-item .mkdf-ps-related-image{
    height: 213px;
    overflow: hidden;
}
.mkdf-top-bar {
    display: none !important;
}
.mkdf-side-menu-button-opener{
    display: none !important;
}
#menu-main-menu-navigation{
    margin: auto !important;
    justify-content: center;

}
.mkdf-vertical-align-containers .mkdf-position-right {
    padding-right: 50px !important;
}
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-right .mkdf-position-right-inner>.mkdf-search-opener:hover {
    border-right: 0 !important;
}
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li {
    border: 0 !important;
    width: auto;
    padding-inline: 20px;
}
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li>a {
    color: #0F2758 !important;
}

.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li>a:hover {
    color: #FED700 !important;
}
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu .current-menu-item a{
  color: #FED700 !important;
}

.mkdf-search-opener.mkdf-search-opener-svg-path .mkdf-search-opener-wrapper path, .mkdf-search-opener.mkdf-search-opener-svg-path .mkdf-search-opener-wrapper>* {
    fill: #0F2758 !important;
}
.mkdf-page-header .mkdf-menu-area{
    height: 65px !important;
}
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li:hover{
    background-image: none !important;
    transform: none !important;
}
#parrafoinicio p{
    color: #FFFFFF;
    line-height: 1.2;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 1.2rem;
    text-align: center;
    font-weight: 500;
    font-family: Inter !important;
}
.yellowm{
    color: #FED700;
     font-weight: 700;
}

.infoinicio .mkdf-iwt-icon{
    display: none !important;
}
.infoinicio h5{
      font-size: 2rem;
    font-weight: 600;
    font-family: Poppins !important;
    line-height: 1;
    height: 65px;
    display: flex;
    align-items: end;
}
.infoinicio p {
    font-family: Inter !important;
    line-height: 1.2;
    text-align: left;
    font-size: 1rem !important;
}
.spanextr h5{
    margin-top: 15px !important;
}
.imgiconhig img{
        height: auto;
    width: 123px;
}
.textimgo p{
    font-family: Poppins !important;
    font-weight: 600;   
    font-size: 1.3rem;    
    line-height: 1;
    vertical-align: middle;
    color:  #675802;
    text-transform: uppercase;
}
.textimgo p span{
    font-size: 4.5rem;    
}
/* .icontext .mkdf-eh-item:nth-child(1) {
    flex: 0 0 18%;
    max-width: 18%;
} */
.sparitem .mkdf-eh-item-content{
    display: flex;
    gap: 20px;
    width: fit-content;
}
.sparitem .mkdf-eh-item-inner{
        display: flex;
    justify-content: center;
}

#rowamarilo{
    padding: 50px 50px;
}
.changefont h6, .changefont h3{
    font-family: Poppins !important;
}
.changefont h3{
    line-height: 1 !important;
}
.changefont h5{
    font-family: Inter !important;
    line-height: 1.2 !important;
}
.fontbtn{
    font-family: Inter !important;
    font-weight: 600;   
}

.mkdf-owl-slider .owl-nav .owl-next>span, .mkdf-owl-slider .owl-nav .owl-prev>span {
    font-size: 65px;
}
.mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-next {
    left: 80px;
    border-radius: 5px;
    bottom: 4px;
}
.mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-prev {
    left: 5px;
    border-radius: 5px;
    bottom: 4px;
}
.borradimg img{
    border-radius: 10px;
}
#bannerfinal h2{
         font-family: Poppins !important;
    line-height: 0.5 !important;
    font-weight: 500;
}

.mkdf-page-footer .mkdf-footer-top-holder {
    background: linear-gradient(90deg, #0F2758 0%, #0F1F40 100%) !important;
}
.mkdf-page-footer .mkdf-footer-bottom-holder{
    background: linear-gradient(90deg, #0B1C3F 0%, #0F2758 100%) !important;
}

#block-3 img{
    max-width: 240px;
}
.mkdf-page-footer h4{
    font-family: Poppins !important;
    line-height: 1.1 !important;
    font-weight: 600;
    text-transform: uppercase;
}
.mkdf-page-footer p{
    font-family: Inter !important;
    font-weight: 400;   
    line-height: 1.1 !important;
    font-size: 1rem !important;
    color: #DDDDDD;
}
.mkdf-page-footer  a{
    font-family: Inter !important;
    font-weight: 400;   
    line-height: 1.1 !important;
    font-size: 1rem !important;
     color: #DDDDDD;
}
#text-11 p{
    font-family: Inter !important;
    font-weight: 300;
   line-height: 1.1 !important;
   color:  #FFFFFF !important;
   font-size: 0.9rem !important;
}
#text-11 p a{
    text-decoration: underline;
      color: #ffffff;
      font-weight: 300;
}

.mkdf-footer-bottom-holder .mkdf-social-icon-widget{
    font-size: 34px;
}
.mkdf-social-icons-group-widget.mkdf-square-icons .mkdf-social-icon-widget-holder{
    width: 45px;
    height: 80px;
}
.header-appear .mkdf-vertical-align-containers .mkdf-position-right{
    padding-right: 0px !important;
}

/* 
NOSOTROS */


#slider-13-slide-25-layer-5{
    font-family: Inter !important;
}
#slider-13-slide-25-layer-5 b{
    font-weight: 600 !important;
    color: #FED700;
}
#slider-13-slide-25-layer-3, #slider-13-slide-25-layer-6{
     font-family: Poppins !important;
}

.nconstruccion h6{
    font-family: Poppins !important;
    font-weight: 600;
    color: #0F2758 !important;
    font-size: .95rem;
}
.nconstruccion h3{
    font-family: Poppins !important; 
    font-weight: 600;
    color: #0F2758 !important;
    line-height: 1 !important;
}

.nconstruccion h5{
    font-family: Inter !important;
    color: #1E1E1E !important;
    line-height: 1.3 !important;
}

.misionvalores h2{
    font-family: Poppins !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 2.8rem;
}

.misionvalores h5{
     font-family: Inter !important;
    font-weight: 400 !important;
    font-size: 1rem !important;
    line-height: 1.3;
}
.titlevalores h2{
    font-family: Poppins !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 2.8rem;
}


.itemsvalores h5{
    font-family: Poppins !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 1.5rem;
    text-align: center;
}
.itemsvalores p{
    font-family: Inter !important;
    font-weight: 400 !important;
    font-size: 1rem !important;
    line-height: 1.3;
    text-align: center;
}
.itemsvalores .mkdf-iwt-icon{
    display: none !important;
}

#bnosotrofooter h2{
    font-family: Poppins !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 2.8rem;
    text-align: center;
    color: white;
        line-height: 1.2;
}
/* servicios */
#bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-top .mkdf-upper-title {
    font-size: 2vw !important;
}
#bannerservicios #mkdf-animated-switch-slider .mkdf-item-background-text .mkdf-background-text-holder, #bannerservicios #mkdf-animated-switch-slider .mkdf-item-background-text .mkdf-background-text-holder .mkdf-split-text-outer .mkdf-split-text-right {
    font-size: 3.5vw;
}
#bannerservicios #mkdf-animated-switch-slider .mkdf-item-background-text {
    top: 40%;
}
#bannerservicios .mkdf-text-bottom h4{
    font-size: 20px;
}
#bannerservicios .mkdf-btn-text{
    font-size: 20px;
}
#mkdf-animated-switch-slider .mkdf-btn.mkdf-btn-simple:not(.mkdf-btn-icon):after{
    color: #fff !important;
}
/* experiencia */
#slider-14-slide-26-layer-2{
    font-family: Inter !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    font-size: 1.1rem !important;
}

.changcoltext p{
    color: #0F2758 !important;
}

.changpaddamarillo{
    padding-bottom: 10px !important;
}
.mkdf-portfolio-list-holder h6 a{
    font-family: Poppins !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    color: #0F2758 !important;
    font-size: 0.9rem !important;
    line-height: 1.2 !important;    
}
.mkdf-portfolio-list-holder h6 {
    text-align: center !important;
}
/* contacto */

.part2contc{
    padding: 40px;
}
.part1contc{
    padding: 40px;
}
.part2contc .mkdf-st-intro-title{
    font-family: Poppins !important;
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.1;
    letter-spacing: 29%;
    text-transform: uppercase;
}
.part2contc .mkdf-section-title-holder .mkdf-st-title {
    display: block;
    margin: 0px;
    line-height: 1;
    margin-top: 12px;
    margin-bottom: 10px;
    font-family: Poppins !important;
    font-weight: 700;
    font-size: 1.7rem;
}
#conofi{
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.4rem;
    color: #0F2758;
}
.part2contc  .wpb_wrapper h5{
    margin: 0;
    margin-top: 5px;
    margin-bottom: 10px;
} 
.part2contc  .wpb_wrapper h6{
    margin: 0;
    margin-top: 2px;
}
.contdireccion{
    font-family: Inter !important;
    font-weight: 500;
    font-size: 0.8rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: #0F2758;
}
.contdireccion a{
    color: #0F2758;
    text-decoration: underline;
}
.contdireccion a:hover{
    color: #0F2758;
}
.part1contc h2{
    font-family: Poppins !important;
    font-weight: 700;
    font-size: 2rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: white;
    margin-bottom: 16px !important;
    margin-top: 0 !important;
}

.divprincont{
    display: flex;
    flex-wrap: wrap;    
    gap: 25px;
}
.divprincont div{
   flex: 0 0 calc(50% - 12.5px);
}
.titleform{
    font-family: Inter !important;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1;
    color: white;
}

.divprincont input{
   background-color: white !important;
    border-radius: 3px !important;
    margin-top: 2px !important;
    font-size: 1.2rem !important;
    font-weight: 400 !important;
    padding: 5px 8px !important;
}
.divprincont2 textarea{
     background-color: white !important;
    border-radius: 3px !important;
    margin-top: 2px !important;
    resize: none;
     font-size: 1.2rem !important;
    font-weight: 400 !important;
    padding: 5px 8px !important;
}
.divprincont3 button{
    background-color: #FED700 !important;
    font-family: Inter !important;
    font-weight: 600;
    font-size: 1.1rem;
    text-align: center;
    border-radius: 5px !important;
    color:  #0F2758 !important;
    padding-left: 70px !important;
    padding-right: 70px !important;
    padding-block: 4px !important;

}

.wpcf7-response-output{
    color: white !important;
}
#partcomplecontc .wpb_wrapper .mkdf-elements-holder{
    border-radius: 10px !important;
    overflow: hidden !important;
}


#titlemap {
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 2.8rem;
    text-transform: uppercase;
    color: #FED700;
    margin-left: 0px;
    margin-top: 40px;
    margin-bottom: 20px;
}
#contacto{
    padding-top: 70px;
}


/* disponibilidad */
.page-id-7447 .mkdf-full-width-inner{
    padding-top: 0px !important;
}
.page-id-7531 .mkdf-full-width-inner{
    padding-top: 0px !important;
        padding-bottom: 0 !important;
}

#disponibilidad{
    padding-block: 80px;
}
.titledispo{
       font-family: Poppins !important;
    font-weight: 600;
    font-size: 4rem;
    line-height: 1.1;
    vertical-align: middle;
    text-transform: uppercase;
    color: #FED700;
}

/* grid */
.grid-proyectos {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.card-proyecto {
    background: #fff;
    border-radius: 12px;
    padding: 15px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}

.card-proyecto img {
    width: 100%;
}

.card-proyecto a {
    display: block;
    background: #1f2f4a;
    color: #fff;
    text-align: center;
    padding: 10px;
    border-radius: 6px;
    margin-top: 10px;
}


.card-proyecto {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    font-family: sans-serif;
}

.card-img img {
     max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}
.card-img{
        height: 280px;
    overflow: hidden;
    border-radius: 10px;
      display: flex;
    justify-content: center;
    align-items: center;
}

.card-body {
    padding: 15px;
}

.card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.card-header h3 {
    margin: 0;
    color: #1f2f4a;
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.2rem;
    line-height: 1.1;
}

.precio {
    font-family: Poppins !important;
    font-weight: 400;
    font-size: 0.8rem;   
    line-height: 1.1;
    text-align: right;
    color: #1E1E1E;
    margin-left: 5px;
}
.precio span{
    font-weight: 500;
    font-size: 1.2rem;
}

.ubicacion {
    margin: 10px 0 12px;
    color: #2a5caa;
    font-size: 14px;
}

.caracteristicas {
    display: flex;
    justify-content: space-between;
    border-radius: 8px;
    padding: 10px;
    margin-bottom: 15px;
}

.caracteristicas .item {
       display: flex;
    align-items: center;
    gap: 5px;
    background: #F5F5F5;
    font-family: Inter !important;
    font-weight: 500;
    font-size: 0.8rem;
    line-height: 1.1;
    color: #1E1E1E;
    padding: 5px 8px;
    border-radius: 4px;

}
.ubicacion{
    font-family: Inter !important;
    font-weight: 400;
    font-size: .9rem;
    line-height: 1.1;
    color: #0F2758;
}

/* 🔥 ESPACIO PARA ICONOS */
.icono {
    width: 16px;
    height: 16px;
    display: inline-block;
    background: #ccc; /* luego aquí metes imagen */
    border-radius: 3px;
}

/* botón */
.btn-detalles {
    display: block;
    text-align: center;
    background: #1f2f4a;
    color: #fff;
    padding: 12px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: bold;
}
.imgloc{
        width: 10px !important;
    margin-right: 6px;
    vertical-align: baseline;
}
.iconm{
    width: 15px !important;
    margin-right: 5px;
}







.tabs-proyectos {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.tabs-proyectos button {
       padding: 6px 21px;
    border: none;
    background: #dddddd00;
    cursor: pointer;
    color: #CACACA;
    border: 1px solid #7B7B7B;
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.2rem;
    line-height: 1.1;
    text-transform: uppercase;
    border-radius: 8px;

}

.tabs-proyectos button.active {
    background: #1f2f4a;
    color: #fff;
    border: 1px solid #1f2f4a;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.titleseccionpro{
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.7rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: #B79B02;
}
.titledesdisp{
    font-family: Poppins !important;
    font-weight: 700;
    font-size: 2.5rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: #0F2758;
}
.linediv{
    width: 100%;
    height: 2px;
    background-color: #D9D9D9;
    margin: 40px 0;
    max-width: 100%;
}


/* single prouyecto */
.hero {
position: relative;
}

.hero{
    width: 100%;
    margin-top: 24px;
}
.imglocotrh{
    width: 30px !important;
    height: auto !important;
}    
#capadiv{
    position: absolute;
    width: 102%;
    height: 100%;
    background: linear-gradient(89.81deg, #1E1E1E 14.34%, rgba(30, 30, 30, 0) 99.83%);
    left: -15px;
    top: 0;
    z-index: 0;
}
.overlay{
    z-index: 1;
}

.overlay h1 {
    margin: 0;
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 4rem;
    line-height: 1.2;
    color: #FED700;
}

.ubicacio2 {
margin-top: 5px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: Inter !important;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.2;
    color: white;
}

.imgloc {
    width: 14px;
}

.contenido {
    display: grid;
    grid-template-columns: 1.7fr 1.3fr;
    gap: 30px;
    margin-top: 30px;
}

.sidebar {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.caracteristicas2 {
    display: flex;
    flex-direction: row;
    gap: 10px;
    margin-bottom: 20px;
}

.caracteristicas2 .item {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f5f5f5;
    padding: 10px 15px;
    border-radius: 6px;
    font-family: Inter !important;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.1;
    color: #1E1E1E;

}

.iconm {
    width: 18px;
}

.precio-box {
    background: #1f2f4a;
    color: #fff;
    padding: 15px;
    border-radius: 8px;
    text-align: center;
    margin-bottom: 15px;
    font-weight: bold;

    font-family: Poppins;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 1.1;
}
.precio-box span{
    font-size: 2rem;
    font-weight: 500;
}

.btn-contacto {
    display: block;
    text-align: center;
    background: #caa45f;
    color: #fff;
    padding: 12px;
    border-radius: 8px;
    text-decoration: none;
}

.seccionban{
    height: 280px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 26px;
    padding: 38px;
    display: flex;
    align-items: center;
        overflow: hidden;
    position: relative;
}
.return{
    position: absolute;
    top: 27px;
}
.regresarpag img{
    width: 34px;
    height: auto;
    vertical-align: middle;
        margin-right: 2px;
}
.regresarpag {
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.2rem;
    color: white;

}




.slider-proyecto {
    margin-top: 50px;
    margin-bottom: 10px;
}


.miSlider img {
    width: 100%;
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

/* flechas */
.swiper-button-next,
.swiper-button-prev {
    color: #000;
}

.miSlider {
    padding: 60px 0;
}

.miSlider .swiper-slide {
    width: 50%;
    transition: all 0.3s ease;
}   

/* 🔥 clave: capas */
.swiper-slide {
    z-index: 1;
}

.swiper-slide-active {
    z-index: 3; /* 👈 al frente */
}
.swiper-slide-prev,
.swiper-slide-next {
    transform: scale(0.9);
}

.swiper-button-next,
.swiper-button-prev {
    top: 50%;
    transform: translateY(-50%);
    
    width: 45px;
    height: 45px;
    background: #fff;
    border-radius: 5px;
    
    box-shadow: 0 5px 15px rgba(0,0,0,0.15);
    
    color: #000;
}


.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 35px !important;
    color: black !important;
}


.swiper-button-prev {
    left: calc(50% - 60px) !important;
    top: 97% !important;
    padding: 8px;
    width: 40px !important;
    height: 40px !important;
}

.swiper-button-next {
    right: calc(50% - 60px) !important;
    top: 97% !important;
    padding: 8px;
    width: 40px !important;
    height: 40px !important;
}

.swiper-slide img {
    border-radius: 20px;
    transition: all 0.3s ease;
    margin-bottom: 40px;
}


.swiper-slide-active img {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.107);
    
}


/* contacto */
/* Contenedor principal con el fondo azul de la imagen */


/* Crear las dos columnas */
.custom-contact-form .form-row {
    display: flex;
    gap: 50px;
    margin-bottom: 30px;
}

.custom-contact-form .form-group {
    flex: 1;
}

/* Estilo de las etiquetas */
.custom-contact-form label {
    display: block;
    font-family: Inter !important;
    font-weight: 500;
    font-size: 1.1rem;
    line-height: 1.1;
    color: white;
    margin-bottom: 9px;

}

/* Estilo de los campos de entrada */
.custom-contact-form input[type="text"],
.custom-contact-form input[type="email"],
.custom-contact-form input[type="tel"],
.custom-contact-form select {
    width: 100%;
    padding: 12px !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    box-sizing: border-box;
    background-color: white !important;
    font-size: 1.4rem !important;
    margin-bottom: 0;
    color: #1E1E1E !important;

}

/* Botón Amarillo Centrado */
.custom-contact-form .form-submit {
    text-align: center;
    margin-top: 20px;
}

.custom-contact-form button[type="submit"] {
    background-color: #FED700 !important; /* Amarillo de la imagen */
    color: #0F2758 !important;
    border: none;
    padding: 12px 40px;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s ease;
    font-family: Inter !important;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.1;
    text-align: center;
    vertical-align: middle;

}

.custom-contact-form button[type="submit"]:hover {
    background-color: #e6b800;
}

.contactosingle{
    margin-top: 56px;
    margin-bottom: 60px;
    background: #0F2758;
    padding: 40px 120px;
    border-radius: 20px;
}
.contactosingle h2{
    margin: 0;
    font-family: Poppins !important;
    font-weight: 700 !important;
    font-size: 2rem;
    line-height: 1.3;
    text-align: center;
    color: white;
    margin-bottom: 25px;
}
.contactosingle h2 b{
    color: #FED700;
        font-weight: 700!important;
}

/* bolsa de trabajo */

.page-id-7512 .mkdf-full-width-inner{
    padding-top: 0px !important;
}

#bolsadetrabajo{
    padding-top: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#bolsadetrabajo h1{
   margin-top: 0;
}



/* Contenedor principal */
.bolsa-contenedor {
    display: grid;
    /* Esto crea 3 columnas fijas de igual tamaño */
    grid-template-columns: repeat(3, 1fr); 
    gap: 30px;
    /* Centra las tarjetas si hay menos de 3 */
    justify-content: center; 
    /* Evita que el contenedor se desborde */
    width: 100%;
    box-sizing: border-box;
    align-items: stretch;
}

/* La tarjeta individual */
.vacante-card {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    /* IMPORTANTE: Evita que la tarjeta crezca más de lo normal */
    max-width: 400px; 
    width: 100%;
    box-sizing: border-box;
    justify-content: end;
}
.vacante-titulo{
    font-family: Poppins !important;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: #0F2758;
    margin: 0 !important;
}
.vacante-linea{
    background: #0F2758;
    height: 2px;
    width: 100%;
    margin-top: 15px;
    margin-bottom: 8px;
    max-width: 100%;
}
.iconvacante{
    width: 29px;
    height: auto;
    margin-right: 8px;
}
.vacante-info p{
    font-family: Inter !important;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.1;
    color: #7B7B7B;
    margin: 0;
}
.vacante-descripcion p{
    font-family: Inter !important;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.1;
    color: #1E1E1E;
}
.vacante-descripcion strong{
    font-family: Inter !important;
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.1;
    text-transform: uppercase;
    color: #0F2758;
}
.flexdj{
    display: flex;
    align-items: center;
    margin-bottom: 11px !important;
}

#slider-9-slide-15-layer-1{
    font-family: Poppins !important;
     font-weight: 600 !important;
    
}


/* Ajuste para que en tablets se vean 2 y en móviles 1 */
@media (max-width: 1024px) {
    .bolsa-contenedor {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .bolsa-contenedor {
        grid-template-columns: 1fr;
    }
    .vacante-card {
        max-width: 100%; /* En móvil que sí use el ancho disponible */
    }
}

/* Estilo del botón (Color amarillo sólido como tu segunda imagen) */
.vacante-boton {
    margin-top: 40px !important;
    display: block;
    text-align: center;
    background: linear-gradient(90deg, #FED700 0%, #8E7800 100%);
    color: white !important;
    padding: 15px;
    border-radius: 8px;
    font-size: 1.2rem;
     font-family: Inter !important;
    font-weight: 600;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    margin-top: auto; /* Empuja el botón siempre al final */
    transition: background 0.3s ease;
}

.vacante-boton:hover {
    background-color: #e6c800;
}

/* Bolsa single */
.regresarpag2 img{
    width: 34px;
    height: auto;
    vertical-align: middle;
        margin-right: 2px;
}
.regresarpag2 {
    font-family: Poppins !important;
    font-weight: 600;
    font-size: 1.2rem;
    color: #0F2758;

}
.bolsa-single-container {
    background-color: #fafafa;
}
.titulo-vacante{
    font-family: Poppins !important;
    font-weight: 700;
}
.icon-meta-vacante strong{
    margin-right: 10px;
}

.cuerpo-vacante h1, .cuerpo-vacante h2, .cuerpo-vacante h3, .cuerpo-vacante h4, .cuerpo-vacante h5, .cuerpo-vacante h6 {
    font-family: Inter !important;
}
.titledescp{
    font-size: 1.3rem !important;
    color: #0F2758 !important;
}
.card-postulate h2 {
     font-family: Poppins !important;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
    color: #FED700;
        margin-top: 0;
}

.col-form-vacante {
    flex: 1 1 12%;
    position: sticky;
    top: 100px;
}

/* Contenedor y etiquetas */
.form-postulacion label {
   font-family: Inter !important;
    font-weight: 500;
    font-size: 1rem;
    color: #FFFFFF;
    margin-bottom: 3px;
    display: block;
    line-height: 1.2 !important;
}

/* Campos de texto */
.form-postulacion input[type="text"],
.form-postulacion input[type="email"],
.form-postulacion input[type="tel"],
.form-postulacion input[type="number"],
.form-postulacion textarea{
    width: 100%;
    background-color: #ffffff !important;
    border: none;
    border-radius: 4px !important;
    padding: 10px !important;
    margin-bottom: 15px;
    color: #333 !important;
    font-size: 1.2rem !important;   
}

.form-postulacion textarea{
    margin-bottom: 25px !important;
}
/* El botón de "Anexa tu Currículum" */
/* Ocultamos el input original feo */
.form-postulacion input[type="file"] {
    display: none;
}

/* Estilizamos la etiqueta para que parezca el botón azul con borde */
.custom-file-upload {
    display: flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid #ffffff66;
    border-radius: 8px;
    padding: 12px;
    cursor: pointer;
    background: #002d62; /* Un poco más oscuro que el fondo */
    color: white !important;
    font-weight: 600 !important;
    transition: background 0.3s;
    font-family: Inter !important;

}

.custom-file-upload:hover {
    background: #0a1b3a;
}

.custom-file-upload .dashicons {
    margin-right: 10px;
    color: #ffcc00; /* Icono amarillo */
}

/* Botón de envío amarillo */
.form-postulacion button[type="submit"] {
    width: 100% !important;
    background-color: #FED700 !important;
    color: #0F2758 !important;
    font-family: Inter !important;
    font-weight: 600;
    font-size: 18px;
    border: none !important;
    border-radius: 5px !important;
    padding: 10px !important;
    font-weight: bold !important;
    text-transform: none !important;
    cursor: pointer;
    transition: background 0.3s;
}

.form-postulacion button[type="submit"]:hover {
    background-color: #e6c800 !important;
}



.titlegracias{
    text-align: center;
}
.parragracias{
    text-align: center;
    font-family: Inter !important;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 1.1;
    color: white;
}
.himin{
  padding-bottom: 80px;
    padding-top: 80px;
}










/* Adaptación para móviles */
@media (max-width: 600px) {
    .custom-contact-form .form-row {
        flex-direction: column;
        gap: 10px;
    }
}




/* 🔥 RESPONSIVE */
@media (max-width: 768px) {
    .contenido {
        grid-template-columns: 1fr;
    }

    
}


@media screen and (max-width: 1500px) {
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li {
        padding-inline: 14px;
    }
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu a{
        font-size: 1.2rem;
    }
    .header-appear .mkdf-main-menu>ul>li>a {
        padding: 0 20px;
        font-size: 15px;
    }
}
@media screen and (max-width: 1370px) {
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu a{
        font-size: 1rem;
    }
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li {
        padding-inline: 8px;
    }
    .mkdf-vertical-align-containers .mkdf-position-right {
        padding-right: 40px !important;
    }
    .header-appear .mkdf-vertical-align-containers .mkdf-position-right{
        padding-right: 0px !important;
    }
    #proytext h1{
        font-size: 3.5rem !important;
    }
    #bannerfinal h2 {
        font-weight: 400;
        font-size: 3rem;
    }
    footer .mkdf-social-icons-group-widget.mkdf-square-icons .mkdf-social-icon-widget-holder {
        width: 50px;
    }
    .header-appear .mkdf-main-menu>ul>li>a {
        padding: 0 12px;
        font-size: 15px;
    }

    #bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-bottom{
        margin: 25vh 0 0 ;
    }

    #bannerservicios .mkdf-text-bottom h4 {
        font-size: 17px;
    }
    .card-body {
        padding: 5px;
    }
    #slider-9-slide-15-layer-1{
        line-height: 85px !important;
        font-size: 70px !important;
    }
    #rev_slider_9_1 .rs-parallax-wrap{
            top: 200px !important;
    }
}

@media screen and (max-width: 1215px) {
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu>ul>li {
        padding-inline: 7px;
    }
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu a {
        font-size: 0.93rem;
    }
    #block-3 img {
        max-width: 200px;
    }
    /* .icontext .mkdf-eh-item:nth-child(1) {
        flex: 0 0 23%;
        max-width: 23%;
    } */
    .imgiconhig img {
        height: auto;
        width: 108px;
    }
    .textimgo p {
        font-size: 1.2rem;
    }
    .textimgo p span {
        font-size: 4rem;
    }
    .vc_custom_1774995315064 {
        padding-top: 85px !important;
        padding-bottom: 95px !important;
    }
    .mkdf-owl-slider .owl-nav .owl-next>span, .mkdf-owl-slider .owl-nav .owl-prev>span {
        font-size: 53px;
    }
    .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-next, .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-prev {
        width: 60px;
        height: 60px;
    }
    .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-next {
        left: 70px;
    }

    #bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-bottom {
        margin: 17vh 0 0;
    }
    .titledispo {
        font-size: 3.5rem;
    }
    #disponibilidad {
        padding-block: 55px;
    }
    .tabs-proyectos button {
        font-size: 1.1rem;
    }
    .titledesdisp {
        font-size: 2rem;
    }
    .titleseccionpro {
        font-size: 1.5rem;
    }
    .card-img {
        height: 200px;
    }
    .card-body {
        padding: 0px;
        padding-top: 10px;
    }
    .card-header h3 {
        max-width: 45%;
        font-size: 1.1rem;
    }
    .card-header {
        align-items: baseline;
    }
    .precio {
        font-size: 0.7rem;
    }
    .caracteristicas {
        padding: 0px;
    }
    .iconm {
        width: 12px !important;
        margin-right: 3px;
    }
    .caracteristicas .item {
        gap: 2px;
        font-size: 0.75rem;
        padding: 5px 5px;
    }
    .caracteristicas2 .item {
        padding: 8px 10px;
        font-size: 0.9rem;
    }
    .vacante-titulo {
        font-size: 1.5rem;
    }
    .vacante-card {
        padding: 23px;
    }
    .single-portfolio-item .mkdf-ps-related-image {
        height: 193px;
    }
    .single-portfolio-item .mkdf-ps-related-title a, .single-portfolio-item .mkdf-ps-related-title {
        font-size: 1.2rem !important;
    }

}
@media screen and (max-width: 1200px) {
    .page-id-6393 .mkdf-pli-image {
        height: 210px;
        width: auto !important;
    }
    .single-portfolio-item .entry-title{
        font-size: 3rem;
    }
    .single-portfolio-item .mkdf-portfolio-single-title{
        font-size: 1.8rem !important;
    }

}
@media screen and (max-width: 1190px) {
       .header-appear .mkdf-main-menu>ul>li>a {
        padding: 0 8px;
        font-size: 12.2px;
    }
    .mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-position-center .mkdf-main-menu a {
        font-size: 0.85rem;
        line-height: 1.1;
    }
    .mkdf-vertical-align-containers .mkdf-position-right {
        padding-right: 20px !important;
    }

    #imgcascos{
        text-align: center;
        padding-top: 30px;
    }
    #imgcascos img{
            width: 500px;
    }

    #slider-9-slide-15-layer-1 {
        line-height: 61px !important;
        font-size: 52px !important;
    }

}

@media screen and (max-width: 1024px) {
    .mkdf-mobile-header .mkdf-mobile-header-inner {
        background-color: rgb(15 39 88) !important;
    }
    .mkdf-mobile-header .mkdf-mobile-menu-opener.mkdf-mobile-menu-opener-predefined a .mkdf-mobile-menu-icon{
        background-color: #FED700 !important;
    }
    #menu-main-menu-navigation-2{
        text-align: center;
    }
    .imgconstruccion img{
        width: 500px;
        margin: auto;
    }
    .imgconstruccion{
        order: 2 !important;
    }
    .divnosotrosprin{
       display: flex !important;
      flex-wrap: wrap !important;
    }
    .titlevalores h2 {
        text-align: center;
    }
    #mkdf-animated-switch-slider .mkdf-content-holder .mkdf-text-bottom .mkdf-item-lower-subtitle, #mkdf-animated-switch-slider .mkdf-content-holder .mkdf-text-bottom .mkdf-item-lower-title {
        display: block;
    }
    #bannerservicios .mkdf-text-bottom h4 {
        font-size: 13px;
    }
    #bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-bottom .mkdf-item-lower-subtitle {
        font-size: 11px;
        line-height: 1.3;
    }
    #partcomplecontc .part1contc {
        width: 90% !important;
        border-radius: 10px 10px 0px 0px;
    }

    .grid-proyectos {
        grid-template-columns: repeat(2, 1fr);
    }
   
    .caracteristicas2 {
        gap: 5px;
    }
    .caracteristicas2 .item {
        padding: 8px 5px;
        font-size: 0.8rem;
    }
    .overlay h1 {
        font-size: 3rem;
    }
    .ubicacio2 {
        font-size: 1.2rem;
    }
    .imglocotrh {
        width: 23px !important;
    }
    .precio-box {
        padding: 10px;
        font-size: 1rem;
    }
    .contactosingle {
        padding: 37px 80px;
    }
    .contactosingle h2 {
        font-size: 1.8rem;
    }
    .icon-meta-vacante strong {
        margin-right: 6px;
    }
    .icon-meta-vacante p {
        align-items: baseline !important;
    }
    .icon-meta-vacante p {
        line-height: 1.1;
    }
    .page-id-6393 .mkdf-pli-image {
        height: 168px;
    }
    .single-portfolio-item .mkdf-ps-related-image {
        height: 134px;
    }

}

@media screen and (max-width: 767px) {
    #parrafoinicio p {
        font-size: 1.1rem;
    }
     #parrafoinicio p br{
       display: none !important;
    }
    .vc_custom_1581526590671 {
        padding-top: 0px !important;
        padding-bottom: 30px !important;
    }
    .infoinicio h5 {
        font-size: 1.5rem;
    }
    /* .icontext .mkdf-eh-item:nth-child(1) {
        flex: 0 0 100%;
        max-width: 100%;
        margin-top: 25px;
    } */
      #rowamarilo {
        padding: 40px 20px;
        padding-top: 15px;
    }
    #rowamarilo .wpb_single_image{
        text-align: center !important;
    }
    .textimgo p {
        font-size: 1.2rem;
        text-align: center;
    }
    .fontbtn {
        margin-bottom: 15px;
    }
    #proytext h1 {
        font-size: 2rem !important;
    }
    .vc_custom_1774987653105{
        height: 40px !important;
        margin-top: 0px !important;
    }
    .mkdf-eh-item-content.mkdf-eh-custom-6568 {
        padding: 0 4px 4px 4px !important;
    }
    .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-next, .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-prev {
        width: 45px;
        height: 45px;
    }
    .mkdf-owl-slider .owl-nav .owl-next>span, .mkdf-owl-slider .owl-nav .owl-prev>span {
        font-size: 40px;
    }
    .mkdf-image-gallery .mkdf-owl-slider .owl-nav .owl-next {
        left: 56px;
    }
    .mkdf-owl-slider .owl-nav .owl-next {
        background: #FED700 !important;
        color: black !important;
    }
    #bannerfinal h2 {
        font-size: 1.8rem;
        line-height: 1 !important;
        margin: 0;
    }
    #banfin{
        padding-top: 55px !important;
        padding-bottom: 50px !important;
    }
    .mkdf-page-footer .mkdf-footer-top-holder .mkdf-footer-top-inner.mkdf-grid {
        padding: 40px 0 10px;
    }
    .mkdf-page-footer .mkdf-column-content:not(:first-child) {
        margin-top: 0px;
    }
    footer .mkdf-social-icons-group-widget.mkdf-square-icons .mkdf-social-icon-widget-holder {
        border: 0;
    }
    .mkdf-page-footer .mkdf-footer-bottom-holder {
        border: 0;
    }
    .mkdf-footer-bottom-holder .mkdf-grid-row {
        display: flex;
        flex-wrap: wrap;
    }
    .mkdf-footer-bottom-holder .mkdf-grid-col-4:nth-child(1){
        order: 2;
    }
    .mkdf-footer-bottom-holder .mkdf-grid-col-4:nth-child(2){
        order: 1;
        margin-bottom: 20px;
    }
    .titlevalores h2 {
        font-size: 2.5rem;
    }
    #bnosotrofooter h2 {
        font-size: 1.7rem;
    }
    #bnosotrofooter h2 br{
        display: none !important;
    }
    
    #bannerservicios    #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-top .mkdf-upper-subtitle {
        display: block;
    }
    #bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-top .mkdf-upper-title {
        font-size: 3vw !important;
        line-height: 32px;
    }
    #bannerservicios #mkdf-animated-switch-slider .mkdf-item-background-text .mkdf-background-text-holder, #bannerservicios #mkdf-animated-switch-slider .mkdf-item-background-text .mkdf-background-text-holder .mkdf-split-text-outer .mkdf-split-text-right {
        font-size: 5vw;
    }
    #bannerservicios #mkdf-animated-switch-slider .mkdf-switch-slide .mkdf-text-bottom {
        margin: 20vh 0 0;
    }
    #mkdf-animated-switch-slider .mkdf-content-holder .mkdf-item-text-holder {
        width: 100%;
    }
    #slider-14-slide-26-layer-2 {
        font-size: 1rem !important;
    }
    .part1contc, .part2contc{
        padding: 5px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .divprincont div {
        flex: 0 0 100%;
    }
    .divprincont {
        gap: 0px;
    }
    #partcomplecontc .part1contc {
        width: 100% !important;
        border-radius: 10px 10px 0px 0px;
    }
    #contacto {
        padding-top: 36px;
    }
    .divprincont input{
        width: 93% !important;
            margin-bottom: 15px !important;
    }
    .divprincont2 textarea{
            margin-bottom: 15px !important;
        width: 93% !important;
    }
    .part1contc h2 {
        font-size: 1.8rem;
        text-align: center;
    }
    .divprincont3{
        text-align: center;
    }
    #titlemap {
        font-size: 2rem;
        margin-bottom: 15px;
    }

    .seccionban {
        height: 160px;
        padding: 15px;
    }

    .return {
        top: 15px;
    }
    .regresarpag {
        font-size: 1rem;
    }
    .regresarpag img {
        width: 25px;
    }
    .overlay h1 {
        font-size: 2rem;
        /* text-align: center; */
    }
    .ubicacio2 {
        font-size: 1.1rem;
        gap: 8px;
    }
    .imglocotrh {
        width: 17px !important;
    }
    .contenido {
        gap: 15px;
        margin-top: 9px;
    }
    .sidebar {
        padding: 0;
    }
    .caracteristicas2 .item {
        padding: 8px 5px;
        font-size: 0.9rem;
    }
    .miSlider .swiper-slide {
        width: 80%;
    }
    .swiper-slide img {
        border-radius: 9px;
        margin-bottom: 30px;
    }
    .swiper-button-prev {
        left: calc(50% - 48px) !important;
        width: 25px !important;
        height: 25px !important;
    }
    .swiper-button-next {
        right: calc(50% - 48px) !important;
        width: 25px !important;
        height: 25px !important;
    }
    .contactosingle {
        padding: 20px 20px;
    }
    .contactosingle h2 {
        font-size: 1.3rem;
    }
    .contactosingle h2 br{
        display: none !important;
    }
    .custom-contact-form label {
        font-size: 1rem;
    }
    .custom-contact-form input[type="text"], .custom-contact-form input[type="email"], .custom-contact-form input[type="tel"], .custom-contact-form select {
        font-size: 1.1rem !important;
    }
    .custom-contact-form .form-row {
        margin-bottom: 15px;
    }
    .custom-contact-form button[type="submit"] {
        padding: 10px 31px;
        font-size: 1.3rem;
    }
    .precio-box span {
        font-size: 1.8rem;
    }
    .seccionban {
        border-radius: 15px;
    }
    .return-vacante {
        margin-bottom: 8px;
    }
    .titulo-vacante {
        font-size: 1.6rem !important;
        margin-bottom: 18px !important;
    }
    .icon-meta-vacante p {
        flex-wrap: wrap;
    }
    .titledescp {
        font-size: 1.2rem !important;
    }
    .card-postulate {
        padding-left: 15px;
        padding-right: 15px;
    }
    .himin{
        padding: 45px 0px;
    }
    .single-portfolio-item .mkdf-ps-related-image {
        height: 100px;
    }

    #rev_slider_9_1 .rs-parallax-wrap {
        top: 40% !important;
        transform: translateY(-50%);
    }

}

@media screen and (max-width: 680px) {
    .grid-proyectos {
        grid-template-columns: repeat(1, 1fr);
    }
    .titledispo {
        font-size: 2rem;
    }
    #disponibilidad {
        padding-block: 27px;
    }
    .page-id-7447 .mkdf-row-grid-section-wrapper{
        background-size: cover;
    }
    .tabs-proyectos button {
        font-size: 1rem;
    }
    .titledesdisp {
        font-size: 1.8rem;
    }
    .titleseccionpro {
        font-size: 1.2rem;
        margin-top: 13px;
        margin-bottom: 8px;
    }
    .card-proyecto a {
        padding: 7px;
        font-size: 1rem;
    }
    .card-header {
        flex-wrap: wrap;
    }
    .card-header h3 {
      max-width: 100%;
        width: 100%;
        margin-bottom: 6px;
        font-size: 1.2rem;
    }
    .card-img {
        height: 150px;
    }

    #bolsadetrabajo {       
        flex-wrap: wrap;
    }
    #bolsadetrabajo h1 {
        margin-top: 0;
        text-align: center;
        margin-bottom: 12px;
    }
    #bolsadetrabajo .titledispo br{
        display: none !important;
    }
    .iconvacante {
        width: 24px;
        margin-right: 5px;
    }
    .vacante-titulo {
        font-size: 1.4rem;
    }

    #slider-9-slide-15-layer-1 {
        line-height: 48px !important;
        font-size: 38px !important;
    }

    .sparitem .mkdf-eh-item-content {
        align-items: center;
        gap: 10px;
        margin-bottom: 22px;
    }
    .page-id-6393 .mkdf-pli-image {
        height: 210px;
    }
    .single-portfolio-item .mkdf-ps-related-image {
        height: auto;
    }
    .overlay h1 {
        font-size: 1.1rem;
    }
    .ubicacio2 {
        font-size: 1rem;
    }
    .imglocotrh {
        width: 13px !important;
    }
}

@media screen and (max-width: 600px) {
    .page-id-6393 .mkdf-pli-image {
        height: 292px;
    }
    .single-portfolio-item .entry-title{
        font-size: 2rem !important;
    }
    .single-portfolio-item .mkdf-portfolio-single-title{
        font-size: 1.5rem !important;
    }
}


@media screen and (max-width: 480px) {
    .page-id-6393 .mkdf-pli-image {
        height: 208px;
    }
}