/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

@media screen and (max-width: 767px) {
    .l-section.height_large>.l-section-h {
        padding: 4rem 0;
    }
}
/* GENERAL  __ TYPOGRAPHY */
html, .l-header .widget {
    font-weight: 400 !important;
}
.bigger-p p {
    font-size: 1.25rem;
    line-height: 1.625;
}
.xl-p p {
    font-size: 1.5rem;
    line-height: 1.625;
}
.thinner-p p {
    font-weight: 300;
}
.primary-x-p p {
    color: rgba(4, 83, 231, 0.75);
}
/* GENERAL  __ GENERAL LINK */
.l-main .wpb_text_column:not(.arrow-link) a {
    position: relative;
}
.l-main .wpb_text_column:not(.arrow-link) a::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background: rgba(4, 83, 231, 0.25);
    bottom: -5px;
    left: 0;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
.l-main .wpb_text_column:not(.arrow-link) a:hover::after {
    height: 1.75rem;
}
/* GENERAL  __ LINK WITH ARROW */
.arrow-link a {
    position: relative;
    padding-left: 1rem;
    color: #0452E7;
    text-transform: uppercase;
    font-weight: 500;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
		line-height: 1.2;
}
.arrow-link a:hover {
    padding-left: 1.5rem;
    color: #0452E7 !important;
}
.arrow-link a::before {
    content: url('data:image/svg+xml; utf8, <svg id="link--arrow" xmlns="http://www.w3.org/2000/svg" width="7" height="12" viewBox="0 0 7 12"><polygon id="link--triangle" points="0 0 7 6 0 12 0 0" style="fill:%230452e7"/></svg>');
    position: absolute;
    top: 0;
    left: 0;
    display:block;
    width:12px;
    height:7px;
}
/* GENERAL  __ MODAL */
.ult-overlay .ult_modal-content {
	border-style: solid !important;
    border-width: 0 !important;
    border-radius: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
}
.ult-overlay-close-inside {
	background: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><line x1="1" y1="1" x2="49" y2="49" style="fill:none;stroke:%2325252d;stroke-miterlimit:10;stroke-width:2px"/><line x1="1" y1="49" x2="49" y2="1" style="fill:none;stroke:%2325252d;stroke-miterlimit:10;stroke-width:2px"/></svg>') !important;
}
/* GENERAL  __ SERVICE BOX */
.service-box .w-image {
    margin-bottom: /* 2.5rem */ 2rem;
}
.service-box svg {
    display: block;
    max-width: /* 75px */ 50px;
    overflow: visible;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
.service-box h3 {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: .75rem;
}
.service-box p {
    margin-bottom: .75rem;
    max-width: 23em;
}
.service-box p:last-child {
    position: relative;
    padding-left: 1rem;
    color: #0452E7;
    text-transform: uppercase;
    font-weight: 500;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
.service-box:hover p:last-child {
    padding-left: 1.5rem;
}
.service-box p:last-child::before {
    content: url('data:image/svg+xml; utf8, <svg id="link--arrow" xmlns="http://www.w3.org/2000/svg" width="7" height="12" viewBox="0 0 7 12"><polygon id="link--triangle" points="0 0 7 6 0 12 0 0" style="fill:%230452e7"/></svg>');
    position: absolute;
    top: 0;
    left: 0;
    display:block;
    width:12px;
    height:7px;
}
/* GENERAL  __ SERVICE BOX > ICON LEFT */
.service-box--icon-left .ult-content-box {
    padding-left: 8rem;
}
.service-box--icon-left .w-image {
    width: 45px;
    position: absolute;
    left: 4.5rem;
}
.service-box--icon-left:not(:last-child) {
    margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
    .service-box--icon-left .ult-content-box {
        padding-left: 0;
    }
    .service-box--icon-left .w-image {
        width: 45px;
        position: relative;
        left: 0;
    }
}
/* GENERAL  __ SERVICE NAV BLOCKS */
.services-nav-blocks {
    background: #0452E7;
    padding: 4rem;
    position: relative;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
.services-nav-blocks:hover {
    background: #233356;
}
.services-nav-blocks .wpb_text_column {
    max-width: 23rem;
    color: rgba(255,255,255,.65);
}
.services-nav-blocks .wpb_text_column h2 {
    color: #FFFFFF;
}
.services-nav-blocks p:last-child {
    position: relative;
    padding-left: 1rem;
    color: #FFFFFF;
    text-transform: uppercase;
    font-weight: 500;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
.services-nav-blocks:hover p:last-child {
    padding-left: 1.5rem;
}
.services-nav-blocks p:last-child::before {
    content: url('data:image/svg+xml; utf8, <svg id="link--arrow" xmlns="http://www.w3.org/2000/svg" width="7" height="12" viewBox="0 0 7 12"><polygon id="link--triangle" points="0 0 7 6 0 12 0 0" style="fill:%23FFFFFF"/></svg>');
    position: absolute;
    top: 0;
    left: 0;
    display:block;
    width:12px;
    height:7px;
}
.services-nav-blocks::before {
    content: url('data:image/svg+xml; utf8, <svg data-name="nav-block-triangle" xmlns="http://www.w3.org/2000/svg" width="240" height="120" viewBox="0 0 240 120"><polygon points="240 120 0 120 240 0 240 120" style="fill:%23fff"/></svg>');
    position: absolute;
    bottom: -1px;
    right: -1px;
    display:block;
    width:240px;
    height:120px;
}
.services-nav-blocks .w-image {
    position: absolute;
    display: block;
    width: 70px;
    right: 0;
    bottom: 0;
}


/* FORMS ---------------------------------------------------------------------------- */
.wpcf7-form {
    display: flex;
    flex-wrap:wrap;
    flex-direction:row;
    justify-content:flex-start;
    margin-bottom: 4rem;
}
.wpcf7-form > .bf--form-input-wrapper:nth-child(even) {
    margin-right: .6rem;
}
.wpcf7-form > .bf--form-input-wrapper {
    position: relative;
    width: calc(50% - .3rem);
}
.wpcf7-form > .bf--form-input-wrapper:nth-child(6) {
    width: 100%;
    margin-right: 0;
}
.wpcf7-form > .bf--form-input-wrapper label {
    position: absolute;
    bottom: 0;
    left: 1rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    pointer-events: none;
    font-weight: normal;
    transition: all .1s cubic-bezier(.17,.67,.55,.54);
    color: #25252D;
    z-index: 10;
}
.wpcf7-form > .bf--required::before {
    content: '';
    position: absolute;
    height: 6px;
    width: 6px;
    background: red;
    border-radius: .25rem;
    top: 2rem;
    right: 1rem;
    z-index: 12;
}
.wpcf7-form > .bf--form-input-wrapper:nth-child(6) label {
    top: 3.25rem;
    height: 2rem;
}
.wpcf7-form textarea.wpcf7-textarea,
.wpcf7-form input.wpcf7-text {
    border: none;
    padding: 1.5rem 1rem 0 1rem;
    width: 100%;
    box-shadow: none;
    border-radius: .25rem;
    margin-top: 1rem;
}
.wpcf7-form input.wpcf7-text {
    height: 4rem;
}
.wpcf7-form textarea.wpcf7-textarea {
    height: 10rem;
    padding-top: 2rem;
}
.wpcf7-form label.has-value {
    bottom: 1rem;
    font-size: .75rem;
    color: #0452E7;
}
.wpcf7-form .bf--form-input-wrapper:nth-child(7) label.has-value {
    top: 2.5rem;
}
.wpcf7-form input[type="file"] {
    width: 100%;
    padding: 4rem 1rem 1rem 1rem;
    margin-top: 1rem;
    border-radius: .25rem;
}
.bf--form-btn-wrapper {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    flex-wrap:wrap;
    flex-direction:row;
}
.bf--form-btn-wrapper button {
    margin-top: 1rem;
    color: #FFF;
    line-height: 3;
    padding: 0 2em;
    border-radius: 0.15em;
    letter-spacing: 0em;
    box-shadow: 0 0em 0em rgba(0,0,0,0.18);
    background: #0452E7;
}
div.wpcf7 .ajax-loader {
    margin-top: .5rem;
    display: block;
    width: 100%;
    background-repeat: no-repeat;
}
span.wpcf7-not-valid-tip {
    position: absolute;
    z-index: 12;
    padding: 0 0 .25rem .5rem;
    bottom: 26px;
    right: 33px;
    font-size: .75rem;
}
div.wpcf7-response-output {
    width: 100%;
}
.wpcf7-recaptcha {
    margin-top: 1rem;
    margin-right: 1rem;
}


/* NAV */
.l-header.bg_transparent:not(.sticky) .w-img.solid-header {
    display: none;
}
.l-header.bg_transparent.sticky .w-img.transparent-header,
.l-header.bg_solid .w-img.transparent-header {
    display: none;
}
path.logo-style {
    fill: #FFF !important;
}
.l-header.shadow_none.sticky .l-subheader.at_middle {
    box-shadow: none !important;
}
.w-nav-icon i,
.w-nav-icon i:before,
.w-nav-icon i:after {
    border-bottom: 2px solid;
}
.w-nav-icon {
    width: 1.5em;
}
.w-nav.type_mobile .w-nav-list li.menu-item:last-of-type a {
    margin-bottom: calc(100vh - 250px);
}
.header_hor .w-nav.type_desktop>.w-nav-list .menu-item::before {
    display: block;
    content: '';
    position: absolute;
    background-color: #0452E7;
    border-radius: 4px;
    height: 2px;
    width: 0;
    bottom: 4px;
    left: 50%;
    transition: ease all .2s;
}
.header_hor .w-nav.type_desktop>.w-nav-list .menu-item:hover::before,
.header_hor .w-nav.type_desktop>.w-nav-list .current-menu-item::before,
.header_hor .w-nav.type_desktop>.w-nav-list .current-page-ancestor::before {
    display: block;
    content: '';
    position: absolute;
    background-color: #0452E7;
    border-radius: 4px;
    height: 2px;
    width: 16px;
    bottom: 4px;
    left: calc(50% - 8px);
    transition: ease all .2s;
}
@media (max-width: 600px) {
    .l-subheader {
        padding-left: 1.5rem !important;
    }
    .l-header .w-btn {
        display: none;
    }
    .ush_image_2,
    .ush_image_3 {
        height: auto !important;
    }
    .l-header.shadow_thin .l-subheader.at_middle {
        box-shadow: none !important;
    }
}



/* FOOTER ----------------------------------------------------------------------------- */
/* footer .footer-badge {
    margin-top: 240px;
}
footer .footer-badge svg {
    display: block;
    width: 300px;
}
footer .footer-badge svg path,
footer .footer-badge svg rect {
    fill: rgba(255,255,255,.4);
} */
footer p {
    margin-bottom: .75rem;
}
footer p em {
    font-style: normal;
    color: rgba(255,255,255,.65);
}
footer p a {
    position: relative;
    padding-bottom: .2rem;
}
footer p a::before,
footer p a::after {
    display: block;
    content: '';
    position: absolute;
    height: 2px;
    width: 0;
    bottom: 0;
    left: 0;
    transition: ease all .2s;
}
footer p a::before {
    background: rgba(255,255,255,.3);
    width: 100%;
}
footer p a:hover::before {
    background: #FFFFFF;
    width: 100%;
    left: 0;
}


/* HOME ----------------------------------------------------------------------------- */
/* HOME - HEADER */
#home--landing .w-btn {
    margin: 0;
    padding: .2rem 2rem;
    border: none !important;
    background: transparent;
		line-height: 3;
		overflow: visible;
}
#home--landing .w-btn:before {
    display: none;
}
#home--landing .w-btn .w-btn-label {
    color: #FFF;
    padding-left: 2rem;
    position: relative;
}
#home--landing .w-btn .w-btn-label::before {
    position: absolute;
    bottom: 3px;
    left: 0;
    content: url('data:image/svg+xml; utf8, <svg id="alt--arrow" xmlns="http://www.w3.org/2000/svg" width="18" height="48" viewBox="0 0 18 48"><g id="alt--arrow-group"><line id="alt--arrow-line" style="stroke: %23FFF;fill:none;" x1="9" y1="42" x2="9"/><polygon id="alt--arrow-triangle" style="fill:%23FFF" points="18 37.5 9 48 0 37.5 18 37.5"/></g></svg>');
    display: block;
    width: 18px;
    height: 48px;
    transition: all .2s cubic-bezier(.17,.67,.55,.54);
}
#home--landing .w-btn:hover .w-btn-label::before {
    bottom: -28px;
}
/* HOME - COUNTER */
#home--about .vc_row .wpb_column:nth-child(1) p {
    max-width: 33rem;
}
#home--about .w-counter-number {
    font-family: "Gothic A1", sans-serif !important;
}
#home--about .w-counter {
    margin-bottom: 2rem !important;
}

@media screen and (max-width: 767px) {
    #home--landing .w-btn-wrapper {
        float: left;
        margin-left: 0;
        margin-top: 2rem;
    }
    #home--about .vc_row .wpb_column:nth-child(1) {
        padding-bottom: 4rem;
    }
    #home--about .w-counter {
        margin-bottom: 2rem;
    }
}


/* SINGLE POST - SERVICES ----------------------------------------------------------------------------- */
#services-single--content > .l-section-h > .g-cols > .wpb_column:nth-child(1) .vc_column-inner > .wpb_wrapper {
    position: relative;
    padding-left: calc((100vw - 1400px) / 2);
}
#services-single--content > .l-section-h > .g-cols > .wpb_column:nth-child(2) {
    padding-right: calc((100vw - 1140px) / 2);
    padding-left: 3rem;
}
#services-single--content .w-image:nth-child(1) {
    width: calc(45px + 3rem);
    padding: .5rem .5rem 1.5rem 1.5rem;
    background: #FFF;
    margin: 0;
    position: absolute;
    right: 0;
}
#services-single--integrations .wpb_column:nth-child(1) {
    padding-left: calc((100vw - 1400px) / 2);
    padding-right: calc((100vw - 1400px) / 2);
}
#services-single--managed-services-blocks .wpb_text_column h3 {
    font-size: 1.25rem;
    margin-bottom: .5rem;
}
@media screen and (max-width: 767px) {
    #services-single--content .vc_row .wpb_column:nth-child(2) {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    #services-single--content .w-image:nth-child(2) {
        max-height: 25rem;
        overflow: hidden;
    }
}
#integration-analysis--segments .wpb_column:nth-child(1) {
    padding-left: calc((100vw - 1400px) / 2);
    padding-right: calc((100vw - 1400px) / 2);
}



/* PAGE - BOOMI ---------------------------------------------------------------------------  */
.page-id-15 .l-subheader.at_middle {
    background-color: transparent;
}
.page-id-15 .sticky .l-subheader.at_middle {
    background-color: #FFF;
}
#boomi--intro,
#boomi--intro .l-section-h {
    padding-top: 0;
}
#boomi--intro > .l-section-h > .g-cols > .wpb_column:nth-child(1) {
    padding-left: calc((100vw - 1140px) / 2);
}
#boomi--intro .wpb_column:nth-child(1) .wpb_text_column {
    max-width: 28rem;
    padding-top: calc(160px + 3rem);
}
#boomi--intro .w-btn-label {
    position: relative;
    padding-left: 4rem;
}
#boomi--intro .w-btn-label::before {
    content: '';
    position: absolute;
    top: -.75rem;
    left: 0;
    width: 3rem;
    height: 3rem;
    border-radius: 3rem;
    background-color: #0452E7;
    animation: pulse 2.5s ease infinite;
    -webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#boomi--intro .w-btn:hover .w-btn-label::before {
    background-color: #25252D;
}
#boomi--intro .w-btn-label::after {
    content: '';
    position: absolute;
    top: -.75rem;
    left: 0;
    width: 3rem;
    height: 3rem;
    background: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 50 50"><polygon points="20 16.7 32 25 20 33.3 20 16.7" style="fill:%23fff"/></svg>');
}
#boomi--intro .boomi-badge svg {
    display: block;
    width: 240px;
}
#boomi--intro .boomi-badge svg path,
#boomi--intro .boomi-badge svg rect {
    fill: #808080;
}
#boomi--intro .boomi-badge svg .dell-logo path {
    fill: #0087CC;
}
#boomi--intro .boomi-badge {
    padding: 20px 30px 20px 20px;
    margin-top: -240px;
    z-index: 2;
    position: relative;
    background: white;
}
@keyframes pulse {
    0%, 80%, 100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    30%, 50% {
        -webkit-transform: scale(1.3, 1.3);
        transform: scale(1.3, 1.3);
    }
}
#boomi--intro .wpb_column:nth-child(2) {
    padding-right: calc((100vw - 1400px) / 2);
}
#boomi--atoms .wpb_column:nth-child(1) {
    padding-left: calc((100vw - 1400px) / 2);
}
#boomi--atoms .wpb_column:nth-child(2) {
    padding-right: calc((100vw - 1140px) / 2);
}
#boomi--atoms .wpb_column:nth-child(2) .wpb_text_column {
    padding-left: 4rem;
}
@media screen and (max-width: 767px) {
    #boomi--intro .wpb_column:nth-child(1) .wpb_text_column {
        padding: 130px 1.5rem 1rem 1.5rem;
    }
    #boomi--intro .w-btn-wrapper {
        padding-left: 1.5rem;
    }
    #boomi--intro .w-btn-label::after {
        top: -.9rem;
        left: -.1rem;
    }
    #boomi--atoms .wpb_column:nth-child(2) .wpb_text_column {
        padding: 4rem 1.5rem 0 1.5rem;
    }
    #boomi--intro .boomi-badge {
        padding: 20px 20px 20px 20px;
        margin-top: -120px;
        z-index: 2;
        position: relative;
        background: white;
        max-width: 285px;
    }
}


/* PAGE - OUR STORY ---------------------------------------------------------------------- */
#our-story--partners {
    max-width: 1400px;
}
#our-story--partners .wpb_text_column {
    max-width: 43rem;
    padding: 5rem 5rem 0 5rem;
    background: #FFFFFF;
    margin-top: -13.6rem;
    position: relative;
    float:right;
}
#our-story--approach > .l-section-h > .g-cols > .wpb_column:nth-child(1) {
    padding-left: calc((100vw - 1140px) / 2);
}
#our-story--approach > .l-section-h > .g-cols >  .wpb_column:nth-child(1) .wpb_text_column {
    max-width: 28rem;
}
#our-story--approach > .l-section-h > .g-cols >  .wpb_column:nth-child(2) {
    padding-right: calc((100vw - 1400px) / 2);
}
#our-story--values .w-tabs.layout_ver .w-tabs-list {
    background-color: transparent;
}
#our-story--values .w-tabs.layout_ver .w-tabs-item {
    border-color: #F2F2F2;
    color: #cecece;
}
#our-story--values .w-tabs.layout_ver .w-tabs-item.active {
    border-color: #0452E7 !important;
}
#our-story--values .w-tabs.layout_ver .w-tabs-item .w-tabs-item-title {
    transition: all .1s cubic-bezier(.17,.67,.55,.54);
}
#our-story--values .w-tabs.layout_ver .w-tabs-item.active .w-tabs-item-title {
    color: #3E3E44;
}
#our-story--values .w-tabs-item-h {
    font-size: 1.25rem;
}
#our-story--values .wpb_text_column.xl-p.thinner-p {
    padding-top: 1rem;
}
.w-tabs.layout_ver .w-tabs-item a:focus,
.no-touch .w-tabs.layout_ver .w-tabs-item:hover {
    background-color: transparent;
}
.w-tabs.layout_ver .w-tabs-item a:focus .w-tabs-item-title,
.no-touch .w-tabs.layout_ver .w-tabs-item:hover .w-tabs-item-title {
    color: #3E3E44;
}
@media screen and (max-width: 767px) {
    #our-story--partners .wpb_text_column {
        padding: 4rem 1.5rem 0 1.5rem;
        margin-top: 0;
    }
    #our-story--approach .wpb_column:nth-child(1) {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        margin-bottom: 4rem;
    }
}


/* SINGLE - JOBS ------------------------------------------------------------------ */
.arrow-link.ult-overlay .ult_modal-body {
    background-color: transparent !important;
}
.arrow-link.ult-overlay .ult_modal-body h2 + p {
    margin-bottom: 1.75rem;
}
/* HEADER IMAGE */
.single-vacancies .w-blogpost-preview {
    display: flex;
    align-items: center;
    max-height: 22rem;
    overflow: hidden;
    margin-bottom: 3rem !important;
}
.single-vacancies .w-blogpost-preview img {
    height: initial;
}
/* LIST STYLE */
.single-vacancies .l-main ul {
    list-style-type: none;
}
.single-vacancies .l-main ul li {
    position: relative;
    padding-left: 1.75rem;
    margin-bottom: .5rem;
}
.single-vacancies .l-main ul li::before {
    content: '';
    position: absolute;
    height: 2px;
    width: 1rem;
    background: #0452E7;
    top: .75rem;
    left: 0;
}
/* FORM */
.single-vacancies .wpcf7-form {
    max-width: 44rem;
    margin: 0 auto;
}
.single-vacancies .wpcf7-form > .bf--form-input-wrapper:nth-child(even) {
    margin-right: 0;
}
.single-vacancies .wpcf7-form > .bf--form-input-wrapper {
    position: relative;
    width: 100%;
}
.single-vacancies .wpcf7-form > .bf--form-input-wrapper:nth-child(6) label {
    top: 3.25rem;
    height: 2rem;
}
.single-vacancies .wpcf7-form .bf--form-input-wrapper:nth-child(6) label.has-value {
    top: 2.5rem;
}
.single-vacancies .wpcf7-form .bf--form-input-wrapper:nth-child(7) label {
    top: 4.25rem;
}
