@font-face {
    font-family: montserrat-wght;
    src: url(../font/Montserrat/Montserrat-VariableFont_wght.ttf);
}

@font-face {
    font-family: montserrat-italic;
    src: url(../font/Montserrat/Montserrat-Italic-VariableFont_wght.ttf);
}

:root {
    --tao-white: #FFF;
    --tao-dark: #000;
    --tao-fuchsia: #FF09FB;
    --tao-blue: #00A0DF;
    --tao-blue-2: #1406D7;
    
    --tao-purple: #303068;
    --tao-purple-2: #242456;
    --tao-purple-3: #2C2C6A;
    --tao-dark-purple: #1B1B3B;
    --tao-dark-purple-2: #1E1E72;
    
    --tao-light-gray: #F1F0F4;
    --tao-light-gray2: #EFEFF3;
    --tao-light-gray3: #f9f7f8;
    --tao-dark-gray: #C5C5C5;
    --tao-light-purple: #EBEBFF;
    --tao-lightblue: #EAEBFF;

    /* --ba-form-select-bg-img-white: url("../img/down_b_arrow_icon.svg"); */
    /* --ba-form-select-bg-img-white: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjQuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMl8wMDAwMDE2NjYzOTE2OTY1MTIzNDgzMDExMDAwMDAxNTcwMDA3MTEwNTkyMzM2NjU4OF8iCgkgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAyNS43IDE1IgoJIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI1LjcgMTU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkZGRkZGO30KPC9zdHlsZT4KPGcgaWQ9Ik1vZG9fZGVfYWlzbGFtaWVudG8iPgoJPHBhdGggY2xhc3M9InN0MCIgZD0iTTAsMi4xQzAsMS42LDAuMiwxLDAuNiwwLjZDMSwwLjIsMS42LDAsMi4xLDBzMS4xLDAuMiwxLjUsMC42bDkuMiw5LjJMMjIsMC42YzAuNS0wLjUsMS4zLTAuOCwyLjEtMC42CgkJYzAuNywwLjIsMS4zLDAuOCwxLjUsMS41YzAuMiwwLjcsMCwxLjUtMC42LDIuMUwxNC40LDE0LjRDMTQsMTQuOCwxMy40LDE1LDEyLjksMTVzLTEuMS0wLjItMS41LTAuNkwwLjYsMy43QzAuMiwzLjMsMCwyLjcsMCwyLjEKCQlMMCwyLjF6Ii8+CjwvZz4KPC9zdmc+Cg=="); */
}

body * {
    font-family: 'montserrat-wght';
}

[disabled='disabled'],
.btn-disabled  {
    cursor: not-allowed;
}

.c-tao-fuchsia {
    color: var(--tao-fuchsia) !important
}

.c-tao-purple {
    color: var(--tao-purple) !important
}

#swal2-content,
#swal2-content>p {
    font-weight: 500!important;
}
.swal-text {
    color: black;
}

.management-mt {
    margin: 100px 0 25px 0;
}
.tao-talent-management.fz-22 {
    font-size: 22px;
}

.tao-talent-management {
    color: var(--tao-dark-purple-2);
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    margin: 0 0 1.75rem 0;
}
.tao-talent-management>span {
    color: var(--tao-fuchsia);
}

section {
    width: 100%;
    height: auto;
    position: relative;
    min-height: auto;
    padding: 80px 0;
    margin: 30px 0 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
select option:hover,
select:focus>option:checked {
   color: var(--tao-white)!important;
   background-color: var(--tao-fuchsia)!important;
}

.title-main-home {
    font-weight: bolder!important;
}
/* helpers  */

.btn-primary-tao {
    color: var(--tao-purple) !important;
    background-color: #fff !important;
    border-color: #fff !important;
}

.btn-purple-tao {
    color: var(--tao-white) !important;
    background-color: var(--tao-purple) !important;
    border-color: var(--tao-purple) !important;
}

.link-contracting-services.btn-purple-tao:hover {
    color: var(--tao-purple) !important;
    background-color: transparent !important;
}

.link-container {
    margin: 0 auto;
}

a.link-contracting-services {
    color: var(--tao-purple);
    margin: 25px 0 10px 0;
    width: 250px;
    height: 40px;
    font-weight: 600;
    font-size: 16px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--tao-white);
    border: 3px solid var(--tao-white);
    z-index: 1;
}

.main-home a.link-contracting-services:nth-of-type(1) {

    margin: 60px 0 10px 0;
}

a.link-contracting-services:hover {
    color: white;
    background-color: transparent;
}

a.link-outline {
    color: white;
    background-color: transparent;
}

a.link-outline:hover {
    color: var(--tao-purple)!important;
    background-color: var(--tao-white)!important;
}

/* 
 * SWIPER-SLIDERS  ----------> 
 */

.swiperTestimonial  .swiper {
    width: 100%;
    height: auto;
}

.swiperTestimonial .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: transparent;
    display: flex;
    justify-content: center;
}

.swiperTestimonial .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper-pagination-bullet {
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    font-size: 12px;
    color: #000;
    opacity: 1;
    background: rgba(0, 0, 0, 0.2);
}

.swiper-pagination-bullet-active {
    color: #fff;
    background: #007aff;
}

/* SECTION CASE SUCCESS  ----------> 
*/

section.case-success {
    margin: 0;
    background-image: url(../img/bg-casos-exito2.png);
    background-size: cover;
    background-position: left;
    background-color: var(--tao-purple);
    padding: 12px !important;
    min-height: unset;
}

img.img-case-success-persons {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* img.bg-case-success {
    width: 100%;
    height: 100%;
    top: 0;
    z-index: -1;
    object-fit: cover;
    object-position: right;
    position: absolute;
} */

.wrapper-case-success,
.wrapper-main-home {
    color: white;
    width: 100%;
    height: 75vh;
    display: flex;
    justify-content: center;
    align-items: start;
    flex-direction: column;
}

h1.title-case-success,
h2.title-our-clients,
h2.title-we-offer,
h2.title-why-work,
h2.title-our-success-cases,
h2.title-testimonials {
    font-size: 1.7rem;
    font-weight: bold;
    color: var(--tao-dark-purple-2);
    text-align: center;
}

.title-testimonials {
    margin: 0 0 20px 0;
}

h1.title-case-success {
    color: var(--tao-white);
    margin: 0 0 25px 0;
}

p.txt-case-success,
p.txt-main {
    line-height: 1.3;
    margin: 0 0 10px 0;
}

/* SECTION OUR CLIENTES  ----------> 
*/
section.our-clients,
section.what-we-offer {
    background-color: var(--tao-white);
    height: auto;
    min-height: auto;
    padding: 80px 0;
}

h2.title-our-clients {
    text-transform: capitalize;
    margin: 0 0 100px 0;
}

.clients-slide-wrapper {
    padding: 0 12px 0 12px;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 205px;
    margin: 0 auto;
}

.clients-slide-wrapper img {
    height: auto;
    max-height: 125px;
    width: 100%;
    object-fit: cover;
    margin: 0 auto;
}

.swiperClients .swiper-button-next,
.swiperClients .swiper-button-prev {
    width: 55px;
    height: 55px;
    border-radius: 50px;
    background: var(--tao-light-gray2);
}

.swiperClients .swiper-button-prev,
.swiperClients .swiper-rtl .swiper-button-next {
    left: 0;
}

.swiperClients .swiper-button-next,
.swiperClients .swiper-rtl .swiper-button-prev {
    right: 0;
}

.swiperClients .swiper-button-next:after,
.swiperClients .swiper-button-prev:after {
    font-size: 18px;
    font-weight: bolder;
    color: var(--tao-dark-purple-2);
}

/* SECTION OUR SUCCESS CASES  ----------> 
*/

section.our-success-cases {
    padding: 70px 0 0 0;
}

p.txt-our-success-cases {
    color: var(--tao-dark-purple);
    line-height: 1.3;
    padding: 40px 0 50px 0;
    font-size: 16px;
}

.success-card,
.offer-card {
    width: 95%;
    margin: 0 auto;
    background: var(--tao-white);
    display: flex;
    align-items: center;
    justify-content: start;
    flex-direction: column;
    padding: 25px;
    border-radius: 20px;
    height: auto;
    min-height: auto;

    box-shadow: 7px 9px 69px -13px rgba(93, 93, 93, 0.61);
    -webkit-box-shadow: 7px 9px 69px -13px rgba(93, 93, 93, 0.61);
    -moz-box-shadow: 7px 9px 69px -13px rgba(93, 93, 93, 0.61);
}

img.success-card-img,
img.offer-card-img {
    width: 100%;
    border-radius: 13px;
}

.success-card-wrapper,
.offer-card-wrapper {
    padding: 15px 0;
}

.success-card-title,
.offer-card-title {
    font-size: 18px;
    font-weight: 900;
    color: var(--tao-purple);
    text-transform: uppercase;
    margin: 15px 0 !important;
}

.success-card-desc,
.offer-card-desc {
    color: var(--tao-purple) !important;
    font-weight: 400;
    line-height: 1.3;
}

/* SECTION REQUIREMENTS CASES  ----------> 
*/

section.requirements {
    background-image: url(../img/bg-requirements.jpg);
    background-size: cover;
    background-position: center;
    background-color: var(--tao-purple);
    height: 300px;
    min-height: unset;
    margin: 0 0 50px 0;
}

section.requirements.banner {
    height: 300px;
    max-height: 600px;
    margin: 0;
    background-image: url(../img/banner-requirements.jpg);
    background-size: cover;
    background-position: center top;
    transform: translateY(0);
    box-shadow: unset;
    transition: all .2s ease;
}

section.requirements.banner a.link-contracting-services:hover {
    transform: translateY(-3px);
    box-shadow: 10px 10px 28px 3px rgba(0, 0, 0, 0.24);
}
.requirements-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.title-requirements {
    font-size: 24px;
    color: var(--tao-white);
    font-weight: bold;
}


/* SECTION TESTIMONIALS  ----------> 
*/

.swiperTestimonial .swiper-slide {
    align-items: start !important;
}

.swiperTestimonial .swiper-wrapper {
    align-items: center;
}

.swiperTestimonial .swiper-horizontal>.swiper-pagination-bullets,
.swiperTestimonial .swiper-pagination-bullets.swiper-pagination-horizontal,
.swiperTestimonial .swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 0px) !important;
}

.swiperTestimonial .swiper-pagination-bullet {
    background: transparent !important;
    border: 3px solid var(--tao-purple) !important;
}

.swiperTestimonial .swiper-pagination-bullet-active {
    background: var(--tao-purple) !important;
}

.swiperTestimonial .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
}

.testimonials-card {
    width: 100%;
    margin: 0 auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
}

.autor-testimonials-card {
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 40px 0;
    color: var(--tao-fuchsia);
}

.txt-testimonials-card,
.autor-testimonials-card span {
    color: var(--tao-purple);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
    text-align: left;
}

/* estructura beneficios c/nosotros v3  */
section.admin-benefits {
    margin: 0;
    padding: 0;
    background-color: #EBEBFF;
}

.admin-benefits-wrapper {
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: repeat(3, auto);
    align-items: center;
    justify-items: center;
    margin: 0 auto  60px auto;
    padding: 0 12px 12px 12px;
}

.admin-benefits-wrapper .logo-line {
    grid-column: 1/2;
    grid-row: 1/2;
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 80px 0 80px 0;
}

.admin-benefits-wrapper .banners {
    grid-column: 1/2;
    grid-row: 2/3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
    transform: unset;
}

.admin-benefits-wrapper .benefits-list {
    grid-column: 1/2;
    grid-row: 3/4;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 70px;
    padding: 0;
    transform: unset;
}
.admin-benefits-wrapper .benefits-list.how-we-work {
    gap: 35px;
}
.benefits-list .repse-title {
    width: 100%;
    margin: 90px 0 0 0;
    padding: 0 0 0 30px;
    text-align: left;
}

.admin-benefits-wrapper .logo-line img {
    position: relative;
    z-index: 1;
}

.logo-line::before {
    position: absolute;
    z-index: 2;
    content: '';
    width: 2px;
    height: 70px;
    top: 0;
    left: 50%;
    background: var(--tao-purple);
}

.logo-line:after {
    position: absolute;
    content: '';
    width: 2px;
    height: 70px;
    top: 250px;
    left: 50%;
    background: var(--tao-blue);
}
.logo-line.how-we-work::before {
    background: var(--tao-blue);
}
.logo-line.how-we-work::after {
    background: var(--tao-purple);
}

.admin-benefits-wrapper .benefits-list .benefits-item {
    width: 100%;
    color: var(--tao-purple);
    padding: 20px 12px 24px 48px;
    border-radius: 10px;
    background-color: var(--tao-white);
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 5px;
    -webkit-box-shadow: 3px 5px 14px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 3px 5px 14px 0px rgba(0, 0, 0, 0.12);
}

.admin-benefits-wrapper .benefits-list .benefits-item span:first-child {
    font-size: 20px;
    font-weight: bolder;
}

.admin-benefits-wrapper .benefits-list .benefits-item span:nth-child(2) {
    position: relative;
}
.admin-benefits-wrapper .benefits-list .benefits-item span:nth-child(2)::after {
    position: absolute;
    content: '';
    top: 1px;
    left: -35px;
    width: 28px;
    height: 28px;
    background-image: url(../img/icon-check.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
/* estructura beneficios c/nosotros v3  */

.social-init-marquee {
    position: relative;
    width: 100%;
    height: auto;
    background-color: var(--tao-white);
    overflow: hidden;
}
.social-init-marquee:before, 
.social-init-marquee:after {
    position: absolute;
    content: '';
    width: 100%;
    left: 0;
}
.social-init-marquee:before {
    top: 0;
    height: 60%;
    background-color: var(--tao-white);
}
.social-init-marquee:after {
    bottom: 0;
    height: 40%;
    background-color: var(--tao-lightblue);
}
.social-init-marquee.massive:before {
    background-color: #efeff3;
}
.social-init-marquee.massive::after {
    background-color: var(--tao-white);
}
.social-init-marquee .wrapper {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    display: flex;
    animation: tao-marquee 8s linear infinite;
}

.social-init-marquee .wrapper p {
    position: relative;
    display: flex;
    color: var(--tao-fuchsia);
    font-size: 50px;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    margin: 0;
    padding: 0 12px 0 0;
}
.social-init-marquee .wrapper span.tao {
    color: var(--tao-purple);
}
@keyframes tao-marquee {
    0% { transform: translateX(-100%) }
    100% { transform: translateX(0) }
}

/* Slider ---  */
.how-we-work-tao .swiper {
    margin: 40px 0 80px 0;
    background-color: transparent;
}
.how-we-work-tao  .swiper-slide {
    width: 80%;
}
.how-we-work-tao .swiper-horizontal>.swiper-pagination-bullets, 
.swiper-pagination-bullets.swiper-pagination-horizontal {
    width: 24px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.massive-recruitment-item {
    color: var(--tao-purple);
    width: 100%;
    height: auto;
    padding: 12px 12px 12px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    background-color: transparent;
    opacity: .45;
    transform: translateY(-6px);
    border-bottom: 1px solid transparent;
    transition: all .3s ease-out;
}
.massive-recruitment-item span:first-child {
    font-size: 18px;
    font-weight: 600;
    color: var(--tao-blue);
}
.massive-recruitment-item span:nth-child(2) {
    line-height: 1.3;
    text-align: left;
}

.swiper-slide.swiper-slide-active>.massive-recruitment-item {
    opacity: 1;
    border-bottom: 1px solid var(--tao-purple);
    transform: translateY(0);
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    .admin-benefits-wrapper {
        width: 70%;
    }
    .social-init-marquee .wrapper {
        animation: tao-marquee 15s linear infinite;
    }
    .social-init-marquee .wrapper p {
        font-size: 80px;
    }
    .how-we-work-tao  .swiper-slide {
        width: 40%;
    }

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

    .link-container {
        margin: 0;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

    .txt-testimonials-card,
    .autor-testimonials-card span {
        color: var(--tao-purple);
        font-weight: 500;
        font-size: 16px;
        text-align: center;
    }
    a.link-contracting-services {
        margin: 60px 0 10px 24px;
    }
    section {
        min-height: 100vh;
    }
    .how-we-work-tao  .swiper-slide {
        width:30%!important;
    }
    section.testimonials {
        height: auto;       
        min-height: 50vh;
    }

    .wrapper-case-success,
    .wrapper-main-home {
        height: 100vh !important;
    }

    section.requirements {
        margin: 0 0 100px 0;
    }

    section.requirements.banner {
        height: 600px;
        background-size: contain;
    }

    h1.title-case-success,
    h2.title-our-clients,
    h2.title-we-offer,
    h2.title-why-work,
    h2.title-our-success-cases,
    h2.title-testimonials {
        font-size: 2rem;
    }
    .title-requirements {
        font-size: 28px;
    }

    section.what-we-offer {
        padding: 150px 0;
    }
    section.our-clients {
        padding: 90px 0 150px 0;
    }

    .success-card,
    .offer-card {
        min-height: 475px;
    }

    section.case-success {
        margin: 25px 0 0 0;
        background-position: right;
    }

    section.our-success-cases {
        padding: 80px 0 0 0;
    }

    .swiperTestimonial .swiper-slide {
        min-height: 280px;
    }

    .testimonials-card {
        width: 90%;
    }

    .clients-slide-wrapper img {
        width: 70%;
    }

    section.requirements {
        margin: 0 0 100px 0;
    }

    /* estructura beneficios c/nosotros v3  */
      .admin-benefits-wrapper {
        width: 80%;
        padding: unset;
        margin: 0 auto  250px auto;
    }
    
    .admin-benefits-wrapper {
        grid-template-columns: 1fr .4fr 1fr;
        grid-template-rows: auto;
    }
    .admin-benefits-wrapper .logo-line {
        grid-column: 2/3;
        grid-row: 1/2;
        padding: 80px 0 0 0;
    }
    .admin-benefits-wrapper .banners {
        grid-column: 1/2;
        grid-row: 1/2;
        padding: 194px 0 0 0;
        transform: translateX(60px);
    }
    .admin-benefits-wrapper .benefits-list {
        grid-column: 3/4;
        grid-row: 1/2;
        padding: 260px 0 0 0;
        transform: translateX(-30px);
    }
    .logo-line:after {
        height: 86.5%;
    } 
    .admin-benefits-wrapper .benefits-list .benefits-item {
        padding: 30px 48px 35px 72px;
    }
    .admin-benefits-wrapper .benefits-list .benefits-item span:nth-child(2)::after {
        left: -42px;
        width: 30px;
        height: 30px;
    }
    /* estructura beneficios c/nosotros v3  */

    .title-testimonials,
    .txt-testimonials-card {
        font-size: 18px;
    }
    
    
    .txt-testimonials-card {
        display: flex;
        align-items: center;
        max-width: 850px;
        min-height: 220px;
        text-overflow: ellipsis;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {}

/*XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {}