@import 'toggle-switch.css';

#banner {
    padding: 122px 0 45px 0;
}

#banner a {
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
    font-weight: 200;
}

.banner-vacancies>h1 {
    font-size: 56px !important;
    line-height: 56px !important;
    margin-bottom: 24px;
    letter-spacing: -0.47px;
}

.banner-vacancies>p {
    font-family: 'CIBFontSans Light';
    font-size: 24px !important;
    line-height: 26px !important;
    letter-spacing: -0.45px;
}

.banner-vacancies>p>strong {
    font-family: 'CIBFontSans Bold';
}

.bc-bg-vacancies-green-radial-center {
    background: radial-gradient(circle at 55% 55%, #DFFF61 0%, #FAFAFA 26%)
}

.bc-bg-vacancies-green-radial-left {
    background: radial-gradient(circle at 40% 40%, #DFFF61 0%, #FFFFFF 26%)
}

.img-banner-vacancies>figure {
    display: flex;
    justify-content: right;
}


.about-us {
    display: grid !important;
    grid-template-columns: repeat(2, auto);
    gap: 70px 12px;
    justify-content: center;
    padding: 100px 0 50px 0;
}

.about-us .about-us-card {
    position: relative;
    border: 1px solid #2C2A29;
    border-radius: 20px;
    height: 180px;
    text-align: center;
    padding-top: 30px;
}

.about-us>.swiper-slide {
    width: 424px !important;
}

.about-us .about-us-card>h1 {
    font-size: 24px;
    line-height: 26px;
    letter-spacing: -0.45px;
}

.about-us .about-us-card>p {
    font-size: 14px;
    line-height: 18px;
    letter-spacing: -0.2px;
}

.about-us .about-us-card>img {
    position: absolute;
    top: -50px;
    margin: 0 auto 0 auto;
    left: 0;
    right: 0;
}

.about-us .about-us-card>ul {
    font-size: 10px;
}

.about-us .about-us-card>ul>li {
    list-style: inside;
}

#professions {
    padding-top: 100px;
}

#professions a {
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.professions-title>h1 {
    font-size: 46px;
    line-height: 46px;
    letter-spacing: -0.47px;
    margin-bottom: 24px;
}

.professions-title>p {
    font-family: 'CIBFontSans Light';
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
}

.professions-title>p>strong {
    font-family: 'CIBFontSans Bold';
}

.professions-images {
    display: grid;
    grid-template-columns: repeat(2, 315px);
    grid-template-rows: repeat(2, 400px);
    gap: 12px;
    margin-left: 100px;
}

.profession-description {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0.5s linear;
    background-color: #E5FF81;
    border: 1px solid #2C2A29;
    border-radius: 19px;
    padding: 24px 32px 24px 32px;
    cursor: default;
}

.profession-description h1 {
    font-size: 32px;
    line-height: 32px;
    letter-spacing: -0.6px;
}

.profession-description p {
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.profession-description a {
    font-size: 14px;
    line-height: 18px;
    letter-spacing: -0.2px;
    width: 100%;
    height: 45px;
    padding: 10px;
    text-align: center;
    margin-top: 16px;
}

.center-image {
    margin-top: 211px;
}

.bc-bg-professions-green-radial-center {
    background: radial-gradient(circle at 50% 50%, #DFFF61 0%, #FFFFFF 26%)
}

.bc-bg-vacancies-radial-right {
    background: radial-gradient(circle at 60% 45%, #DFFF61 0%, #FFFFFF 25%)
}

.bc-bg-culture-green-radial-center {
    background: radial-gradient(circle at 50% 50%, #DFFF61 0%, #FFFFFF 30%)
}

#selection-process {
    padding: 100px 0 100px 0;
}

#selection-process a {
    position: relative;
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    font-weight: 200;
    z-index: 2;
}

.description-selection-process {
    position: relative;
    height: 650px;
}

.description-selection-process h1 {
    font-size: 46px !important;
    line-height: 46px;
    margin-bottom: 16px !important;
}

.description-selection-process p {
    font-family: 'CIBFontSans Light';
    font-size: 20px !important;
    line-height: 24px !important;
    letter-spacing: -0.38px;
}

.description-selection-process img {
    position: absolute;
    top: 200px;
}

.selection-process-content {
    margin-top: 50px;
}

.selection-process-content p {
    font-family: 'CIBFontSans Bold';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.selection-processes {
    height: 250px;
}

.selection-process {
    width: 206px;
    text-align: center;
}

.selection-process>img {
    width: 80px;
    margin: 0 auto;
}

.selection-process>span {
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
    margin-top: 16px;
}

.brand-declaration h1 {
    font-family: 'CIBFontSans Light';
    font-weight: 200;
    font-size: 46px;
    line-height: 46px;
    letter-spacing: -0.47px;
}

.brand-declaration h1>strong {
    display: block;
    font-family: 'CIBFontSans Bold';
}

.brand-declaration p {
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.brand-declaration p>strong {
    font-family: 'CIBFontSans Bold';
}

.declarations {
    display: grid;
    grid-template-columns: repeat(4, 315px);
    grid-template-rows: repeat(1, 400px);
    margin-top: 56px;
    gap: 12px;
    justify-content: center;
}

.declarations-image {
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.declarations-image:hover img {
    transform: scale(1.2);
    transition: transform 0.4s ease
}

.declarations-image a {
    position: absolute;
    width: 200px;
    left: 0;
    right: 0;
    bottom: 24px;
    margin: 0 auto 0 auto;
    text-align: center;
    font-family: 'Open Sans';
    z-index: 1;
}

.declarations-description {
    display: none;
    position: relative;
    background-color: #BDF4BC;
    border-radius: 20px 0 0 20px;
    padding: 10px 36px;
    cursor: default;
    margin-right: -20px;
}

.declarations-description h1 {
    font-size: 32px;
    line-height: 32px;
    letter-spacing: -0.6px;
}

.declarations-description p {
    font-family: 'CIBFontSans Light';
    font-size: 18px;
    line-height: 20px;
    letter-spacing: -0.3px;
}

.declarations-description p>strong {
    font-family: 'Open Sans Bold';
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
}

.culture {
    padding: 0 0 100px 0;
}

.culture h1 {
    font-size: 46px !important;
    line-height: 46px !important;
    letter-spacing: -0.47px;
    margin: 16px 0 !important;
}

.culture p {
    font-family: 'CIBFontSans Light';
    font-size: 20px !important;
    line-height: 24px !important;
    letter-spacing: -0.38px;
}

.culture-items {
    display: grid;
    grid-template-columns: 424px 424px;
    gap: 20px 40px;
    margin-top: 48px;
}

.culture-item {
    display: flex;
    background-color: #F2FDF1;
    border: 1px solid #2C2A29;
    border-radius: 16px;
    padding: 24px;
}

.culture-item>img {
    width: 56px;
    height: 56px;
    margin: auto 24px auto auto;
}

.culture-item-content {
    width: 296px;
}

.culture-item-content>span {
    display: block;
    font-family: 'CIBFontSans Bold';
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 6px;
}

.culture-item-content>p {
    font-size: 14px;
    line-height: 18px;
}

.benefits {
    position: relative;
    background-color: #F2FDF1;
}

.benefits h1 {
    font-size: 46px;
    line-height: 46px;
    letter-spacing: -0.47px;
}

.benefits h1>strong {
    display: block;
    font-family: 'CIBFontSans Bold';
}

.benefits p {
    font-family: 'CIBFontSans Light';
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.benefits p>strong {
    font-family: 'CIBFontSans Bold';
}

.bc-vacancies-swiper-button-next,
.bc-vacancies-swiper-button-prev {
    top: 52%;
    position: absolute;
    cursor: pointer;
    height: 56px;
    width: 56px;
    background-color: #2c2a29;
    border-radius: 50%;
    line-height: 28px;
    color: #dfff61;
    text-align: center;
    z-index: 5;
    outline: 0;
}

.vacancies-swiper-button-disabled {
    background-color: #cacaca;
    color: #616161;
    cursor: auto;
}

.vacancies-swiper-button-disabled:active,
.vacancies-swiper-button-disabled:hover {
    background-color: #cacaca;
    color: #616161;
}

.bc-vacancies-swiper-button-next {
    display: block;
    padding: 8px 0;
    right: 300px;
    font-size: 40px;
}

.bc-vacancies-swiper-button-prev {
    display: block;
    padding: 8px 0;
    left: 280px;
    font-size: 40px;
}

.vacancies-close-button {
    display: block;
    position: absolute;
    right: 10px;
    top: 10px;
    font-size: 19px;
    height: 32px;
    width: 32px;
    padding: 6px 0;
    background-color: #2c2a29;
    border-radius: 50%;
    line-height: 28px;
    color: #dfff61;
    text-align: center;
    cursor: pointer;
    z-index: 5;
    outline: 0;
}

.benefits-cards {
    display: flex;
}

.benefits-card {
    display: flex;
    width: 533px;
    height: 270px;
    background-color: #FFFFFF;
    border: 1px solid #000000;
    border-radius: 20px;
    margin: 12px;
}

.benefits-card img {
    margin: auto 24px;
}

.benefits-card-text {
    margin: 40px 20px 0 0;
}

.benefits-card-text h1 {
    font-size: 28px;
    line-height: 30px;
    letter-spacing: -0.6px;
    margin: 8px 0;
}

.benefits-card-text p {
    font-family: "Open Sans";
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
}

.memories {
    position: relative;
}

.memories h1 {
    font-family: 'CIBFontSans Light';
    font-size: 46px;
    line-height: 46px;
    letter-spacing: -0.47px;
}

.memories h1>strong {
    display: block;
    font-family: 'CIBFontSans Bold';
}

.memories p {
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.bc-bg-memories-radial-right {
    background: radial-gradient(circle at 60% 70%, #DFFF61 0%, #FFFFFF 25%)
}

.testimonials {
    padding-bottom: 100px;
}

.testimonials h1 {
    font-family: 'CIBFontSans Light';
    font-size: 46px;
    line-height: 46px;
    letter-spacing: -0.47px;
}

.testimonials h1>strong {
    display: block;
    font-family: 'CIBFontSans Bold';
}

.testimonials p {
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.38px;
}

.testimony {
    width: 203px;
}

.testimony>h1 {
    font-family: 'Open Sans Bold';
    font-size: 16px !important;
    line-height: 22px !important;
    letter-spacing: -0.3px;
}

.testimony>span {
    font-family: 'Open Sans';
    font-weight: 300;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
}

.testimony>p {
    font-family: 'Open Sans';
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
    margin-top: 16px;
}

.form-send-data img {
    width: 452px;
    height: 383px;
}

.form-send-data iframe {
    border: none;
    width: 100%;
    height: 700px;
    margin-top: 100px;
}

#vacancy-details {
    padding: 100px;
}

#vacancy-details h1 {
    font-size: 56px !important;
    line-height: 60px !important;
    letter-spacing: -0.47px;
}

#vacancy-details p {
    font-family: 'CIBFontSans Light';
    font-size: 24px !important;
    line-height: 26px !important;
    letter-spacing: -0.45px;
}

#vacancy-details p>strong {
    font-family: 'CIBFontSans Bold';
}

.bc-bg-vacancy-details-green-radial-center {
    background: radial-gradient(circle at 50% 45%, #DFFF61 0%, #FAFAFA 25%)
}

#vacancy-description {
    padding: 64px;
}

#vacancy-description-form {
    display: none;
}

.vacancy-description-title {
    margin: 48px 0 32px 0;
}

.vacancy-description-title > h1 {
    font-family: "CIBFontSans Bold";
    font-size: 28px;
    line-height: 32px;
    letter-spacing: -0.6px;
    margin: 8px 0 !important; 
}

.vacancy-description-title > span {
    font-family: "Open Sans SemiBold";
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
}

#vacancy-description-content {
    margin: auto;
}

.vacancy-description-item {
    display: flex;
    position: relative;
    margin: 16px 0;
    width: 642px;
    min-height: 32px;
}

.vacancy-description-icon {
    display: block;
    position: absolute;
    font-size: 19px;
    height: 32px;
    width: 32px;
    padding: 6px 0;
    top: 0;
    background-color: #2c2a29;
    border-radius: 50%;
    color: #dfff61;
    text-align: center;
    cursor: pointer;
}

.vacancy-description-item > span {
    font-family: "Open Sans";
    font-size: 16px;
    line-height: 22px;
    letter-spacing: -0.3px;
    width: 602px;
    margin: auto 40px;
}

@media (max-width: 768px) {
    #banner {
        padding: 32px 0 32px 0;
    }

    #banner a {
        display: block;
        margin: auto;
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
        text-align: center;
    }

    .banner-vacancies {
        text-align: center;
    }

    .banner-vacancies>h1 {
        font-size: 36px !important;
        line-height: 44px !important;
        letter-spacing: -0.6px;
    }

    .banner-vacancies>p {
        font-size: 16px !important;
        line-height: 22px !important;
        letter-spacing: -0.3px;
    }

    .bc-bg-vacancies-green-radial-center {
        background: radial-gradient(circle at 70% 60%, #DFFF61 0%, #FAFAFA 50%)
    }

    .bc-bg-vacancies-green-radial-left {
        background: radial-gradient(circle at 5% 55%, #DFFF61 0%, #FFFFFF 50%)
    }

    .bc-bg-vacancies-radial-right {
        background: radial-gradient(circle at 70% 75%, #DFFF61 0%, #FFFFFF 40%);
    }

    .about-us {
        display: flex !important;
        gap: 0;
        justify-content: left;
        padding: 100px 0 0 0;
    }

    .about-us .about-us-card {
        width: 290px !important;
        min-height: 230px;
        height: 100%;
        margin: auto;
        padding: 25px;
    }

    .about-us .about-us-card>p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    .about-us .about-us-card>ul {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    .about-us>.swiper-slide {
        width: 100% !important;
    }

    #professions {
        padding-top: 50px;
    }

    #professions a {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    .professions-title>h1 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: -0.6px;
    }

    .professions-images {
        display: grid;
        grid-template-columns: repeat(2, 142px);
        grid-template-rows: repeat(2, 180px);
        gap: 5px;
        margin: 40px 0 0 0;
        justify-content: center;
    }

    .center-image {
        margin-top: 100px;
    }

    .profession-description {
        position: absolute;
        left: 0;
    }

    .profession-description h1 {
        font-size: 24px;
        line-height: 26px;
        letter-spacing: -0.45px;
    }

    .profession-description p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    .profession-description a {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    #selection-process {
        padding: 48px 0 100px 0;
    }

    #selection-process a {
        font-size: 16px;
        line-height: 22px;
    }

    .description-selection-process h1 {
        font-size: 28px !important;
        line-height: 32px;
    }

    .description-selection-process p {
        font-size: 16px !important;
        line-height: 22px !important;
        letter-spacing: -0.3px;
    }

    .description-selection-process img {
        top: 320px;
    }

    .selection-process-content {
        margin-top: 250px;
    }

    .selection-processes {
        display: grid;
        grid-template-columns: repeat(2, 95px);
        gap: 32px 70px;
        justify-content: center;
        height: 500px;
    }

    .selection-process {
        width: 100%;
    }

    #swiper-declarations {
        margin-top: 30px;
    }

    #swiper-declarations>.swiper-wrapper>.swiper-slide {
        display: flex;
    }

    .declaration {
        width: 289px;
        margin: auto;
    }

    .brand-declaration h1 {
        font-size: 32px;
        line-height: 34px;
        letter-spacing: -0.6px;
        margin-top: 100px;
    }

    .brand-declaration p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    .declarations {
        display: flex;
        margin-top: 20px;
    }

    .declarations-description {
        display: block;
        width: 100%;
        border-radius: 0 0 20px 20px;
        padding: 32px 24px 40px 24px;
        margin: -80px 0 0 0;
    }

    .declarations-image img {
        width: 100% !important;
    }

    .declarations-description h1 {
        font-size: 28px;
    }

    .declarations-description p {
        font-size: 14px;
        line-height: 18px;
        letter-spacing: -0.2px;
    }

    .declarations-description p>strong {
        font-size: 14px;
        line-height: 18px;
        letter-spacing: -0.2px;
    }

    .culture h1 {
        font-size: 28px !important;
        line-height: 32px !important;
        letter-spacing: -0.6px;
    }

    .culture p {
        font-size: 16px !important;
        line-height: 22px !important;
        letter-spacing: -0.3px;
    }

    .culture-items {
        display: flex;
        flex-direction: column;
        margin-top: 32px;
    }

    .culture-item {
        margin: auto;
        width: 289px;
    }

    .bc-bg-culture-green-radial-center {
        background: radial-gradient(circle at 5% 35%, #DFFF61 0%, #FFFFFF 50%)
    }

    .benefits h1 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: -0.6px;
    }

    .benefits p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    #swiper-benefits>.swiper-wrapper>.swiper-slide {
        display: flex;
    }

    .benefits-cards {
        flex-direction: column;
    }

    .benefits-card {
        display: flex;
        flex-direction: column;
        width: 289px;
        min-height: 500px;
        height: 100%;
        margin: 24px auto 0 auto;
    }

    .benefits-card img {
        margin: 16px;
    }

    .benefits-card-text {
        margin: 24px 16px 40px 16px;
    }

    .benefits-card-text h1 {
        font-size: 20px;
        line-height: 24px;
        margin: 0 0 16px 0;
    }

    .benefits-card-text p {
        font-size: 14px;
        line-height: 18px;
        letter-spacing: -0.2px;
    }

    .memories h1 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: -0.6px;
    }

    .memories p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    #swiper-memories .swiper-slide {
        display: flex;
    }

    #swiper-memories .swiper-slide > img {
        margin: auto;
    }

    .testimonials h1 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: -0.6px;
    }

    .testimonials p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: -0.3px;
    }

    #vacancy-details {
        padding: 32px 10px;
    }
    
    #vacancy-details h1 {
        font-size: 36px !important;
        line-height: 44px !important;
        letter-spacing: -0.6px;
    }
    
    #vacancy-details p {
        font-size: 16px !important;
        line-height: 22px !important;
        letter-spacing: -0.3px;
    }

    .bc-bg-vacancy-details-green-radial-center {
        background: radial-gradient(circle at 100% 50%, #DFFF61 0%, #FAFAFA 65%)
    }

    #vacancy-description {
        padding: 10px;
    }

    #vacancy-description-content {
        margin: 0;
    }
    
    .vacancy-description-item {
        width: 100%;
    }

    .vacancy-description-item > span {
        font-size: 14px;
        line-height: 18px;
        letter-spacing: -0.2px;
    }
}
