/* Banner */

body:focus,
#acessib-menu-feat a.bt-acessib:focus {
    border: 2.5px solid black;
    border-radius: 10px;
    padding: 2px;
}
.documents-accordion-button {
    background: transparent;
    border: none;
    border-radius: 4rem;
    cursor: pointer;
    color: #fff;
}
.integrity-banner-section {
    height: 37vw;
    width: 100%;
    background-image: url(/integridade/assets/img/integrity.png);
    background-image: -webkit-image-set(url(/integridade/assets/img/integrity.webp)1x);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.integrity-banner-container {
    height: 100%;
}

.integrity-banner-body {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    padding: 0 12vw;
    gap: 10px;
}

.integrity-banner-container .integrity-banner-title {
    text-align: left;
    font: normal normal bold 40px/48px Bradesco Sans;
    letter-spacing: 0px;
    color: #FFFFFF;
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    width: 500px;
}

.integrity-banner-link {
    font-size: 14px;
    line-height: 17px;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
}

.integrity-banner-img-container {
    display: flex;
    gap: 10px;
}

.integrity-banner-picture {
    width: 16px;
    height: 16px;
    transform: rotate(90deg);
}

.integrity-banner-img,
.integrity-banner-source {
    width: 10px;
    height: 14px;
    position: relative;
    left: 4px;
    top: -7px;
}

/* Banner */

/* Cards */

.integrity-cards-section {
    position: relative;
    top: -215px;
    left: 170px;
    max-width: 65%;
    z-index: 2;
}

.integrity-cards {
    display: flex;
    gap: 24px;
}

.integrity-card {
    background-color: #fff;
    box-shadow: 0px 1px 6px #00000029;
    border-radius: 1rem;
    padding: 23px;
    max-width: 192px;
    cursor: pointer;
    position: relative;
}

.integrity-card:hover {
    -webkit-animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.integrity-card-description {
    color: #000;
    font-size: 14px;
    line-height: 17px;
    font-weight: 600;
    width: 149px;
}

/* Cards */

/* Program */
.integrity-program-section {
    background-color: #fff;
    border-radius: 32px 32px 0px 0px;
    padding: 112px 0 60px 0;
    margin: 0 0 -250px 0;
    display: flex;
    justify-content: center;
    position: relative;
    bottom: 250px;
}

.integrity-program-container {
    max-width: 60vw;
}

.integrity-program-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 0;
}

.integrity-program-description {
    font-size: 16px;
    padding: 8px 0;
}

.integrity-program-body .integrity-program-info {
    font-size: 16px;
    line-height: 20px;
    color: #000;
}

/* Program */

/* Responsibilities */
.integrity-responsibilities-section {
    padding: 42px 0 60px 0;
    display: flex;
    justify-content: center;
}

.integrity-responsibilities-container {
    max-width: 60vw;
}

.integrity-responsibilities-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 0;
}

.integrity-responsibilities-description {
    font-size: 16px;
    padding: 8px 0;
}

/* Responsibilities */

/* Commitments */
.integrity-commitments-section {
    padding: 42px 0 60px 0;
    display: flex;
    justify-content: center;
}

.integrity-commitments-container {
    max-width: 60vw;
}

.integrity-commitments-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 0;
}

.integrity-commitments-body {
    padding: 16px;
    background-color: #F0F1F5;
    border-radius: 8px;
    margin: 16px 0;
}

.commitments-accordions {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.commitments-accordion-header {
    background-color: #fff;
    color: #47484C;
    padding: 24px;
    border-radius: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;

    transition: border-radius 0.5s ease-out;
}

.commitments-accordion-header.actived {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    font-weight: 700;
    color: #47484C;
}

.commitments-accordion-question {
    font-size: 18px;
    font-weight: 600;
    color: #47484C;
}

.commitments-accordion-header.actived .commitments-accordion-question {
    color: #000;
    font-weight: 700;
}

.commitments-accordion-button {
    background: transparent url('/integridade/assets/svg/icon-accordion-collapsed.svg') 0% 0% no-repeat padding-box;
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 4rem;
    cursor: pointer;
}

.commitments-accordion-button.actived {
    background: transparent url('/integridade/assets/svg/icon-accordion-expanded.svg') 0% 0% no-repeat padding-box;
}

.commitments-panel {
    max-height: 0;
    overflow: hidden;

    background-color: white;
    transition: 0.5s ease-out;

    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
}

.commitments-panel p {
    padding: 16px 80px 24px 24px;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
}

.commitments-panel p:last-child {
    padding: 0 80px 24px 24px;
}

/* Commitments */

/* Commitments */
.integrity-explore-further-section {
    padding: 42px 0 60px 0;
    display: flex;
    justify-content: center;
    min-height: 700px;
}

.integrity-explore-further-container {
    width: 60vw;
}

.integrity-explore-further-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 0;
}

/* Buttons size(tabs) */
.integrity-tabs .integrity-tab-header .btn-tab-item.acculturation {
    width: 130px;
}

.integrity-tabs .integrity-tab-header .btn-tab-item.integrated-report {
    width: 258px;
}

.integrity-tabs .integrity-tab-header .btn-tab-item.internal-controls {
    width: 156px;
}

.integrity-tabs .integrity-tab-header .btn-tab-item.anti-money-laundering {
    width: 256px;
}

.integrity-tabs .integrity-tab-header .btn-tab-item.donations-sponsorships {
    width: 178px;
}

.integrity-tabs .integrity-tab-header .btn-tab-item.bidding {
    width: 98px
}

.integrity-tabs .integrity-tab-header .btn-tab-item.suppliers {
    width: 251px;
}

.selo-pro-etica {
    display: flex;
    justify-content: center;
    gap: 16px;
    padding: 0 0 12px 0;
}

.integrity-img {
    max-width: 150px;
}

.integrity-img.radius-border {
    border-radius: 8px;
}

/* Buttons size(tabs) */

/* Gray border size(tabs) */

.integrity-tabs .integrity-tab-header .btn-tab-item.bidding .integrity-btn-border {
    width: 155%;
}

/* Gray border size(tabs) */

/* Commitments */

/* Common Integrity Class*/
/* List */
.integrity-list {
    padding: 16px 0;
}

.integrity-list .content-title {
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
}

.integrity-list .content-body {
    padding: 32px 48px;
    background-color: #F0F1F5;
    border-radius: 8px;
    margin: 16px 0;
}

.integrity-list .content-body .content-list {
    list-style-type: square;
}

.integrity-list .content-body .content-list .list-item {
    font-size: 16px;
    line-height: 20px;
    padding: 8px 0;
}

.integrity-list .content-body .content-list .list-item::marker {
    color: #CC092F;
    font-size: 20px;
}

/* List */

.integrity-divider {
    width: 80%;
    border: 1px solid #D9DCDD;
    display: block;
    margin: auto;
}

.integrity-link {
    text-decoration: none;
    font-weight: 600;
    color: #3B69FF;
}

.integrity-bold {
    font-weight: 700 !important;
}

/* Common Integrity Class */

main {
    padding: 0;
}

/* Animations */

@-webkit-keyframes slide-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-25px);
        transform: translateY(-25px);
    }
}

@keyframes slide-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-25px);
        transform: translateY(-25px);
    }
}

/* Animations */
@media(max-width:1440px) {
    .integrity-program-container {
        max-width: 52vw;
    }

    .integrity-list .content-title {
        max-width: 730px;
    }

    .integrity-responsibilities-container {
        max-width: 52vw;
    }

    .integrity-commitments-container {
        max-width: 52vw;
    }

    .integrity-explore-further-container {
        max-width: 52vw;
    }
}

@media(max-width: 1280px) {
    .integrity-banner-section {
        height: 42vw;
    }
}

@media(max-width: 1000px) {
    .integrity-cards-section {
        left: 24px;
    }

    .integrity-cards .owl-stage-outer {
        overflow: unset;
    }

    .owl-carousel .owl-item .integrity-card-header img {
        width: 36px;
    }

    .integrity-card {
        padding: 14px;
        width: 152px;
        height: 97px;
    }

    .integrity-card .integrity-card-description {
        font-size: 12px;
        width: 124px;
    }

    .integrity-program-container {
        max-width: 80vw;
    }

    .integrity-responsibilities-container {
        max-width: 80vw;
    }

    .integrity-commitments-container {
        max-width: 80vw;
    }


    .integrity-explore-further-container {
        width: 80vw;
        max-width: unset;
    }
}

@media(max-width: 770px) {
    .integrity-cards-section {
        left: 24px;
        max-width: 90vw;
        overflow: hidden;
    }

    .integrity-program-section {
        bottom: 180px;
        border-radius: 16px 16px 0px 0px;
        padding-top: 56px;
    }
}

@media(max-width: 730px) {
    .integrity-banner-container .integrity-banner-title {
        font-size: 24px;
        width: 250px;
        line-height: 30px;
    }

    .integrity-banner-section {
        height: 465px;
        background-image: url("/integridade/assets/img/integrity-mobile.png");
        background-image: -webkit-image-set(url("/integridade/assets/img/integrity-mobile.webp")1x);
        background-size: cover;
        background-position: center;
    }

    .integrity-banner-body {
        padding: 0 8vw 0;
        gap: 16px;
        height: 83%;
    }

    .integrity-banner-img-container {
        position: relative;
        left: -10px;
    }

    .integrity-img {
        max-width: 100px;
    }
}

@media(max-width: 490px) {

    .report-banner-section {
        background-size: contain;
    }

    .integrity-program-section {
        display: block;
        padding: 56px 24px 0 24px;
        margin: -80px 0 -160px 0;
    }

    .integrity-program-container {
        max-width: 100%;
    }

    .integrity-program-description {
        font-size: 14px;
        line-height: 17px;
    }

    .integrity-program-info {
        font-size: 14px;
        line-height: 17px;
        padding-bottom: 32px;
    }

    .integrity-responsibilities-section {
        display: block;
        padding: 32px 24px;
    }

    .integrity-responsibilities-container {
        max-width: 100%;
    }

    .integrity-responsibilities-description {
        font-size: 14px;
        line-height: 17px;
    }

    .link-learn-more {
        font-size: 14px;
        line-height: 17px;
    }

    .integrity-commitments-section {
        display: block;
        padding: 32px 24px;
    }

    .integrity-commitments-container {
        max-width: 100%;
    }

    .integrity-commitments-body {
        width: 110%;
        position: relative;
        left: -12px;
    }

    .commitments-accordion-header {
        padding: 16px;
    }

    .commitments-accordion-question {
        font-size: 14px;
        line-height: 17px;
    }

    .commitments-panel p {
        color: #47484C;
        font-size: 14px;
        line-height: 17px;
        padding: 13px;
    }

    .commitments-panel p:last-child {
        padding: 13px;
    }

    .integrity-explore-further-section {
        display: block;
        padding: 32px 0;
    }

    .integrity-explore-further-container {
        max-width: 100%;
        width: 100%;

    }

    .integrity-explore-further-header .integrity-explore-further-title {
        padding: 0 24px 24px 24px;
    }

    .integrity-list .content-body.internal-controls {
        width: 105%;
    }

    .integrity-list .content-body.suppliers {
        width: 105%;
    }

    .integrity-divider {
        width: 90vw;
    }

    .integrity-list .content-title {
        font-size: 14px;
        line-height: 17px;
    }

    .integrity-list {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .integrity-list .content-body {
        padding: 16px 16px 16px 40px;
        width: 110%;
    }
}