@import url("components.css?v=20261013-nav");
@import url("../assets/css-88da5473b4.css");

/* Estilos exclusivos del marco Talentos de Figma. */
.talentos-page {
    margin: 0;
    color: #333333;
    background: #ffffff;
    font: 400 1.125rem/1.16 "Inter", Arial, sans-serif;
}

.talentos-page *, .talentos-page *::before, .talentos-page *::after { box-sizing: border-box; }
.talentos-page h1, .talentos-page h2, .talentos-page h3, .talentos-page p { margin: 0; }
.talentos-page [hidden] { display: none !important; }
.talentos-page :focus-visible { outline: 3px solid #ff8c82; outline-offset: 4px; }
.talentos-skip { position: absolute; z-index: 101; left: 1rem; top: -5rem; padding: 1rem; background: #ffffff; color: #333333; }
.talentos-skip:focus { top: 0; }
.talentos-page .site-logo { display: flex; }
.talentos-container { width: min(84.66%, 80rem); margin-inline: auto; }
.talentos-hero, .talentos-beneficios { position: relative; width: 100%; isolation: isolate; overflow: hidden; color: #ffffff; }
.talentos-photo { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.talentos-hero::after, .talentos-beneficios::after { position: absolute; z-index: -1; inset: 0; content: ""; background: rgb(0 0 0 / 43%); }
.talentos-hero { min-height: 33.5625rem; }
.talentos-hero__photo { top: -3.9375rem; height: calc(100% + 3.9375rem); object-position: center 21%; }
.talentos-hero__content { width: min(87%, 82.25rem); margin-inline: auto; padding: 13.4rem 0 4.875rem; }
.talentos-hero h1 { font-size: clamp(2rem, 3.31vw, 3.125rem); font-weight: 800; line-height: 1.3; }
.talentos-hero h1 span { display: inline; padding: 0.02em 0.2em; margin-left: -0.2em; background: #d83832; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.talentos-hero p { max-width: 54.4375rem; font-size: 1.25rem; font-weight: 500; }
.talentos-hero h1 + p { margin-top: 1.375rem; }
.talentos-hero p + p { margin-top: 1.5rem; }
.talentos-vacantes { padding-top: 4.875rem; padding-bottom: 9.1875rem; }
.talentos-label { display: inline-flex; min-width: 16.1875rem; min-height: 3rem; padding: 0.8rem 1.5rem; align-items: center; justify-content: center; border: 1px solid currentColor; border-radius: 4rem; }
.talentos-vacantes h2, .talentos-beneficios h2 { margin-top: 2.375rem; font-size: clamp(2.125rem, 3.31vw, 3.125rem); font-weight: 800; line-height: 1.16; }
.talentos-highlight { padding: 0.02em 0.2em; color: #ffffff; background: #ed1c24; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.talentos-intro { max-width: 35.5625rem; margin-top: 2.375rem !important; }
.talentos-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4.5625rem 1.90625rem; margin-top: 5.1875rem; }
.talentos-card { display: flex; min-width: 0; min-height: 34.3125rem; padding: 3rem 1.6875rem 2.6875rem 3.4375rem; flex-direction: column; border-radius: 1.125rem; background: #f7f7f7; }
.talentos-card__rings { display: flex; align-self: flex-end; margin-right: 1.5rem; margin-bottom: 2rem; }
.talentos-card__rings span { display: grid; width: 2.075rem; height: 2.075rem; place-items: center; border: 0.6px solid #414042; border-radius: 50%; }
.talentos-card__rings span::after { width: 1rem; height: 1rem; content: ""; border: 0.6px solid #414042; border-radius: 50%; }
.talentos-card h3 { min-height: 5.375rem; font: 800 1.794rem/1.5 "Montserrat", Arial, sans-serif; }
.talentos-card:nth-child(n+4) h3 { width: calc(100% + 1.5rem); }
.talentos-card p { min-height: 4.75rem; margin-top: 1.35rem; font: 400 1.009rem/1.16 "Montserrat", Arial, sans-serif; }
.talentos-card__tools { display: grid; max-width: 18.625rem; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.05rem 0.4rem; margin: 1.15rem 0 2.8rem; padding: 0; list-style: none; }
.talentos-card__tools li { display: flex; min-height: 2.3125rem; padding: 0.45rem 0.2rem; align-items: center; justify-content: center; border-radius: 3rem; background: #ffffff; font-size: 1.009rem; text-align: center; }
.talentos-card__apply { display: flex; width: 12.25rem; min-height: 3.125rem; max-width: 100%; margin: auto auto 0; padding: 0.75rem 1rem; align-items: center; justify-content: center; border-radius: 3rem; background: #ed1c24; color: #ffffff; font-weight: 600; text-decoration: none; }
.talentos-card__apply:hover { background: #c81720; }
.talentos-beneficios { min-height: 47.5rem; }
.talentos-beneficios::after { background: rgb(0 0 0 / 48%); }
.talentos-beneficios__content { padding-top: 5.3125rem; padding-bottom: 8.5rem; }
.talentos-beneficios .talentos-highlight { margin-left: -0.2em; }
.talentos-beneficios__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2.4375rem; margin-top: 3.8125rem; }
.talentos-beneficios__grid article { padding-top: 1.125rem; border-top: 0.5rem solid #ed1c24; }
.talentos-beneficios__grid h3 { min-height: 6.5rem; font-size: clamp(1.7rem, 2.98vw, 2.8125rem); font-weight: 800; line-height: 1.16; }
.talentos-beneficios__grid p { margin-top: 1.3125rem; font-weight: 500; }
.talentos-contacto { padding: 6.875rem 1.5rem 4.5rem; background: var(--bold-dark); color: #ffffff; text-align: center; scroll-margin-top: 1.5rem; }
.talentos-contacto h2 { width: min(100%, 42.875rem); margin: 0 auto; padding: 1.0625rem 1rem; background: #d83832; font-size: clamp(1.75rem, 2.65vw, 2.5rem); font-weight: 800; line-height: 1.16; }
.talentos-contacto__intro { margin: 3.5625rem 0 4.8125rem !important; font: 500 1.375rem/1.16 "Montserrat", Arial, sans-serif; }
.talentos-form { width: min(100%, 55.875rem); min-height: 49.1875rem; margin: 0 auto; padding: 3.625rem 4.25rem 2.75rem; border-radius: 2.5rem; background: #ffffff; color: #333333; text-align: left; }
.talentos-form .elementor-form-fields-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3125rem 1.6875rem; }
.talentos-form .elementor-field-group { min-width: 0; margin: 0 !important; }
.talentos-form .talentos-form__heading, .talentos-form .talentos-form__wide, .talentos-form .bold-form-navigation, .talentos-form .elementor-field-type-submit { grid-column: 1 / -1; }
.talentos-form .talentos-form__heading { margin-bottom: 2.125rem !important; text-align: center; }
.talentos-form__heading h3 { font-size: 1.875rem; font-weight: 800; line-height: 1.16; }
.talentos-form__heading p { max-width: 30.25rem; margin: 1.5rem auto 0; }
.talentos-form label { display: block; margin-bottom: 1.3125rem; font-weight: 600; }
.talentos-form input, .talentos-form select { width: 100%; min-height: 3.6875rem; padding: 0.8rem; border: 1px solid transparent; border-radius: 0; background: #ededed; color: #333333; font: inherit; }
.talentos-form input:focus, .talentos-form select:focus { border-color: #d83832; }
.talentos-form select { min-width: 0; padding-right: 1rem; border-color: #dedede; border-radius: 0.75rem; background: #ffffff; cursor: pointer; }
.talentos-form select:focus-visible { outline: 2px solid #d83832; outline-offset: 2px; }

/* Mantiene el país y el número juntos sin ensanchar la columna del formulario. */
.talentos-phone {
    display: flex;
    background: #ededed;
}

.talentos-phone__country {
    position: relative;
    flex: 0 0 6rem;
    min-width: 0;
}

.talentos-phone__code {
    position: absolute;
    top: 50%;
    left: 0.8rem;
    transform: translateY(-50%);
    pointer-events: none;
}

.talentos-phone #talentos-country {
    width: 100%;
    border-radius: 0;
    border-color: transparent;
    background: transparent;
    color: transparent;
    font-size: 0.875rem;
}

.talentos-phone #talentos-country option {
    color: #333333;
}

.talentos-phone #talentos-celular {
    min-width: 0;
    flex: 1;
}

/* El selector conserva su comportamiento nativo donde base-select no está disponible. */
@supports (appearance: base-select) {
    .talentos-form select, .talentos-form select::picker(select) { appearance: base-select; }
    .talentos-form select { align-items: center; gap: 0.75rem; white-space: normal; }
    .talentos-form select::picker-icon { color: #d83832; }
    .talentos-form select::picker(select) { max-height: 19rem; margin-block: 0.4rem; padding: 0.375rem; border: 1px solid #dedede; border-radius: 0.75rem; background: #ffffff; color: #333333; box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 12%); font: 400 1rem/1.4 "Inter", Arial, sans-serif; }
    .talentos-form select option { gap: 0.75rem; padding: 0.75rem; border-radius: 0.5rem; white-space: normal; cursor: pointer; }
    .talentos-form select option:disabled { display: none; }
    .talentos-form select option:hover, .talentos-form select option:focus { outline: none; background: #f7f7f7; }
    .talentos-form select option:checked { background: #fff0ef; color: #a82320; font-weight: 600; }
    .talentos-form select option::checkmark { order: 1; margin-left: auto; color: #d83832; }
}
.talentos-form .bold-form-progress { position: relative; width: 100%; height: 1rem; margin: 0 0 3.625rem; border-radius: 1rem; background: #d9d9d9; }
.talentos-form .bold-form-progress::after { position: absolute; top: 0; bottom: 0; left: calc(50% - 0.9rem); width: 1.8rem; content: ""; background: #ffffff; }
.talentos-form .bold-form-progress span { background: #ed1c24; }
.talentos-form .bold-form-navigation { margin-top: 1.375rem; margin-bottom: 0; }
.talentos-form .bold-form-next, .talentos-form .bold-form-previous, .talentos-form__submit { min-width: 0; width: 18.1875rem; min-height: 4.3125rem; max-width: 100%; padding: 1rem; border: 2px solid #d83832; border-radius: 3rem; background: #d83832; color: #ffffff; font: 600 1.25rem/1.16 "Inter", Arial, sans-serif; text-transform: capitalize; cursor: pointer; }
.talentos-form .elementor-field-type-submit { display: flex; margin-top: 0.5rem !important; justify-content: center; }
.talentos-form .bold-status { margin-top: 1.5rem; color: #a8171c; line-height: 1.4; }
.talentos-form .bold-status.is-success { color: #24633c; }
.talentos-page .site-footer { min-height: 19.5625rem; padding-top: 3rem; padding-bottom: 2rem; }
.talentos-page .site-footer__grid { margin-bottom: 2rem; }
.talentos-page .site-footer__title { display: flex; }
.talentos-page .site-footer__legal { font-size: 0.875rem; }

/* Mantiene el encuadre del marco de Figma al variar el ancho de escritorio. */
@media (min-width: 64.0625rem) {
    .talentos-hero { min-height: 0; aspect-ratio: 1512 / 537; }
    .talentos-hero__photo { top: -11.732%; height: 111.732%; }
    .talentos-hero__content { position: absolute; left: 6.5%; bottom: 14.7%; width: 87%; margin: 0; padding: 0; }
    .talentos-hero p { font-size: clamp(1rem, 1.323vw, 1.25rem); }
    .talentos-hero h1 + p { margin-top: min(1.455vw, 1.375rem); }
    .talentos-hero p + p { margin-top: min(1.588vw, 1.5rem); }
    .talentos-beneficios { min-height: 36rem; aspect-ratio: 1512 / 760; }
    .talentos-beneficios__content { position: absolute; top: 0; left: 0; right: 0; padding-top: 5.622%; padding-bottom: 0; }
    .talentos-beneficios__grid h3 { min-height: 2.32em; }
}

@media (max-width: 75rem) {
    .talentos-card { padding: 2rem 1.5rem; }
    .talentos-card h3 { font-size: 1.5rem; }
    .talentos-card:nth-child(n+4) h3 { width: auto; }
    .talentos-card__rings { margin-right: 0; }
    .talentos-card__tools li { font-size: 0.9rem; }
    .talentos-beneficios__grid { gap: 1.5rem; }
}

@media (max-width: 64rem) {
    .talentos-container { width: 90%; }
    .talentos-hero__content { width: 90%; padding-top: 10rem; }
    .talentos-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
    .talentos-card { min-height: 32rem; }
    .talentos-card h3 { font-size: 1.65rem; }
    .talentos-beneficios__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 2rem; }
    .talentos-beneficios__grid h3 { min-height: 0; }
    .talentos-beneficios__content { padding-bottom: 5rem; }
    .talentos-form { padding-inline: 2.5rem; }
}

@media (max-width: 47.9375rem) {
    .talentos-hero { min-height: 34rem; }
    .talentos-hero__content { padding: 7rem 0 3.5rem; }
    .talentos-hero h1 { font-size: clamp(1.75rem, 6.5vw, 2.5rem); line-height: 1.45; }
    .talentos-hero p { font-size: 1.0625rem; line-height: 1.4; }
    .talentos-hero h1 + p { margin-top: 2rem; }
    .talentos-vacantes { padding-top: 3rem; padding-bottom: 4rem; }
    .talentos-label { min-width: 0; font-size: 1rem; }
    .talentos-intro { line-height: 1.4; }
    .talentos-grid { grid-template-columns: 1fr; margin-top: 2.5rem; gap: 1.5rem; }
    .talentos-card { min-height: 30rem; padding: 2rem; }
    .talentos-card h3 { min-height: 0; }
    .talentos-card p { min-height: 0; line-height: 1.4; }
    .talentos-card__tools { max-width: none; margin-bottom: 2rem; }
    .talentos-card__tools li { font-size: 0.95rem; }
    .talentos-beneficios__content { padding-top: 3rem; padding-bottom: 4rem; }
    .talentos-beneficios__grid { grid-template-columns: 1fr; gap: 2rem; }
    .talentos-beneficios__grid h3 { font-size: 2rem; }
    .talentos-beneficios__grid p { line-height: 1.4; }
    .talentos-beneficios::after { background: rgb(0 0 0 / 65%); }
    .talentos-contacto { padding: 4rem 5% 3rem; }
    .talentos-contacto__intro { margin: 2rem 0 2.5rem !important; font-size: 1.125rem; line-height: 1.4; }
    .talentos-form { min-height: 0; padding: 2rem 1.5rem; border-radius: 1.5rem; }
    .talentos-form .elementor-form-fields-wrapper { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
    .talentos-form__heading h3 { font-size: 1.5rem; }
    .talentos-form__heading p { font-size: 1rem; line-height: 1.4; }
    .talentos-form label { margin-bottom: 0.75rem; font-size: 1rem; line-height: 1.4; }
    .talentos-form .bold-form-progress { margin-bottom: 2.5rem; }
    .talentos-form .bold-form-navigation { flex-wrap: wrap; }
}
