﻿h1 {
    margin-bottom: 31px;
}

h2 {
    font: normal normal bold 40px/56px Roboto;
    letter-spacing: 0.43px;
    margin-bottom: 24px;
}

h3 {
    font: normal normal bold 24px/32px Roboto;
    letter-spacing: 0.26px;
    margin-bottom: 12px;
    color: #123925;
}

p {
    font: normal normal normal 18px/28px Roboto;
    letter-spacing: 0.19px;
}

footer.eri-footer {
    background-color: transparent;
    margin-top: -40px;
}

#video-section {
    margin-bottom: 68px;
    text-align: center;
}

    #video-section > .video-container  {
        margin: 44px auto 0 auto;
        max-width: 660px;
    }

    #video-section h2,
    #video-section p {
        width: 75%;
        margin-left: auto;
        margin-right: auto;
    }

#benefits-section {
    background: linear-gradient(308deg, #D1E7DD 60%, #FFFFFF 100%);
    text-align: center;
    padding: 92px 0px;
    box-shadow: 0px 3px 6px #00000029;
}

    #benefits-section p {
        margin: 0 auto 60px auto;
        width: 75%;
    }

#features-section {
    margin-bottom: 0px;
    padding: 128px 0 112px;
}

    #features-section h2 {
        max-width: 100%;
    }

#tools-section {
    position: relative;
    padding-top: 128px;
    padding-bottom: 216px;
    background: linear-gradient(311deg, #D1E7DD 35%, #FFFFFF 95%);
    margin-bottom: 20px;
}

    #tools-section h2 {
        margin-bottom: 16px;
    }

    #tools-section .flex-space-between {
        gap: 120px;
    }

    #tools-section .flex-space-between:nth-of-type(2n) {
        flex-direction: row-reverse;
    }

    #tools-section .flex-space-between > div {
        flex: 1;
        align-items: center;
    }

        #tools-section .flex-space-between:first-of-type {
            margin-bottom: 180px;
        }

.accordion-item-image {
    display: none;
}

    .accordion-item-image.active {
        display: block;
    }

.accordion-item {
    border-left: 1px solid #707070;
}

    .accordion-item .accordion-body:not(:last-of-type) {
        margin-bottom: 43px;
    }

.accordion-body {
    padding-left: 24px;
    cursor: pointer;
    transition: 0.2s;
}

    .accordion-body.active {
        border-left: 4px solid #559D3F;
    }

        .accordion-body.active .accordion-header {
            color: #559D3F;
            transition: 0.2s;
            margin-bottom: 0;
        }

        .accordion-body.active .accordion-content,
        .accordion-body.active a {
            display: block;
        }

        .accordion-body.active a {
            display: inline-block;
        }

    .accordion-body img {
        display: none;
    }

    .accordion-body:hover {
        cursor: pointer;
    }

        .accordion-body:hover .accordion-header {
            color: #559D3F;
        }

    .accordion-body a {
        display: none;
        text-decoration: underline;
        font: normal normal normal 16px/28px Roboto;
        letter-spacing: 0.17px;
        margin-top: 16px;
    }

        .accordion-body a:link:not(.btn),
        .accordion-body a:visited:not(.btn),
        .accordion-body a:active, a:hover {
            color: #085A9E;
        }

.accordion-content {
    font: normal normal normal 16px/22px Roboto;
    display: none;
    color: #424242;
    margin-top: 8px;
}

.concave-down-curve {
    position: absolute;
    height: 140px;
    width: 100%;
    border-top-left-radius: 200% 25vw;
    border-top-right-radius: 200% 25vw;
    bottom: -2px;
    background-color: #FFFFFF;
}

.icon-info-card {
    display: flex;
    box-shadow: 0px 3px 8px #00000029;
    border: 1px solid #E5E5E5;
    border-radius: 8px;
    gap: 28px;
}

    .icon-info-card .icon-container {
        flex: 1;
    }

    .icon-info-card .info-container {
        flex: 7;
    }

    .icon-info-card .info-title {
        font: normal normal bold 24px/32px Roboto;
        color: #123925;
        margin-bottom: 16px;
    }

    .icon-info-card .info-content {
        font: normal normal normal 16px/22px Roboto;
        color: #424242;
    }

#onboarding-support-section {
    padding: 86px 76px;
    margin-bottom: 176px;
    margin-left: 40px;
    margin-right: 40px;
}

#cm-benefits-section {
    background: linear-gradient(298deg, #0b4047, #16252a, #000000);
    padding: 144px 0 284px;
}

    #cm-benefits-section .d-flex {
        gap: 28px;
        align-items: center;
        position: relative;
    }

        #cm-benefits-section .d-flex > div {
            flex: 1;
        }

        #cm-benefits-section .d-flex > div:not(.half-clear-box) {
            z-index: 10;
        }

        #cm-benefits-section .d-flex:first-of-type {
            margin: 100px 0 172px;
        }

        #cm-benefits-section .d-flex:first-of-type .gallery-item {
            padding-right: 20px;
        }

        #cm-benefits-section .d-flex:last-of-type .gallery-item {
            padding-left: 20px;
        }

    #cm-benefits-section .info-card {
        padding: 52px 60px;
        box-shadow: 0px 0px 6px #00000029;
        border-radius: 8px;
        background-color: #FFFFFF;
    }

    #cm-benefits-section h2 {
        color: #FFFFFF;
        text-align: center;
        margin-bottom: 10px;
    }

    #cm-benefits-section p.subheader {
        color: #FFFFFF;
        margin: 0 auto 24px;
        width: 50%;
    }

    #cm-benefits-section h4 {
        color: #123925;
        font: normal normal bold 24px/32px Roboto;
        margin-bottom: 12px;
    }

    #cm-benefits-section .info-label {
        font: normal normal bold 18px/24px Roboto;
        color: #0B5D5D;
        margin-bottom: 6px;
    }

    #cm-benefits-section .info-desc {
        font: normal normal normal 16px/22px Roboto;
        color: #424242;
        margin-bottom: 20px;
    }

    #cm-benefits-section .half-clear-box {
        z-index: 1;
        position: absolute;
        width: 62%;
        background: transparent linear-gradient(118deg, #4F5A6C 0%, #B4B9C3 100%) 0% 0% no-repeat padding-box;
        height: calc(100% + 100px);
        opacity: 0.61;
        border-radius: 4px;
    }

        #cm-benefits-section .half-clear-box.right-box {
            right: 0;
        }

        #cm-benefits-section .half-clear-box.left-box {
            left: 0;
        }

#workforce-management-section {

}

    #workforce-management-section h2.card-title {
        font-size: 24px;
        line-height: 1.25;
    }

    #workforce-management-section > h2 {
        margin-bottom: 16px;
    }

    #workforce-management-section > p {
        width: 70%;
        margin: 0 auto;
    }

    #workforce-management-section .accordion-header {
        margin-top: 72px;
    }

    #workforce-management-section .bottom-section .icon-info-card {
        background-color: #FFFFFF;
        padding: 68px 76px;
        box-shadow: none;
    }

@media only screen and (max-width: 1024px) {
    .concave-down-curve {
        height: 100px;
    }

    .card-accordion-container  .header-section {
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 100%;
        gap: 30px;
    }

        .card-accordion-container  .header-section > div {
            flex: 1;
        }

    .accordion-header {
        flex-direction: column;
    }

        .accordion-header .card:last-of-type {
            margin-bottom: 52px;
        }

    #onboarding-support-section {
        margin-left: 20px;
        margin-right: 20px;
        margin-top: 52px;
    }

    #workforce-management-section > p,
    #video-section h2,
    #video-section p,
    #benefits-section p {
        width: 100%;
    }
}

@media only screen and (max-width: 960px) {
    .icon-info-card .info-container {
        flex: 4;
    }

    #onboarding-support-section,
    .card-accordion-container .accordion-panels .bottom-section .icon-info-card {
        padding: 28px 32px;
    }

    #cm-benefits-section .d-flex {
        flex-direction: column;
        gap: 32px;
        padding: 0 20px;
    }

        #cm-benefits-section .d-flex:last-of-type {
            flex-direction: column-reverse;
        }

        #cm-benefits-section .d-flex:first-of-type .gallery-item, 
        #cm-benefits-section .d-flex:last-of-type .gallery-item {
            padding: 0;
        }

        #cm-benefits-section .half-clear-box {
            width: 100%;
            bottom: -40px;
            height: 80%;
        }

    #cm-benefits-section p.subheader {
        width: 100%;
    }

    #workforce-management-section .bottom-section .icon-info-card {
        padding: 28px 32px;
    }
    
}

@media only screen and (max-width: 768px) {
    .icon-info-card {
        flex-direction: column;
    }

    #tools-section .flex-space-between {
        gap: 0px;
    }

        #tools-section .flex-space-between > div.d-flex {
            flex: 0;
        }

        #tools-section .flex-space-between:first-of-type {
            margin-bottom: 0px;
        }

        #tools-section .flex-space-between:nth-of-type(2n) h2 {
            margin-top: 80px;
        }

    .accordion-body {
        padding-top: 14px;
        border-top: 1px solid #C9C9C9;
        margin-top: 8px;
    }

    .accordion-header {
        margin-bottom: 0;
    }

    .accordion-item {
        border-left: 0px;
    }

        .accordion-item .accordion-body:not(:last-of-type) {
            margin-bottom: 0px;
        }

    .accordion-body {
        padding-left: 0px;
    }

        .accordion-body.active {
            border-left: 0px;
        }

            .accordion-body.active img {
                display: block;
            }

        .accordion-body img {
            margin: 30px auto 30px;
        }

        .accordion-body:hover {
            color: inherit;
        }

    .accordion-header {
        display: inline-block;
        align-self: center;
    }

    .accordion-item-image.active {
        display: none;
    }

    .accordion-toggle {
        display: flex;
        justify-content: space-between;
    }

        .accordion-toggle span {
            font-size: 1.5em;
            align-self: center;
            color: #559D3F;
            padding-left: 12px;
        }

            .accordion-toggle span:before {
                content: '\002B';
            }

    .accordion-body.active .accordion-toggle span:before {
        content: '\2212';
    }

    .card-accordion-container  .header-section {
        gap: 20px;
    }

    .tablet-card {
        margin-top: 40px;
    }
}

@media only screen and (max-width: 480px) {
    .banner .page_subtitle {
        margin-bottom: 36px;
    }

    .banner {
        padding: 42px 0;
    }

    h2 {
        font: normal normal bold 32px/40px Roboto;
        letter-spacing: 0.34px;
        margin-bottom: 12px;
    }

    #video-section {
        margin-bottom: 58px;
    }

        #video-section > .video-container {
            margin-top: 32px;
        }

    #benefits-section {
        padding: 52px 0;
    }

        #benefits-section h2 {
            font: normal normal bold 32px/40px Roboto;
        }

        #benefits-section p {
            margin-bottom: 24px; 
        }

    #features-section {
        padding: 60px 0 72px;
    }

        #features-section h2 {
            padding: 0;
            margin-bottom: 24px;
        }

    #tools-section {
        padding: 52px 0 44px;
    }

        #tools-section h2 {
            margin-bottom: 40px;
        }

    .accordion-header {
        font: normal normal bold 18px/24px Roboto;
    }

    .accordion-body img {
        margin: 24px auto;
    }

    .concave-down-curve {
        display: none;
    }

    #workforce-management-section {
        margin: 80px 0 0;
    }

    #onboarding-support-section {
        margin-bottom: 82px ;
    }

    #cm-benefits-section {
        padding: 56px 0 200px;
    }

        #cm-benefits-section h2 {
            margin-bottom: 28px;
        }

        #cm-benefits-section .d-flex {
            padding-left: 0;
            padding-right: 0;
        }

        #cm-benefits-section .d-flex:first-of-type {
            margin: 28px 0 100px;
        }

            #cm-benefits-section .half-clear-box {
                width: calc(100% + 30px);
                border-radius: 0;
            }

            #cm-benefits-section .half-clear-box.right-box {
                right: -15px;
            }

            #cm-benefits-section .half-clear-box.left-box {
                left: -15px;
            }

            #cm-benefits-section .info-card {
                padding: 24px;
            }

            #cm-benefits-section h4 {
                margin-bottom: 16px;
            }

        #cm-benefits-section .info-label {
            margin-bottom: 8px;
        }

        #cm-benefits-section .info-desc {
            margin-bottom: 24px;
        }
}