html,
body{
    margin:0;
    font-family: 'Archia';
    font-size: 16px;
    overflow-x: hidden;
}
a {
   outline: 0 !important;
}
a::after{
   outline: 0 !important;
}
a, a:hover, a:active, a:visited, a:focus {
    text-decoration:none !important;
    /* color: inherit; */
}
a{
    color: inherit;
}
p{
    font-size: 15px;
    /* color: #333; */
}
em{
    line-height: 1.4em;
}

.video-embed{
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.video-embed iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-page .video-embed{
    margin-top: 50px;
    margin-bottom: 40px;
}

#breadcrumbs{
    display: none;
}

.padding-sides{
    padding-left: 50px;
    padding-right: 50px;
}
.sidebar-page .content{
    max-width: 1000px;
    margin: 0 auto;
}
.sidebar-page .content-wrap .content .iframe-wrapper{
    position: relative;
    height: 0;
    width: 100%;
    padding-bottom: 56.25%;
}
.sidebar-page .content-wrap .content .iframe-wrapper iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.blog-image-header-info{
    width: 1000px;
    margin: 0 auto;
    padding-right: 50px;
    box-sizing: border-box;
}
.button-icon{
    border-radius: 30px;
    background: rgba(255,255,255,.1);
    padding: 15px 40px;
    color: #fff !important;
    transition: .3s;
}
.button-icon.center{
    text-align: center;
}
.button-icon:hover{
    background: rgba(255,255,255,.5);

}
.button-icon img{
    margin-right: 10px;
    vertical-align: middle;
    margin-top: -4px;
}
.menu-wrap .button-icon img{
    display: inline-block;
    margin-right: 8px;
    /* transform: translateY(-2px); */
}

.button-cpsl{
    background-color:rgba(0,105,159,.1);
    border-radius: 40px;
    padding: 15px 30px;
    color: #00699F;
    font-weight: bold;
    display: inline-block;
    transition: .3s;
}
.button-cpsl:hover{
    background: #00699F;
    color: #fff;
}

.title-line{
    padding-left: 40px;
    position: relative;
}
.title-line::after{
    content:'';
    width: 30px;
    background: #fff;
    height: 2px;
    position: absolute;
    left: 0;
    top: 11px;
}
.title-line.blackline::after{
    background: #000000;
    height: 1px;
}

h3{
    font-weight: normal;
    font-size: 22px;
    color: #00699F;
    letter-spacing: 0;
    text-align: center;
    line-height: 30px;
}

.content h1{
    font-weight: bold;
    font-size: 36px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 44px;
    margin-top: 0;
    margin-bottom: 30px;
}

.content h2{
    font-size: 24px;
    color: #00699F;
    letter-spacing: 0;
    font-weight: normal;
}

.landing-page .content h2 a{
    text-decoration: underline !important;
}

.sectors-single .content h2{
    font-style: normal;
    font-weight: bold;
    font-size: 1.5em;
    color: #fff;
    letter-spacing: 0;
    line-height: 1.3em;
    margin-top: 0;
    margin-bottom: 30px;
}
.sectors-single .content h2::before,
.sectors-single .content h2::after
{
    content: '';
    width: 0;
    height: 0;
    background: #000000;
    display: none;
    margin: 0
}
.content.sector .row .sectorheader h1{
    margin: 0;
}

.content h2::before,
.content h2::after
{
    content: '';
    width: 50px;
    height: 1px;
    background: #000000;
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
}
.content h3{
    text-align: left;
    font-size: 18px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 26px;
    margin-top: 35px;
    margin-bottom: 35px;
}
.content a{
    color: #00699F;
}
.content p{
    font-family: 'Archia';
    font-size: 18px;
    color: #000000;
    letter-spacing: 0;
    line-height: 25px;
}
.page-template-template-libreria3 .content p,
.single-post .content p,
.single-casestudy .content p
{
    text-align: justify;
}

.iframe-wrapper{
    margin: 2em auto;
    display: block;
}


.content img{
    max-width: 100%;
    height: auto;
}
.content ul li{
    font-family: 'Archia';
    font-size: 18px;
    color: #000000;
    letter-spacing: 0;
    line-height: 25px;
    margin-bottom: 15px;
}
.content .aligncenter{
    display: block;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 20px;
}


/* .content ul {
    list-style: none;
    margin-bottom: 35px;
} */
  
/* .content ul li::before {
    content: "\2022";
    color: #00699F; 
    font-weight: bold; 
    display: inline-block; 
    width: 1em; 
    margin-left: -1em; 
} */


ol{
    list-style: none;
    counter-reset: cpsl-ol-counter;
    padding-left: 40px;
    position: relative;
}
ol li{
    line-height: 1.4em;
    margin-bottom: 20px;
    padding-left: 10px;
    position: relative;
    counter-increment: cpsl-ol-counter;
    font-family: 'Archia';
    font-size: 1.1em;
}
ol li::before {
    content: counter(cpsl-ol-counter)". ";
    color:#00699F;
    font-weight: bold;
    font-size: 1em;
    position: absolute;
    left: -25px;
    top: 0;
}

/*HEADER*/
#header{
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    background: #217cab;
    height: 85px;
    z-index: 3;
    padding: 0 30px;
    transform: translateX(0);
    transition: .3s;
    width: 100%;
    box-sizing: border-box;
}
#header.menu-open{
    transform: translateX(-500px);
}
#header .logo{
    width: 175px;
}
#header .logo img{
    width: 100%;
    height: auto;
}
.page-template-template-home #header{
    background: transparent;
}
#header .header{
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    align-items: center;
    width: calc(100% - 175px);
}
#header .header ul{
    padding: 0;
    margin: 0;
}
#header .header li{
    display: inline-block;
    list-style: none;
    margin-right: 30px;
}
#header .header ul li a{
    font-weight: bold;
    font-size: 18px;
    color: #FFFFFF;
    letter-spacing: 0;
    text-align: right;
    line-height: 24px;
    transition: .3s;
}
#header .header ul li a:hover{
    opacity: .5;
}

#header .header .search{
    margin-left: 33px;
    height: 32px;
    cursor: pointer;
}
#header .header .menu-button{
    margin-left: 33px;
    height: 28px;
    cursor: pointer;
    display: none;
}
#header .header img{
    height: 20px;
    width: auto;
}
#header .header .language{
    padding-left: 50px;
    margin-right: auto;
    position: relative;
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    font-family: 'Gilroy';
}

#header .header .language img{
    height: 20px;
    width: auto;
    margin-left: 10px;
    vertical-align: middle;
}
#header .header .language:hover img{
    animation: bounce 2s infinite;
}
@keyframes bounce{
    from, to { 
        transform: translateY(0); 
    }
    50% {
        transform: translateY(-5px);
    }

}
#header .header .language .dropdown-language{
    position: absolute;
    /* display: none; */
    padding: 0 30px;
    margin-top: 20px;
    background: #217cab;
    transition: .3s;
    top: -250px;
    z-index: -1;
    opacity: 0;
    box-sizing: border-box;
    width: 175px;
}
#header .header .language.language-open .dropdown-language{
    /* display: block; */
    top: 20px;
    background: #217cab;
    opacity: 1;
}
#header .header .language .dropdown-language a{
    display: flex;
    margin-top: 15px;
    margin-bottom: 15px;
    transition: .3s;
    font-weight: normal;
    align-items: center;
}
#header .header .language .dropdown-language a img{
    margin: 0;
    height: 15px;
    width: auto;
}
#header .header .language .dropdown-language a:hover{
    opacity: .5;
}
#header .header .language .dropdown-language img{
    animation: none !important;
}

.term-198 #header,
.term-176 #header,
.term-168 #header,
.term-17 #header,
.term-195 #header,
.red #header
{
    background-color: #db4f40;
}
.term-200 #header,
.term-194 #header,
.term-14 #header,
.term-175 #header,
.term-165 #header,
.blue #header
{
    background-color: #00699f;
}
.term-201 #header,
.term-174 #header,
.term-166 #header,
.term-15 #header,
.term-196 #header,
.green #header
{
    background-color: #1aa89b;
}
.term-177 #header,
.term-199 #header,
.term-167 #header,
.term-16 #header,
.term-193 #header,
.orange #header
{
    background-color: #e27c00;
}

#search-bar{
    height: auto;
    background: #00527D;
    position: relative;
    z-index: 2;
    height: 120px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 85px;
    left: 0;
    transform: translate3d(0, -250px, 0);
    transition: transform .3s;
}
#search-bar .close{
    color: #fff;
    position: absolute;
    right: 50px;
    cursor: pointer;
}
#search-bar.open{
    transform: translate3d(0, 0, 0);
}
#search-bar input{
    box-sizing: border-box;
    height: 50px;
    box-shadow: none;
    border: none;
    font-family: 'Montserrat', sans-serif;
}
#search-bar input[type="text"]{
    width: 400px;
    border-radius: 40px;
    font-size: 16px;
    padding: 0 60px 0 20px;
}
#search-bar input[type="submit"]{
    border-radius: 40px;
    padding-left: 30px;
    padding-right: 30px;
    background: #2BA1DC;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    margin-left: 10px;
    cursor: pointer;
    transition: .3s;
}
#search-bar input[type="submit"]:hover{
    background:#217cab;
}


.pages-header{
    background: #00699F;
    display: flex;
    flex-flow: row wrap;
    color: #fff;
    align-items: center;
    justify-content: space-between;
    padding-top: 60px;
    padding-bottom: 0px;
    overflow: hidden;
    position: relative;
    min-height: 180px;
}
.pages-header img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    position: absolute;
    left: 0;
    top: 0;
    opacity: .4;
}
.pages-header h1{
    font-size: 3rem !important;
    margin-top: 0;
}
.pages-header .title-section{
    margin: 0;
    animation: apareix-alpha .5s;
    font-weight: bold;
    font-size: 2em;
    padding-bottom: 50px;
}
@keyframes apareix-alpha{
    0% { opacity: 0; }
    100% { opacity: 1; }
}
.pages-header p{
    font-weight: bold;
    font-size: 2.2em;
    letter-spacing: 0;
    margin: 0;
    display: inline-block;
}
.pages-header h2,
.pages-header .subtitles{
    font-weight: normal;
    font-size: 1.7em;
    letter-spacing: 0;
    margin: 0;
    display: inline-block;
    margin-top: 20px;
    margin-bottom: 20px;
}

/*Menus*/
.menu-wrap{
    background: #00527D;
    height: 100%;
    width: 500px;
    transform: translateX(100%);
    position: fixed;
    top: 0;
    right: 0;
    transition: .3s;
    z-index: 9;
    overflow: scroll;
}
.menu-wrap.menu-open{
    transform: translateX(0);
}
#menu{
    height: 100vh;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}
#menu .row{
    width: 100%;
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-items: center;
    height: 50vh;
    padding: 30px;
    box-sizing: border-box;
}
#menu .row.align-center{
    justify-content: center;
}
#menu .row.space-around{
    justify-content: space-around;
}
#menu .row:first-of-type{
    border-bottom: solid 2px rgba(255,255,255,.1);
}
#menu ul{
    padding-left:0;
}
#menu ul li{
    list-style: none;
    margin-top: 15px;
    margin-bottom: 15px;
}
#menu ul li a{
    color: #fff;
    padding-left: 40px;
    position: relative;
    font-size: 25px;
    font-weight: bold;
    transition: .8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#menu ul li a:hover{
    opacity: .5;
}
#menu ul li a:after{
    content:'';
    width: 30px;
    background: #fff;
    height: 2px;
    position: absolute;
    left: 0;
    top: 50%;
}
#menu .social{
    text-align: center;
}
#menu .social img{
    height: 25px;
    width: auto;
    transition: .8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#menu .social img:hover{
    opacity: .5;
}
#menu .social a{
    margin-left: 10px;
    margin-right: 10px;
}
#menu #close-menu{
    text-align: right;
    width: 100%;
    color: #fff;
    cursor: pointer;
    position: absolute;
    top: 35px;
    right: 50px;
}
#menu .user-access{
    color: rgba(255,255,255,.5);
    margin-bottom: 25px;
    margin-top: 0;
    text-align: center;
}
#menu .button-icon{
    margin-bottom: 10px;
    margin-top: 10px;
    width: 190px;
    padding-left: 10px;
    padding-right: 10px;
}
#menu .language{
    display: none;
}

.flex-column{
    display: flex;
    flex-flow: column wrap;
}

/*CONTENT*/
#content{
    position: relative;
    display: block;
    transform: translateX(0);
    transition: .3s;
}
#content.menu-open{
    transform: translateX(-500px);
}

/*FOOTER*/
#newsletter{
    color: #fff;
    background:#00527D;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-top: 40px;
    padding-bottom: 70px;
}
#newsletter form{
    text-align: center;
}
#newsletter .newsletter-title{
    width: 100%;
    text-align: center;
    font-size: 20px;
    margin-top: 30px;
    margin-bottom: 40px;
}

#footer{
    background: #217cab;
    width: 100%;
    clear: left;
    box-sizing: border-box;
}
#footer .row{
    display: flex; 
    flex-flow: row wrap;
    justify-content: space-between;
    padding-top: 40px;
    padding-bottom: 40px;
}
#footer .row .menu,
#footer .row .country
{
    flex-basis: 20%;
}
#footer .social{
    display: flex;
}
#footer .social a:not(:nth-child(1)){
    margin-left: 35px;
    display: inline-block;
}
#footer .social img{
    height: 20px;
    width: auto;
    transition: .3s;
}
#footer .social img:hover{
    opacity: .5;
}
#footer .legal{
    align-items: center;
    color: #fff;
    font-size: 12px;
    padding-top: 30px;
    border-top: solid 1px rgba(255,255,255,.13);
    background-color: #ffffff;
    color: #00527D;
}
#footer .legal ul{
    padding: 0;
}
#footer .legal ul li{
    text-decoration: none;
    list-style: none;
    display: inline-block;
    margin-left: 30px;
}
#footer .legal ul li:first-of-type{
    margin-left: 0;
}
#footer .legal ul li a{
    display: inline-block;
    color: #00527D;
    font-size: 14px;
    font-weight: bold;
}

#footer .legal .menu-legal{
    width: 100%;
    margin-bottom: 20px;
}
#footer .legal .logos{
    /* width: 100%; */
    justify-content: flex-start;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 20px;
}
#footer .legal .copyright{
    width: 100%;
    display: block;
    margin-top: 20px;
}

#footer .logoeuropa{
    height: 70px;
    width: auto;
    margin-right: 50px;
}


#footer .logo60anos{
    height: 60px;
    width: auto;
}
.logos-footer-flex{
    display: flex;
    align-items: center;
}
.logos-footer-flex div{
    margin-right: 15px;
}

#footer .row.contact{
    border-top: solid 1px rgba(255,255,255,.13);
}
#footer .row.contact p{
    color: #fff;
    font-size: 14px;
    line-height: 12px;
}
#footer .row.contact p.title{
    opacity: .5;
    line-height: 18px;
    margin-bottom: 20px;
    font-family: 'Gilroy';
}
#footer .row.menus p.title{
    color: #fff;
    opacity: .5;
    margin-bottom: 40px;
    font-family: 'Gilroy';
}
#footer .row.menus{
    border-top: solid 1px rgba(255,255,255,.13);
}
#footer .row.menus ul{
    padding: 0;
}
#footer .row.menus li a{
    color: #fff;
    font-size: .9em;
    font-weight: bold;
    transition: .3s;
}
#footer .row.menus li a:hover{
    opacity: .5;
}
#footer .row.menus li{
    margin-top: 20px;
    padding-left: 35px;
    position: relative;
    list-style: none;
}
#footer .row.menus li::before{
    content:'';
    width: 25px;
    background: #fff;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
}
#footer .row.menus li.double-space{
    margin-top: 100px;
}

.quick-buttons a{
    margin-left: 20px;
}
#newsletter form input{
    border-radius: 25px;
    box-shadow: none;
    border: none;
    padding: 15px;
    font-size: 18px;
}
#newsletter form a{
    color: #fff;
    font-weight: bold;
}
#newsletter form input[type="email"]{
    margin-right: 30px;
    margin-left: 15px;
}
#newsletter form input[type="submit"]{
    padding-left: 60px;
    padding-right: 60px;
    background: rgba(255,255,255,.1);
    color: #fff;
    cursor: pointer;
    transition: .3s;
}
#newsletter form input[type="submit"]:hover{
    background: rgba(255,255,255,1);
    color: #00699F;
}
#newsletter form input[type="checkbox"]{
    margin-right: 5px;
}

.services-page .content-block,
.sectors-page .content-block{
    display: block;
    margin: 0 auto;
    max-width: 500px;
    text-align: center;
    padding: 50px 0;
}
.services-category{
    display: flex;
    flex-flow: row wrap;
}
.serviceimg{
    width: 100%;
    height: auto;
}
.services-category .category{
    width: 25%;
    padding-left: 70px;
    padding-right: 70px;
    box-sizing: border-box;
    padding-bottom: 80px;
    position: relative;
    transition: color .3s;
    padding-top: 60px;
}
.services-category .category p.desc{
    min-height: 250px;
}
.services-category .category .background{
    background-size: cover;
    background-position: center center;
    transition: color .5s;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
}
.services-category .category a{
    z-index: 2;
    position: relative;
}
.services-category .category img{
    z-index: 2;
    position: relative;
}
.services-category .category:hover{
    color: #ffffff;
}

.services-category .category .break img.attachment-full.size-full{
    height: 70px;
    width: 70px;
    object-fit: contain;
}
.services-category .category:hover .break img.attachment-full.size-full{
    filter: grayscale(1) brightness(0) invert(1);
}

.services-category .category p.title{
    font-weight: bold;
    font-size: 1.2em;
}
.services-category .category p.title a{
    color: inherit;
}
.services-category .category .term-line{
    width: 30px;
    height: 1px;
    margin-top: 15px;
    margin-bottom: 15px;
    transition: background .3s;
}
.services-category .category .term-line:first-of-type{
    display: none;
}
.services-category .category:hover .term-line{
    filter: grayscale(1) brightness(0) invert(1);
}

.services-category .category:hover .term-line{
    background: #fff;
}
.services-category .category .term{
    font-weight: bold;
    color: inherit;
    transition: .3s;
    display: block;
    min-height: 60px;
    position: relative;
    padding-left: 20px;
    color: #000000;
    line-height: 1.4em;
}
.services-category .category .term svg{
    position: absolute;
    left: 0;
    top: .35em;
    transition: .3s;
}
.services-category .category.color-green .term svg{
    fill: #009f90;
}
.services-category .category.color-red .term svg{
    fill: #db4f40;
}
.services-category .category.color-orange .term svg{
    fill: #e27c00;
}
.services-category .category:hover .term{
    color: #ffffff;
}
.services-category .category:hover .term svg{
    fill: #ffffff;
}
.services-category .category .term:hover svg{
    transform: scale(1.5);
}
.services-category .category .term:hover{
    transform: translateX(10px);
}
.services-category .category .line{
    width: 40px;
    height: 1px;
    background: #fff;
    margin-top: 30px;
    margin-bottom: 10px;
}
.services-category .category .success{
    margin-bottom: 30px;
    margin-top: 50px;
    display: block;
    font-weight: bold;
    font-size: 1.1rem;
    font-family: 'Gilroy';
    font-size: 1.2rem;
    transition: .3s;
}
.services-category .category .success svg{
    height: 30px;
    width: auto;
    margin-right: 8px;
    vertical-align: middle;
    transform: translateY(-7px);
}
.services-category .category.color-blue .success svg path{
    fill: #00699f
}
.services-category .category.color-green .success svg path{
    fill: #009F90;
}
.services-category .category.color-red .success svg path{
    fill: #db4f40;
}
.services-category .category.color-orange .success svg path{
    fill: #E27C00;
}
.services-category .category .success:hover{
    color: #ffffff;
    transform: translateX(10px);
}
.services-category .category:hover .success svg path{
    fill: #ffffff !important;
}

.term-items-wrap .term-item{
    padding-top: 50px;
    padding-bottom: 50px;
    background: #f1f1f1;
    margin-bottom: 2px;
    text-align: left;
    position: relative;
    display: block;
}
.term-items-wrap .term-item .line{
    width: 30px;
    height: 2px;
    position: relative;
    z-index: 1;
}
.term-items-wrap .term-item h3{
    text-align: left;
    font-weight: bold;
    font-size: 2em;
    position: relative;
    z-index: 1;
    padding-right: 140px;
}
.sidebar .term-items-wrap .term-item h3{
    padding-right: 0;
}
.term-items-wrap .term-item p{
    max-width: 770px;
    position: relative;
    z-index: 1;
    color: #000000;
    padding-right: 160px;
}
.term-items-wrap .term-item .background{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0;
    transition: .3s;
    transition-delay: 0;
}
.term-items-wrap .term-item:hover .background{
    opacity: 1;
}

.term-items-wrap .term-item:hover .line{
    background: #fff;
}
.term-items-wrap .term-item:hover h3{
    color: #fff;
}
.term-items-wrap .term-item:hover p{
    color: #fff;
}
.term-items-wrap .term-item .img{
    padding: 20px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
    height: 100px;
    width: 100px;
    box-sizing: border-box;
    display: flex;
    justify-items: center;
    justify-content: center;
    transition: 0;
}
.term-items-wrap .term-item .img img{
    max-height: 100%;
    max-width: 100%;
    height: 100%;
    width: 100%;
    transition: 0s;
}
.term-items-wrap .term-item:hover .img{
    background: transparent;
}
.term-items-wrap .term-item:hover .img img{
    filter: grayscale(100%) brightness(600%);
}
.term-items-wrap.technologies .term-item .background{
    background-color: #00699F;
}
.term-items-wrap.technologies .term-item h3{
    font-size: 1.5em;
}

.sidebar .term-items-wrap .term-item{
    padding: 30px;
}
.sidebar .term-items-wrap.technologies .term-item h3{
    font-size: 1.2em;
    text-align: center;
}
.sidebar .term-items-wrap .term-item .img{
    position: relative;
    transform: none;
    margin: 0 auto;
}

.service-page .content .img{
    height:30vw;
    width: 100%;
    background-size: cover;
}

.color-blue,
.content.color-blue h1,
.content.color-blue h2,
.content.color-blue a,
.content.color-blue h3
{
    color: #00699f;
}
.color-blue .term-line{
    background: #00699f;
}
.color-green,
.content.color-green h1,
.content.color-green h2,
.content.color-green a,
.content.color-green h3
{
    color: #009F90;
}
.color-green .term-line{
    background: #009F90;
}
.color-orange,
.content.color-orange h1,
.content.color-orange h2,
.content.color-orange a,
.content.color-orange h3
{
    color: #E27C00;
}
.color-orange .term-line{
    background: #E27C00;
}

.color-red,
.content.color-red h1,
.content.color-red h2,
.content.color-red a,
.content.color-red h3
{
    color: #db4f40;
}
.color-red .term-line{
    background: #db4f40;
}

/*PARTS*/
.quickaccess{
    text-align: center;
}
.quickaccess .head{
    text-align: left;
}
.quickaccess.contact{
    background-size: cover;
    background-position: center center;
    padding-top: 50px;
    padding-bottom: 50px;
    color: #fff;
    max-width: 100%;
    width: 100%;
}
.quickaccess {
    display: block;
    margin: 0 auto;
    max-width: 500px;
    text-align: center;
    padding-top: 50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}
.quickaccess h3{
    margin-top: 0;
}
.quickaccess a{
    margin-top: 25px;
}
.quickaccess .title-line{
    text-align: left;
}
.quickaccess.contact a{
    color: #fff;
    background: #e4891a;
    transition: .3s;
}
.quickaccess.contact a:hover{
    background: #fff;
    color: #e4891a;
}
.quickaccess.contact p{
    font-size: 2.3em;
    line-height: 1.3em;
    color: #fff;
}
.quickaccess.contact .content{
    margin-top: 50px;
    margin-bottom: 50px;
}

/*CLIENTAREA*/
.clientArea-page .content{
    text-align: center;
    padding: 50px 0;
    margin: 0 auto;
    max-width: 500px;
}
.clientArea-page .content h3{
    margin-top:0;
}
.links-wrap{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: center;
}
.links-wrap .link{
    width: 35%;
    text-align: center;
    margin-bottom: 80px;
}
.links-wrap .link a.img{
    display: block;
    margin-bottom: 25px;
}
.links-wrap img{
    max-height: 80px;
    max-width: 300px;
    width: auto;
    height: auto;
}

.links-wrap.rsc .link{
    width: 40%;
    padding-left: 5%;
    padding-right: 5%;
}
.links-wrap.rsc .link .title{
    display: block;
    font-size: 1.2em;
    margin-bottom: 20px;
}
.links-wrap.rsc img {
    height: 200px;
    width: auto;
    max-height: none;
    object-fit: contain;
}

/*Blog*/

.link-arrowup{
    font-weight: bold;
    color: inherit;
    transition: .3s;
    display: block;
    min-height: 60px;
    position: relative;
    padding-left: 20px;
    color: #000000;
    line-height: 1.4em;
}
.link-arrowup svg{
    position: absolute;
    left: 0;
    top: .4em;
    transition: .3s;
    /* fill: #009f90; */
}
.link-arrowup:hover svg{
    transform: scale(1.5);
}
.link-arrowup:hover{
    transform: translateX(10px);
}

.header-blog{
    display: flex;
    flex-flow: row wrap;
    max-width: 1500px;
    margin: 0 auto;
    padding-left: 5%;
    padding-right: 5%;
    padding-top: 60px;
    padding-bottom: 50px;
    align-items: flex-end;
}
.post-type-archive-promotions .header-blog{
    padding-bottom: 10px;
}
.header-blog h1{
    font-family: 'Gilroy';
    font-weight: bold;
    font-size: 2.8em;
    color: #00699F;
    margin: 0;
    flex-basis: 50%;
    width: 50%;
}
.header-blog div{
    flex-basis: 50%;
    width: 50%;
    text-align: right;
    display: flex;
    flex-flow: column wrap;
    align-items: flex-end;
}
.header-blog div p.subtitle{
    font-family: 'Times';
    font-style: italic;
    font-weight: 400;
    font-size: 2em;
    text-align: right;
    color: #00699F;
    margin: 0;
}

.index-page{
    background-color: #F4F4F4;
    padding-bottom: 80px;
}
.columns-blog{
    display: flex;
    max-width: 1500px;
    margin: 0 auto;
    padding-left: 5%;
    padding-right: 5%;
    gap: 40px;
}
.columns-blog .posts-wrap{
    flex-basis: calc(100% - 330px);
    width: calc(100% - 330px);
    padding-top: 50px;
}
.columns-blog .post-categories{
    flex-basis: 330px;
    width: 330px;
    padding-top: 70px;
}
.posts-wrap .title-line{
	position: relative;
	text-align: right;
	width: 100%;
	box-sizing: border-box;
    color: #00527D;
    padding: 0;
}
.posts-wrap .title-line::after{
    display: none;
}
.posts-wrap .title-line::before {
	content: '';
	width: 40%;
	background: #fff;
	position: relative;
	/* right: 100px; */
    left: auto;
	top: 0;
    margin-right: 10px;
    background: #00527D;
    height: 1px;
    display: inline-block;
}
.posts-wrap{
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    gap: 50px;
}
.post{
    width: calc(33.33% - 35px);
    position: relative;
    box-sizing: border-box;
    padding: 0 !important;
    margin-bottom: 0.19%;
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-start;
    align-items: center;
}
.post .image{
    margin-top: 20px;
    height: 13vw;
    width: 100%;
    overflow: hidden;
    /* background-size: cover;
    background-position: center center; */
}
.post .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .2s;
}
.post .post-thumb-content{
    flex-grow: 1;
    display: flex;
    flex-flow: column wrap;
}
.post .post-thumb-content:hover .image img{
    width: 110%;
    height: 110%;
    transform: translate(-5%, -5%);
}
.post .post-thumb-content p{
    font-family: 'Gilroy';
}
.post .titlepost{
    color: #00699F;
    font-weight: normal;
    font-size: 22px;
    letter-spacing: 0;
    line-height: 30px;
    margin-top: 10px;
    display: block;
    flex-grow: 1;
}
.post a{
    color: #000000;
    flex-grow: 1;
}
.post a.button-cpsl{
    color: #00699F !important;
    margin-top: 40px;
    flex-grow: 0;
}
.post a.button-cpsl:hover{
    color: #fff !important;
}
.post p{
    font-family: 'Archia';
    font-size: 16px;
    color: #000000;
    letter-spacing: 0;
    line-height: 21px;
}
.post span{
    font-size: 12px;
}
.misha_loadmore{
    cursor: pointer;
    width: 100%;
    display: block;
    font-weight: normal;
    font-size: 28px;
    color: #fff;
    letter-spacing: 0;
    text-align: center;
    line-height: 27px;
    padding: 40px;
    background: #00699F;
    transition: .2s;
}
.misha_loadmore:hover{
    background-color: #ffffff;
    color: #00699F;
}

.post-categories{
    /* background: #00527D; */
    display: block;
}
.post-categories a{
    font-family: 'Archia';
    font-style: normal;
    font-weight: 400;
    font-size: 1.4em;
    color: #00699F;
}
/* .post-categories a:hover{

} */

.post-type-archive-promotions .columns-blog .posts-wrap{
    flex-basis: 100%;
    width: 100%;
}

.sectors-wrap{
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.sectors-wrap .sector{
    display: block;
    width: 49.99%;
    margin-bottom: 0.2%;
    position: relative;
    background: #f1f1f1;
    padding: 50px;
    box-sizing: border-box;
}
.sectors-wrap h3{
    font-weight: bold;
    font-size: 1.1em;
    color: #00699F;
    letter-spacing: 0;
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 40px;
    padding-right: 150px;
    z-index: 1;
    position: relative;
    transition: color .3s;
}
.sectors-wrap p{
    font-size: 15px;
    color: #000000;
    letter-spacing: 0;
    line-height: 21px;
    width: 100%;
    box-sizing: border-box;
    padding-right: 150px;
    z-index: 1;
    position: relative;
    transition: color .3s;
}
.sectors-wrap .icon{
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-50%, -50%);
    height: 100px;
    width: 100px;
    border-radius: 50%;
    background: #fff;
    z-index: 1;
    transition: .3s;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.sectors-wrap .icon img{
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    transition: 0;
}
.sectors-wrap .sector .background{
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: opacity .5s;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-color: #00699F;
}
.sectors-wrap .sector:hover .icon{
    background: none;
}
.sectors-wrap .sector:hover .icon img{
    filter: grayscale(100%) brightness(500%);
}
.sectors-wrap .sector:hover .background{
    opacity: 1;
}
.sectors-wrap .sector:hover .background.backgroundimg{
    opacity: .3;
}
.sectors-wrap .sector:hover h3, .sectors-wrap .sector:hover p{
    color: #fff;
}

.sectors-single .pages-header h1{
    font-size: 22px;
}

.content.sector .row{
    display: flex;
    flex-flow: row wrap;
}
.content.sector .row .sectorheader{
    padding-top: 100px;
    padding-bottom: 100px;
    font-weight: bold;
    color: #00699F;
    letter-spacing: 0;
    box-sizing: border-box;
}
.content.sector .row .sectorheader h1{
    font-size: 2em;
    line-height: 1.3em;
}
.content.sector .row .col1{
    width: 70%;
}
.content.sector .row .col2{
    width: 30%;
}
.content.sector .row .sectorimg{
    background-size: cover;
    background-position: center center;
}
.content.sector .row .content-img{
    background-size: cover;
    background-position: center center;
    color: #fff;
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: 10%;
    padding-right: 10%;
    box-sizing: border-box;
    background-color: #00699F;
    display: flex;
    flex-flow: row wrap;
    align-content: center;
}
.content.sector .row .content-img p,
.content.sector .row .content-img strong,
.content.sector .row .content-img p strong,
.content.sector .row .content-img a{
    color: #fff;
}
.content.sector .row .content-img a{
    font-weight: bolder;
}
.content.sector .row .content-img h1
{
    margin-top: 0;
    font-size: 25px;
    color: #fff;
    letter-spacing: 0;
    line-height: 35px;
}
.content.sector .row .info_block{
    box-sizing: border-box;
    align-self: center;
    padding: 50px;
}
.content.sector .row .info_block .title{
    font-size: 18px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 26px;
    margin-bottom: 15px;
    width: 100%;
}
.content.sector .row .info_block .text{
    font-size: 16px;
    color: #000000;
    letter-spacing: 0;
    line-height: 25px;
    width: 100%;
}
.landing-page img.fullwidth{
    width: 100%;
    height: auto;
}

.landing-page .sidebar{
    color: #000000;
}
.landing-page .sidebar.fullheight{
    background: #f1f1f1;
}
.landing-page .sidebar .block .title-line,
.landing-page .sidebar .block .text{
    color: #db4f40;
}

.contact.sidebar .homeblock-wrap .block .text{
    font-size: 1.7em;
    width: 100%;
}

.landing-page .sidebar .block .title-line::after {
    background: #db4f40;
}
.landing-page.sidebar-page .content-wrap{
    padding-bottom: 0;
}
.landing-page.sidebar-page .content{
    padding-bottom: 50px;
    /* max-width: 900px;
    margin: 0 auto; */
}
.landing-page .sidebar .block p{
    color: #000000;
}
.landing-page .sidebar .wpcf7 input{
    width: 100%;
    box-sizing: border-box;
    border-radius: 25px;
    box-shadow: none;
    border: none;
    padding: 15px;
    font-size: 18px;
    margin-bottom: 20px;
    margin-top: 10px;
}
.landing-page .sidebar .wpcf7 input[type="submit"]{
    cursor: pointer;
    width: auto;
    display: inline-block;
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
    padding: 15px 35px;
    border-radius: 40px;
    background: #db4f40;
    border: solid 2px #db4f40;
    box-shadow: none;
    font-size: 16px;
    transition: .3s;
    white-space: pre-wrap;
}
.landing-page .sidebar .wpcf7 input[type="checkbox"]{
    margin: 0;
    margin-right: 15px;
    width: auto;
}
.landing-page .sidebar .wpcf7 input[type="submit"]:hover{
    background: transparent;
    color: #db4f40;
}
.landing-page .sidebar a{
    color: #db4f40;
}
.sidebar span.wpcf7-list-item{
    margin: 0;
}

div.wpcf7-mail-sent-ok{
    color: #00699F;
}
.sidebar-page .content-wrap{
    display: flex;
    flex-flow: row wrap;
    padding-bottom: 50px;
}
.sidebar-page .sidebar{
    width: 350px;
    box-sizing: border-box;
}
.sidebar-page .content{
    width: calc(100% - 350px);
    padding-right: 50px;
    box-sizing: border-box;
    padding-top: 30px;
}
span.wpcf7-list-item{
    margin: 0;
}

.video-page .content{
    max-width: 991px;
    margin: 0 auto;
    margin-bottom: 100px;
}
.video-page .content p{
    text-align: center;
    color: #00699F;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3em;
    line-height: 1.4em;
}
.video-page .content a{
    display: inline-block;
    margin: 0 auto;
    background: #db4f40;
    border: solid 2px #db4f40;
    font-weight: bold;
    padding: 15px 35px;
    border-radius: 40px;
    transition: .3s;
    cursor: pointer;
    font-size: .85em;
    transition: .3s;
    color: #fff;
}
.video-page .content a:hover{
    background: #fff;
    color: #db4f40;
}


.page-image-header{
    background-size: cover;
    background-position: center center;
    padding-top: 70px;
    padding-bottom: 70px;
    padding-right: 40%;
    width: 100%;
    font-weight: bold;
    color: #00699F;
    letter-spacing: 0;
    line-height: 44px;
    box-sizing: border-box;
}
.page-image-header.color-white{
    color: #fff;
}


.sidebar .block{
    width: 100%;
    padding: 40px 50px;
    color: #fff;
    box-sizing: border-box;
    text-align:center;
    margin-bottom: 10px;
    background: #f1f1f1;
}
.sidebar.landing .block form{
    text-align: left;
}
.sidebar.landing .block form input[type="submit"]{
    margin: 0 auto;
    display: block;
    margin-top: 30px;
}

.how-page .sidebar .block{
    height: 30vw;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    position: relative;
}
.how-page .sidebar .block .title-line{
    position: absolute;
    top: 40px;
    left: 50px;
}
.how-page .sidebar .block img{
    margin-top: 40px;
    max-height: 100px;
}

.sidebar .block.color-blue,
.sidebar .block.color-blue .button:hover,
.color-blue h3,
.landing-page .sidebar .block.color-blue .title-line,
.landing-page .sidebar .block.color-blue .text,
.sidebar .block.backgroundcolor-blue .button
{
    color: #00699F;
}
.sidebar .block.color-blue .title-line::after,
.sidebar .block.color-blue .button,
.color-blue .pages-header,
.color-blue .term-item .background,
.landing-page .sidebar .block.backgroundcolor-blue,
.sidebar .block.backgroundcolor-blue
{
    background: #00699F;
}
.sidebar .block.color-red,
.sidebar .block.color-red .button:hover,
.color-red h3,
.sidebar .block.backgroundcolor-red .button
{
    color: #db4f40;
}
.sidebar .block.color-red .title-line::after,
.sidebar .block.color-red .button,
.color-red .pages-header,
.color-red .term-item .background,
.landing-page .sidebar .block.backgroundcolor-red,
.sidebar .block.backgroundcolor-red
{
    background: #db4f40;
}
.sidebar .block.color-orange,
.sidebar .block.color-orange .button:hover,
.color-orange h3,
.landing-page .sidebar .block.color-orange .title-line,
.landing-page .sidebar .block.color-orange .text,
.sidebar .block.backgroundcolor-orange .button
{
    color: #E27C00;
}
.sidebar .block.color-orange .title-line::after,
.sidebar .block.color-orange .button,
.color-orange .pages-header,
.color-orange .term-item .background,
.landing-page .sidebar .block.backgroundcolor-orange,
.sidebar .block.backgroundcolor-orange
{
    background: #E27C00;
}
.sidebar .block.color-green,
.sidebar .block.color-green .button:hover,
.color-green h3,
.landing-page .sidebar .block.color-green .title-line,
.landing-page .sidebar .block.color-green .text,
.sidebar .block.backgroundcolor-green .button
{
    color: #1aa89b;
}
.sidebar .block.color-green .title-line::after,
.sidebar .block.color-green .button,
.color-green .pages-header,
.color-green .term-item .background,
.landing-page .sidebar .block.backgroundcolor-green,
.sidebar .block.backgroundcolor-green
{
    background: #1aa89b;
}

.sidebar .block.backgroundcolor-red,
.sidebar .block.backgroundcolor-orange,
.sidebar .block.backgroundcolor-green,
.sidebar .block.backgroundcolor-blue,
.sidebar .block.backgroundcolor-red h3,
.sidebar .block.backgroundcolor-orange h3,
.sidebar .block.backgroundcolor-green h3,
.sidebar .block.backgroundcolor-blue h3,
.sidebar .block.backgroundcolor-red .text,
.sidebar .block.backgroundcolor-orange .text,
.sidebar .block.backgroundcolor-green .text,
.sidebar .block.backgroundcolor-blue .text,
.sidebar .block.backgroundcolor-red .title-line,
.sidebar .block.backgroundcolor-orange .title-line,
.sidebar .block.backgroundcolor-green .title-line,
.sidebar .block.backgroundcolor-blue .title-line
{
    color: #fff !important;
}

.sidebar .block.backgroundcolor-red .title-line::after,
.sidebar .block.backgroundcolor-orange .title-line::after,
.sidebar .block.backgroundcolor-green .title-line::after,
.sidebar .block.backgroundcolor-blue .title-line::after,
.sidebar .block.backgroundcolor-red .button,
.sidebar .block.backgroundcolor-orange .button,
.sidebar .block.backgroundcolor-green .button,
.sidebar .block.backgroundcolor-blue .button
{
    background: #fff !important;
}

.sidebar .block img{
    margin-bottom: 10px;
    max-width: 70%;
    max-height: 250px;
}
.sidebar.landing .block img{
    margin-bottom: 10px;
    max-width: 70%;
    max-height: 120px;
    min-width: 80px;
}
.sidebar .homeblock-wrap .block img{
    margin-top: 50px;
    max-width: 70%;
    max-height: 150px;
    /* filter: saturate(100) grayscale(1) brightness(100); */
}
.sidebar .homeblock-wrap .block a{
    color: #fff;
    width: 100%;
}
.sidebar .homeblock-wrap .block .title{
    display: block;
    font-weight: bold;
    margin-bottom: 15px;
}
.sidebar .block .text{
    margin-bottom: 40px;
}
.sidebar .block .title-line{
    margin-top: 0;
    margin-bottom: 40px;
    text-align: left;
}

.sidebar .block .button{
    display: inline-block;
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
    padding: 15px 35px;
    border-radius: 40px;
    transition: .3s;
    cursor: pointer;
}
.sidebar .block .button:hover{
    background: #fff;
}

.sidebar .block .wpcf7-response-output{
    color: #000000;
}

.sidebar .homeblock-wrap .block{
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    position: relative;
    background: none !important;
    box-sizing: border-box;
}
.sidebar .homeblock-wrap .block .title-line{
    position: absolute;
    top: 40px;
    left: 50px;
}
.sidebar .homeblock-wrap .block .title-line::after{
    background: #fff;
}
.sidebar .homeblock-wrap .block.color-orange>a:first-of-type{
    width: 100%;
}
.promotion-wrap{
    position: relative;
}
.promotion-wrap .title-line{
    position: absolute;
    left: 55%;
    top: 25px;
    font-size: 15px;
}
.promotion-image{
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background-size: cover;
    background-position: center center;
}
.promotion-wrap .promotion{
    width: 50%;
    margin-left: 50%;
    padding-left: 5%;
}

.content img.case-img{
    width: 100%;
    height: auto;
}
.studies-link{
    cursor: pointer;
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 50px;
    box-sizing: border-box;
    transition: .3s;
}
.studies-link:hover{
    background: #00699F;
}
.studies-link a{
    color: #00699F;
    transition: .3s;
}
.studies-link a.studies-arrow{
    background: #f1f1f1;
    height: 100%;
    transition: .3s;
}
.studies-link:hover a.studies-arrow{
    background: #00699F;
}
.studies-link:hover a{
    color: #fff;
}
.studies-link .title-line::after{
    background: #00699F;
    transition: .3s;
}
.studies-link:hover .title-line::after{
    background: #fff;
}
.studies-link img{
    height: 30px;
    padding: 25px;
}
.studies-link:hover img{
    background: none;
    filter: saturate(0) brightness(500%);
}
.sidebar-study{
    background: #f1f1f1;
    padding: 30px 50px;
    box-sizing: border-box;
    transition: background .3s;
    margin-bottom: 10px;
}
.sidebar-study:hover{
    background: #00699F;
}
.sidebar-study .title-line{
    transition: color .3s;
    color: #000000;
}
.sidebar-study:hover .title-line{
    color: #fff;
}
.sidebar-study .title-line::after{
    background: #000000;
    transition: background .3s;
}
.sidebar-study:hover .title-line::after{
    background: #fff;
}
.sidebar-study p{
    color: #00699F;
    transition: color .3s;
}
.sidebar-study:hover p{
    color: #fff;
}

.no-results{
    text-align: center;
    padding-top: 100px;
    padding-bottom: 100px;
    width: 100%;
}

.filters{
    display: flex;
    align-items: center;
    padding: 50px;
    background: #00527D;
    justify-content:center;
}
.select-list{
    position: relative;
    width: 350px;
    margin-left: 30px;
    margin-right: 30px;
    box-sizing: border-box;
}
.select-list .title{
    padding: 20px 30px;
    font-weight: bold;
    color: #fff;
    background: #1a638a;
    border-radius: 40px;
    width: 'inherit';
    cursor: pointer;
}
.select-list .title .icon{
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 15px;
    /* background: #fff;
    -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
    clip-path: polygon(50% 100%, 0 0, 100% 0); */
    transition: .3s;
}
.select-list .title .icon svg{
    width: 15x;
    height: 10px;
}
.select-list .title .icon.open{
    -webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
    clip-path: polygon(50% 0, 0 100%, 100% 100%);
}
.select-list .list{
    border-radius: 0px;
    background: #fff;
    position: absolute;
    z-index: 1;
    padding: 30px 50px;
    top: 40px;
    left: 20px;
    width: 'inherit';
    display: none;
    background: #1a638a;
    width: 211px;
}
.select-list .list a{
    display: block;
    color: #fff;
    margin-bottom: 20px;
    margin-top: 20px;
    transition: .3s;
}
.select-list .list a:hover{
    transform: translateX(15px);
}

.history-page{
    background-color: #f1f1f1;
}

.squares-wrap{
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    /* column-count: 3;
    column-gap: 0.2%; */
}
.squares-wrap .square{
    cursor: pointer;
    width: 33.2%;
    background: #f1f1f1;
    margin-bottom: 0.2%;
    padding-top: 80px;
    box-sizing: border-box;
    text-align: center;
    transition: .3s;
    position: relative;
    /* page-break-inside: avoid;
    -webkit-column-break-inside: avoid; 
    break-inside: avoid;  */
}
.squares-wrap .square:hover,
.squares-wrap .square.open
{
    background: #00699F;
    color: #fff;
}
.squares-wrap .square ul li{
    color: #fff;
}
.squares-wrap .square.history .year{
    font-size: 80px;
    font-weight: bold;
    color: #E6E5E6;
    transition: .3s;
}
.squares-wrap .square.history:hover .year,
.squares-wrap .square.history.open .year
{
    color: #fff;
}
.squares-wrap .square .title{
    position: relative;
    padding-top: 30px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 80px;
    display: block;
    height: 80px;
}
.squares-wrap .square .title p{
    max-width: 300px;
    margin: 0 auto;
    font-size: 1.1em;
}

.squares-wrap .square .content{
    font-family: 'Archia';
    display: none;
    text-align: left;
    margin-top: 50px;
    font-size: 18px;
    line-height: 24px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 80px;
    color: #fff;
}
.squares-wrap .square .arrow{
    height: 40px;
    width: 40px;
    /* margin-top: 80px; */
    background: #fff;
    /* margin-left:auto; 
    margin-right:0; */
    position: absolute;
    right: 0;
    bottom: 0;
    transition: opacity .3s;
}
.squares-wrap .square .arrow img{
    height: 60%;
    width: 60%;
    margin-top: 20%;
    margin-left: 20%;
    transition: transform .3s;
}
.squares-wrap .square.open .arrow{
    opacity: .5;
}
.squares-wrap .square.open .arrow img{
    transform: rotate(90deg);
}

.squares-wrap .square .content p,
.squares-wrap .square .content h2,
.squares-wrap .square .content h1,
.squares-wrap .square .content h3,
.squares-wrap .square .content p strong,
.squares-wrap .square .content p a
{
    color: #fff;
    font-family: 'Montserrat', sans-serif;
}
.squares-wrap .square .content p{
    font-size: .85em;
}
.squares-wrap .square .content p a{
    font-weight: bold;
}

.squares-wrap .square.job .content{
    padding-bottom: 130px;
}
.squares-wrap .square.job .content h1{
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 22px;
    color: #FFFFFF;
    letter-spacing: 0;
    line-height: 30px;
}
.squares-wrap .square.job .content h2{
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 22px;
    color: #FFFFFF;
    letter-spacing: 0;
    line-height: 30px;
    font-style: normal;
}
.squares-wrap .square.job{
    padding-top: 0;
}
.squares-wrap .square.job .title{
    padding-top: 25%;
    padding-bottom: 35%;
    color: #00699F;
    font-size: 1.2em;
    letter-spacing: 0;
    text-align: center;
}
.squares-wrap .square.job:hover .title{
    color: #fff;
}
.squares-wrap .square.job .title,
.squares-wrap .square.job .arrow{
    transition: .3s;
}
.squares-wrap .square.job.open .title{
    color: #fff;
    padding-bottom: 0;
}
.squares-wrap .square.job.open .arrow{
    margin-bottom: -35%;
}
.squares-wrap .square.job .content h2::after{
    display: none;
}
.squares-wrap .square.job .content h2::before{
    display: none;
}

.squares-wrap .square.job:hover .button-cpsl,
.squares-wrap .square.job.open .button-cpsl{
    background: #fff;
    color: #00699F;
}
.squares-wrap .square.job .button-cpsl{
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    background: #00699F;
    color: #fff;
    transition: .3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.location-city{
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: #f1f1f1;
    margin-bottom: 2px;
    padding-top: 50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}
.location-city .info{
    width: 40%;
}
.location-city .info img{
    height: 40px;
    width: auto;
    display: inline-block;
    margin-right: 10px;
}
.location-city .info p.title{
    font-weight: bold;
    font-size: 18px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 16px;
}
.location-city .info p{
    font-weight: bold;
    font-size: 15px;
    color: #4A4A4A;
    letter-spacing: 0;
    line-height: 21px;
}
.location-city .info a{
    font-weight: bold;
    font-size: 15px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 21px;
}
.location-city .map{
    width: 60%;
}
.location-city .map iframe{
    width: 100%;
    height: 35vw;
}
.locations-wrapper{
    display: flex;
    flex-flow: row wrap;
    background: #f1f1f1;
}
.locations-wrapper .location-city{
    width: 50%;
}

.contact-page{
    background: #f1f1f1;
    padding-top: 50px;
    padding-bottom: 50px;
}
.rows-contact{
    display: flex; flex-flow: row wrap;
    /* margin-top: 80px; */
}
.rows-contact .row-contact{
    width: 50%;
    box-sizing: border-box;
}
.rows-contact .row-contact:nth-child(2){
    padding-left: 37px;
}
.contact-page h2{
    margin-top: 0;
    font-size: 36px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 44px;
}
.contact-page p{
    font-size: 15px;
    color: #000000;
    letter-spacing: 0;
    line-height: 21px;
}

.contact-page form{
    max-width: 900px;
}

.rows-contact span.wpcf7-list-item{
    display: block;
    font-weight: bold;
    font-size: .9em;
    color: #00699F;
    letter-spacing: 0;
    line-height: 1.3em;
    margin-bottom: 20px;
}

.contact-page input,
.contact-page textarea
{
    padding: 10px 15px;
    border-radius: 0;
    box-shadow: none;
    border: none;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-top: 5px;
    margin-bottom: 10px;
    font-size:15px;
}
.contact-page input[type="checkbox"]{
    width: auto;
    margin-right: 10px;
    margin-bottom: 0;
}
.contact-page input[type="radio"]{
    width: auto;
    margin-right: 10px;
    margin-bottom: 0;
}
.contact-page input[type="submit"]{
    width: auto;
    margin-bottom: 0;
}
.contact-page textarea
{
    border-radius: 0;
}
div.wpcf7-mail-sent-ok{
    border-color: #00699F;
}
.wpcf7 p a{
    color: #00699F;
}
.contact-page label{
    margin-bottom: 30px;
    display: block;
    font-size: .9rem;
}
.row-contact-final{
    text-align: center;
    /* margin-top: 50px; */
    margin-bottom: 30px;
    color: #00699F;
}
.contact-page input[type="submit"]{
    background-color:rgba(0,105,159,.1);
    border-radius: 40px;
    padding: 15px 50px;
    color: #00699F;
    font-weight: bold;
    display: inline-block;
    border: none;
    box-shadow: none;
    font-size: 16px;
    margin-top: 20px;
    transition: .3s;
    cursor: pointer;
}
.contact-page input[type="submit"]:hover{
    background: #00699F;
    color: #fff;
}

.blog-image-header{
    padding-top: 50px;
    padding-bottom: 50px;
    position: relative;
    padding-right: 300px;
}
.blog-image-header .img{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    opacity: .2;
}
.blog-image-header .img.promotion{
    opacity: 1;
}
.blog-image-header .title-line::after{
    background: #000000;
}
.blog-image-header h1{
    font-size: 36px;
    color: #00699F;
    letter-spacing: 0;
    line-height: 44px;
    max-width: 100%;
}
.blog-image-header .cat{
    font-weight: bold;
    font-size: 16px;
    color: #009F90;
    letter-spacing: 0;
    line-height: 24px;
    margin-top: 30px;
    display: block;
}

.how-page{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}
.how-page .sidebar{
    width: calc(100% / 3);
}
.how-page .sidebar .block{
    margin: 0;
}
.how-page .copy{
    width: calc((100% / 3 * 2));
}
.how-page .copy.big{
    max-width: 100%;
    display: block;
    margin: 0 auto;
    font-size: 1.15em;
    line-height: 1.2em;
    color: #00699F;
    letter-spacing: 0;
    text-align: center;
    padding: 0 5%;
    box-sizing: border-box;
}
.how-page .copy.small{
    font-family: 'Archia';
    font-size: 18px;
    color: #000000;
    letter-spacing: 0;
    line-height: 25px;
    max-width: 50%;
    display: block;
    margin: 0 auto;
}
.how-page .img{
    align-self: normal;
    width: calc(100% / 3);
    background-size: cover;
    background-position: center center;
}

.text-centre{
    max-width: 900px;
    font-size: 1.1em;
    padding-top: 40px;
    padding-bottom: 40px;
    margin: 0 auto;
    display: block;
}
.text-centre p{
    font-size: 1em;
}
.two-columns{
    column-count: 2;
}
.two-columns h3:first-of-type{
    margin-top: 0;
}

.certifications{
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    /* justify-content: space-between; */
}
.certifications a{
    display: block;
    width: 20%;
    padding: 1%;
    box-sizing: border-box;
    transition: transform .3s;
}
.certifications a:hover{
    transform: scale(1.05);
}
.certifications a img{
    width: 100%;
    height: auto;
}

#modal{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999999999999999999999999999;
    width: 100%;
    height: 100%;
    display: none;
    background-color: #00699F;
}
#modal .modal-wrap{
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}
#modal #close-modal{
    position: absolute;
    top: 50px;
    right: 50px;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    z-index: 2;
}
#modal .modal-content{
    height: 100%;
    width: 100%;
    max-width: 70%;
    max-height: 70vh;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}
#modal .iframewrap{
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
}
#modal .iframewrap iframe{
    position: absolute;
    width: 100%;
    height: 100%;
}


.modal-wrapper{
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background-color: rgba(255,255,255,.8);
}
.modal-wrapper.open{
    display: block;
}
.modal-wrapper .modal-content{
    width: 80%;
    height: 80vh;
    position: absolute;
    left: 10%;
    top: 10%;
}
.modal-wrapper .modal-close{
    color: #00527D;
    top: 7%;
    right: 7%;
    position: absolute;
    font-size: 1.7rem;
    font-weight: bold;
    cursor: pointer;
}

.iframewrap
/* .content p .iframe-wrapper */
{
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
}
.iframewrap iframe
/* .content p .iframe-wrapper iframe */
{
    position: absolute;
    width: 100%;
    height: 100%;
} 

.content table{
    font-family: 'Archia';
    font-size: 18px;
    border: none;
}
.content table td{
    border: none;
    border-right: solid 1px #d0d0d0;
    border-bottom: solid 1px #d0d0d0;
    padding: 5px;
    word-break: break-word;
}
.content table tr{
    line-height: 30px;
    display: block;
}
.content table tr strong{
    color: #00699F;
}


body:not(.page-id-XX) .grecaptcha-badge {
	visibility: hidden;
}

/*TEAM*/
.team-wrap{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}
.team-wrap .copy p{
    display: block;
    margin: 0 auto;
    font-size: 1.2em;
    line-height: 1.2em;
    color: #00699F;
    letter-spacing: 0;
    text-align: center;
    padding: 40px;
}
.team-wrap .text-bloc{
    width: 25%;
}
.team-wrap .image-bloc{
    width: 25%;
    text-align: center;
}
.team-wrap .image-bloc img{
    width: 95%;
    height: 95%;
}
.team-wrap .team-member{
    width: 25%;
    height: 33vw;
    position: relative;
}
.team-wrap .team-member .image{
    background-size: cover;
    background-position: center center;
    height: 100%;
    width: 100%;
}
.team-wrap .team-member .overlay{
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: .3s;
}
.team-wrap .team-member .overlay .background{
    background: #00699F;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: .85;
}
.team-wrap .team-member:hover .overlay{
    opacity: 1;
}
.team-wrap .team-member .info{
    position: relative;
    z-index: 2;
    padding: 30px;
}
.team-wrap .team-member .location{
    color: #fff;
    display: block;
    margin-bottom: 20px;
}
.team-wrap .team-member .name{
    color: #fff;
    display: block;
    margin-bottom: 15px;
    text-align: center;
    font-family: 'Archia';
    font-size: 1.3em;
}
.team-wrap .team-member .department{
    color: #fff;
    display: block;
    margin-bottom: 20px;
    text-align: center;
    font-size: 1.1em;
}
.team-wrap .team-member .text{
    color: #fff;
    display: block;
    font-size: .9em;
    max-width: 300px;
    display: block;
    margin: 0 auto;
}

#cn-accept-cookie{
    border: none;
    border-radius: 25px;
    padding: .3em 1em;
    background: #fff;
    color: #00699F;
    box-sizing: border-box;
    display: inline-block;
}

.message-wrapper{
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255,255,255,.3);
    width: 100%;
    height: 100vh;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}
.message-wrapper .message{
    background: #fff;
    width: 80%;
}

input.wpcf7-file{
    background-color: #00699F;
    color: #ffffff;
    padding: .5em;
    box-sizing: border-box;
}
.contact-page label .featured{
    color: #00699F;
    display: block;
    text-align: center;
    font-size: 1.3em;
    margin-bottom: 1em;
    font-weight: bold;
}
.blue-input input{
    background: #00699F;
    color: #ffffff;
}
.blue-input input::placeholder{
    opacity: 1;
}


.term-items-wrap .term-item p.service-description{
    display: none;
}
.term-items-wrap .term-item p.service-description-title{
    font-weight: bold;
}


/* POP UPS */
.popup-wrapper{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 999;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,.6);
}

.popup-wrapper .popup{
    position: relative;
    max-width: 960px;
    max-width: 550px;
    max-height: 80vh;
    padding: 2rem 3rem;
    box-sizing: border-box;
    background-color: #ffffff;
    border-radius: 35px;
}
.popup-wrapper .popup .popup-content{
    position: relative;
    z-index: 2;
    line-height: 1.4em;
    overflow: auto;
}
.popup-wrapper .popup .popup-content .wp-block-columns{
    gap: 0 !important;
}
.popup-wrapper.blue-text .popup .popup-content{
    color: #00699F;
}
.popup-wrapper .popup .popup-content h2{
    text-align: center;
    max-width: 80%;
    margin: 20px auto 30px auto;
    line-height: 1.3em;
}
.popup-wrapper .popup .popup-background{
    /* opacity: .85; */
    background: #ffffff;
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center center;
}
.popup-wrapper .popup .popup-background.with-image{
    opacity: 1;
}
.popup-wrapper .popup .popup-close{
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 1rem;
    cursor: pointer;
    color: #E27C00;
    font-size: 1.2em;
    z-index: 1;
}
.popup-wrapper.blue-text .popup .popup-close{
    color: #00699f;
}
.popup-wrapper .popup .popup-close:after{
    display: inline-block;
    content: "\00d7";
    height: 40px;
    font-size: 40px;
    width: 40px;
    position: absolute;
    left: 0;
    top: 0;
  }
  
.popup-wrapper .popup p.has-large-font-size{
    font-size: 32px;
    line-height: 1.2em;
}
.popup-wrapper .popup .popup-content .wp-block-column{
    flex-basis: 33.3% !important;
}

.popup-wrapper .wp-block-video {
    height: 0;
    padding-bottom: 32.25%;
    position: relative;
}
.popup-wrapper .wp-block-video video{
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}


.wpcf7 input[type="text"],
.wpcf7 input[type="date"],
.wpcf7 input[type="number"],
.wpcf7 input[type="email"]
{
    padding: .5em;
    margin-top: .5em;
}

.rows-contact .wpcf7-radio span.wpcf7-list-item{
    margin-bottom: 0;
}

.no-margin-bottom{
    margin-bottom: 0 !important;
}
.wpcf7-form-control-wrap .wpcf7-radio{
    display: flex;
    flex-flow: row wrap;
    margin-top: 1em;
    margin-bottom: 50px;
}
.wpcf7-form-control-wrap .wpcf7-radio .wpcf7-list-item{
    margin-right: 1rem;
}


.quick_form_7_css{
    background: transparent !important;
    border: none !important;
    width: auto !important;
    margin: 0 auto !important;
    display: block !important;
}
#SIGNUP_HEADING{
    display: none !important;
}
#zcWebOptin {
	padding-left: 60px !important;
	padding-right: 60px !important;
	background: rgba(255,255,255,.1) !important;
	color: #ffffff !important;
	cursor: pointer !important;
	transition: .3s !important;
    border-radius: 25px !important;
    box-shadow: none !important;
    border: none !important;
    font-size: 18px !important;
    display: block;
}
#zcWebOptin:hover{
    background: rgba(255,255,255,1) !important;
    color: #00699F !important;
}
.SIGNUP_FLD{
    width: auto !important;
    height: auto !important;
}
#EMBED_FORM_NAME_LABEL,
#EMBED_FORM_EMAIL_LABEL{
    border-radius: 25px !important;
    box-shadow: none !important;
    border: none !important;
    padding: 15px !important;
    font-size: 18px !important;
    min-width: 250px !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
}

/* SLIDER arrows */
.slider-wrapper.arrows .wp-block-group__inner-container{
    display: flex;
    flex-flow: row wrap;
    position: relative;
}
.slider-wrapper.arrows .navigation{
    width: 5%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: relative;
    z-index: 2;
    background-color: #f3f3f3;
    border-radius: 50%;
    width: 70px;
    height: 70px;
    padding: 15px;
    box-sizing: border-box;
    margin: 0;
}
.slider-wrapper.arrows .navigation.next{
    right: 1em;
    margin-left: auto;
    margin-right: 0;
}
.slider-wrapper.arrows .navigation.prev{
    left: 1em;
}
.slider-wrapper.arrows .navigation img{
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
}
.slider-wrapper.arrows .slider-container {
    overflow: hidden;
    width: 100%;
}
.slider.arrows {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: .3s;
}
.slider.arrows > .wp-block-group__inner-container {
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    width: 20000px;
}
.slider.arrows .wp-block-group__inner-container.shifting {
    transition: left .2s ease-out;
}
.slider.arrows .slide {
    position: relative;
    width: 100vw;
    height: 100%;
    transition: all 1s;
    padding-left: 1vw;
    padding-right: 1vw;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}
.slider.arrows .items-per-screen{
    display: none;
}


.virtual-corner-content{
    height: 100vh;
}
.virtual-corner-content iframe{
    border: none;
    display: block;
}
#footer.virtual-corner-footer{
    position: fixed;
    bottom: 0;
    transform: translateY(100%);
    transition: .3s;
}
#footer.virtual-corner-footer.active{
    transform: translateY(0);
}
#footer.virtual-corner-footer .legal{
    padding: 12px;
}
.pestana-legal {
	position: absolute;
	top: 0;
	transform: translateY(-96%);
	background: #217cab;
	padding: 10px 20px;
    cursor: pointer;
}


.video-section{
    padding-top: 30px;
    padding-bottom: 50px;
    background-size: cover;
    background-position: center center;
    cursor: pointer;
}
.video-section a{
    cursor: pointer;
}
.video-section .title-line{
    color: #00699F;
}
.video-section .info{
    padding-top: 100px;
    padding-bottom: 100px;
    text-align: center;
    font-size: 18px;
    color: #00699F;
    letter-spacing: 0;
    text-align: center;
    line-height: 24px;
    cursor: pointer;
    transition: 1s;
}
.video-section .info img{
    height: 50px;
    width: auto;
    display: block;
    margin: 30px auto;
}
.video-section .info .title{
    font-size: 110px;
    color: #00699F;
    letter-spacing: 0;
    text-align: center;
    line-height: 110px;
}
.video-section .info.closed{
    opacity: 0;
}
.video-section .info.closed.open{
    opacity: 1;
}
.animation{
    transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.title-line.animation.closed{
    transform: translateX(-200%);
}
.title-line.animation.closed.open{
    transform: translateX(0);
}
.video-section  .title-line::after{
    background: #00699F;
}
.video-section .info{
    font-size: 1.8rem;
}

.wp-block-buttons.aligncenter .wp-block-button{
    width: 100%;
}


.content table{
    min-width: 100%;
    /* overflow: scroll; */
    display: block;
    position: relative;
}
.content table tr{
    display: flex;
}
.content table td{
    word-break: break-word;
}

.promotions-template-template-promotions-landing .sidebar.landing{
    padding-top: 20px;
}
.promotions-template-template-promotions-landing .sidebar .block .title-line{
    padding-bottom: 10px;
}
.promotions-template-template-promotions-landing .sidebar .block form p{
    line-height: 1.8em;
    margin-bottom: 25px;
    margin-top: 25px;
}

.promotions-template-template-promotions-landing .sidebar.landing .block form input[type="submit"]{
    margin-top: 45px;
}

.promotions-template-template-promotions-landing .content{
    text-align: justify;
}

.hiring-button{
    background-color: #F1F1F1;
    color: #00699F;
    padding: 15px;
    width: 140px;
    text-align: center;
    margin-left: 20px;
    margin-top: -180px;
    transform: translateY(100px);
    overflow: hidden;
    transition: .3s;
}
.hiring-button:hover{
    background-color: #00699F;
    color: #F1F1F1;
}
.hiring-button:hover img{
    filter: brightness(99) saturate(0); 
}
#header .header .hiring-button img{
    display: block;
    width: 60px;
    height: auto;
    margin: 7px auto 12px auto;
}
.hiring-button .title-hiring{
    font-weight: bold;
    display: block;
    font-size: 1.1rem;
    animation: appearbottom .5s;
    font-family: 'Gilroy';
}
.hiring-button .subtitle-hiring{
    display: block;
    margin-top: 4px;
    font-size: .9rem;
    animation: appearbottom .5s;
    animation-delay: .2s;
}
@keyframes appearbottom{
    0% {transform: translateY(100px);}
    100% {transform: translateY(0);}
}

.tutorial-link{
    text-align: left;
    max-width: 230px;
    margin: 0 auto;
    padding-left: 60px;
    position: relative;
    margin-top: 30px;
    color: #00527D;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
    transition: .3s;
    display: flex;
    align-items: center;
}
.tutorial-link:hover{
    color: #2BA1DC;
}
.tutorial-link img{
    position: absolute;
    left: 0;
    width: 50px;
    height: auto;
}
.tutorial-link span{
    /* background-color: rgba(0,105,159,.1); */
    /* border-radius: 40px;
    padding: 15px 30px; */
    color: #00699F;
    font-weight: bold;
    display: inline-block;
    transition: .3s;
    text-align: left;
}
/* .tutorial-link span:hover{
    background: #00699F;
    color: #fff;
} */

.postid-14059 .hiring-button,
.postid-27369 .hiring-button,
.postid-27151 .hiring-button,
.postid-232 .hiring-button,
.postid-14043 .hiring-button
{
    display: none;
}

.qr-card{
    max-width: 700px;
    display: block;
    margin: 0 auto;
}
.qr-card .image img{
    max-width: 400px;
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.button-link{
    width: 100%;
    display: block;
}
.button-link a{
    width: 100%;
    padding: 20px 30px;
    text-align: center;
    color: #ffffff;
    background-color: #005c4d;
    border-radius: 30px;
    display: block;
    box-sizing: border-box;
    border: solid 2px #ffffff;
    transition: .3s;
}
.button-link a:hover{
    color: #005c4d;;
    background-color: #ffffff;
    border: solid 2px #005c4d;
}

.group-info{

    border-bottom: solid 1px #d0d0d0;
    padding-bottom: 30px;
    padding-top: 20px;
}
.group-info > div{
    position: relative;
    padding-left: 40px;
}
.group-info .icon{
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
}
.group-info .icon img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.group-info .wp-block-columns .wp-block-column{
    width: 15% !important;
    flex-basis: 15% !important;
}
p.has-large-font-size{
    line-height: 1.15em;
}

.press-release {
    max-width: 1700px;
    margin: 0 auto;
}
.press-release h2{
    font-size: 1.6rem !important;
    line-height: 1.2em !important;
    font-weight: normal !important;
    
}
.press-release p{
    font-size: 1.1rem !important;
    line-height: 1.2em !important;
}
.press-release .slide{
    padding-left: 40px !important;
    padding-right: 40px !important;
}
.press-release{
    overflow: hidden;
}
.press-release.slider-wrapper.arrows .navigation.prev{
    left: 0;
    position: absolute;
    width: 50px;
    border-radius: 0;
    height: 100%;
}
.press-release.slider-wrapper.arrows .navigation.next{
    width: 50px;
    border-radius: 0;
    height: 100%;
    position: absolute;
    right: 0;
}
.press-release .slider{
    padding-left: 50px;
    padding-right: 50px;
}
.press-release.slider-wrapper.arrows .navigation.next::after{
    content: '\203A';
    display: block;
    font-size: 4rem !important;
    color: #00699f;
}
.press-release.slider-wrapper.arrows .navigation.prev::after{
    content: '\2039';
    display: block;
    font-size: 4rem !important;
    color: #00699f;
}
.press-release a h2{
    font-size: 1.36rem !important;
}
.press-release a h2,
.press-release a img
{
    transition: .3s;
}
.press-release a:hover h2{
    color: #3889b4 !important;
}
.press-release a:hover img{
    transform: translateY(-5px);
}
.press-release .wp-block-image{
    width: 150px;
    height: 100px;
    margin: 0 auto;
    display: block;
}
.press-release .wp-block-image img{
    height: 100%;
    width: 100%;
    object-position: center;
    object-fit: contain !important;
}

/* Product market value */
.page-template-template-productmarketvalue,
.page-template-template-productmarketvalue-email{
    background-color: #e7ecee;
}
.product-market-value{
    max-width: 960px;
    margin: 50px auto 100px auto;
}
.product-market-value p.has-medium-font-size {
    font-size: 1.6em !important;
    color: #00527D;
}
.product-market-value h1,
.report-wrapper h1
{
    font-weight: 500;
    text-align: center;
    margin-bottom: 70px;
    color: #00527D;
}
.report-wrapper h1{
    margin-bottom: 40px;
}
.product-market-value form{
    text-align: center;
    margin-top: 60px;
}
.product-market-value form .form-group{
    width: 100%;
    max-width: 480px;
    display: flex;
    align-items: center;
    margin: 20px auto;
}
.product-market-value form select{
    flex-grow: 1;
    background-color: #ffffff;
    font-size: 1.1em;
    padding: 15px;
    border: none;
    border-radius: 20px;
}
.product-market-value form input{
    padding: 10px;
    border: none;
}
.product-market-value form .form-group label{
    width: 170px;
    display: inline-block;
    text-align: right;
    padding-right: 20px;
    box-sizing: border-box;
    font-size: 1.2em;
}
.product-market-value form input[type="submit"]{
    padding: .95em 2.5em;
    background-color: #00527D;
    text-transform: uppercase;
    color: #ffffff;
    border: solid 1px #00527D;
    font-size: 1em;
    margin-top: 25px;
    border-radius: 35px;
    transition: .3s;
    cursor: pointer;
}
.product-market-value form input[type="submit"]:hover{
    background-color: transparent;
    color: #00527D;
}

.report-group div{
    display: inline-block;
    margin-bottom: 15px;
}

.report-group .language{
    display: block;
    margin-bottom: 0;
    margin-top: 5px;
}

.report-wrapper{
    max-width: 1300px;
    margin: 50px auto 100px auto;
    padding-left: 20px;
    padding-right: 20px;
}
.report-wrapper h2{
    font-weight: 500;
    margin-bottom: 20px;
    margin-top: 0;
    color: #00527D;
    text-align: center;
}
.language-wrapper{
    margin-top: 15px;
    display: flex !important;
    flex-flow: row wrap;
    align-items: flex-start;
    text-align: left;
    width: 100%;
}
.language-wrapper .language-list{
    flex-basis: 300px;
}
.language-wrapper .language-value{
    font-size: 1.4em;
    color: #00527D;
    display: inline-block;
    margin-left: .5em;
    margin-top: 0;
    margin-bottom: 10px;
}

.report-row{
    display: flex;
    flex-flow: row wrap;
}
.report-row .report-group{
    flex-basis: 25%;
    text-align: center;
}
.report-row .report-group div{
    font-size: 1.4em;
    color: #00527D;
}

.report-group.languages{
    max-width: 750px;
    margin: 0 auto; 
    text-align: left;
    margin-top: 60px;
}
.summary{
    max-width: 1000px;
    margin: 0 auto;
    padding: 40px;
    border-radius: 20px;
    background-color: #ffffff;
    box-sizing: border-box;
}

.buttons{
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
    justify-content: center;
    margin-top: 30px;
}
.buttons .button{
    padding: .95em 2.5em;
    background-color: #00527D;
    text-transform: uppercase;
    color: #ffffff;
    border: solid 1px #00527D;
    font-size: 1em;
    margin-top: 25px;
    border-radius: 35px;
    transition: .3s;
    cursor: pointer;
}
.buttons .button:hover{
    background-color: transparent;
    color: #00527D;
}
.sent-message{
    font-size: 1.6em;
    color: #00527D;
    max-width: 550px;
    margin: 0 auto;
    margin-top: 120px;
    text-align: center;
}

.header-tool {
    padding-top: 60px;
    padding-bottom: 60px;
    position: relative;
    overflow: hidden;
}
.header-tool .background{
    background-size: cover;
    background-position: center center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 1;
}
.header-tool h1{
    z-index: 2;
    position: relative;
    font-size: 2.5em;
    color: #ffffff;
}
#myChart{
   width: 450px !important;
   height: 300px !important;
   transform: translateY(-50px);
}

.product-market-value form .form-group input[type="text"],
.product-market-value form .form-group input[type="email"]
{
    flex-grow: 1;
    background-color: #ffffff;
    font-size: 1.1em;
    padding: 15px;
    border: none;
    border-radius: 20px;
}

.single-services .content p{
    text-align: justify;
}


/* promotion */
.postid-38674 .landing-page .sidebar .wpcf7 input[type="submit"],
.postid-38690 .landing-page .sidebar .wpcf7 input[type="submit"],
.postid-38687 .landing-page .sidebar .wpcf7 input[type="submit"],
.postid-38691 .landing-page .sidebar .wpcf7 input[type="submit"],
.postid-38692 .landing-page .sidebar .wpcf7 input[type="submit"]
{
	background: #E27C00;
	border: solid 2px #E27C00;
}
.postid-38674 .landing-page .sidebar .wpcf7 input[type="submit"]:hover,
.postid-38690 .landing-page .sidebar .wpcf7 input[type="submit"]:hover,
.postid-38687 .landing-page .sidebar .wpcf7 input[type="submit"]:hover,
.postid-38691 .landing-page .sidebar .wpcf7 input[type="submit"]:hover,
.postid-38692 .landing-page .sidebar .wpcf7 input[type="submit"]:hover
{
	background: transparent;
	color: #E27C00;
}
.postid-38674 .landing-page .sidebar .block .title-line, .landing-page .sidebar .block .text,
.postid-38690 .landing-page .sidebar .block .title-line, .landing-page .sidebar .block .text,
.postid-38687 .landing-page .sidebar .block .title-line, .landing-page .sidebar .block .text,
.postid-38691 .landing-page .sidebar .block .title-line, .landing-page .sidebar .block .text,
.postid-38692 .landing-page .sidebar .block .title-line, .landing-page .sidebar .block .text,
.postid-38674 .landing-page .sidebar a,
.postid-38690 .landing-page .sidebar a,
.postid-38687 .landing-page .sidebar a,
.postid-38691 .landing-page .sidebar a,
.postid-38692 .landing-page .sidebar a
{
	color: #E27C00;
}
.postid-38674 .landing-page .sidebar .block .title-line::after,
.postid-38690 .landing-page .sidebar .block .title-line::after,
.postid-38687 .landing-page .sidebar .block .title-line::after,
.postid-38691 .landing-page .sidebar .block .title-line::after,
.postid-38692 .landing-page .sidebar .block .title-line::after
{
    background: #E27C00;
}

.max-width-wide{
    max-width: 1850px;
    display: block;
    margin: 0 auto;
}
.max-width-narrow{
    max-width: 900px;
    display: block;
    margin: 0 auto;
}
.max-width-narrow .wp-block-embed__wrapper{
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
}
.max-width-narrow .wp-block-embed__wrapper iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

/* NEW HOME */
.home #header {
	background: transparent;
    height: 85px;
}

.home-intro{
    min-height: 100vh;
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    margin-top: -85px;
    color: #ffffff;
}
.home-intro h1{
    margin-top: 0;
    font-weight: normal;
    font-size: 2.8125rem;
    font-weight: 500;
}
.home-intro .background{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #000000;
}
.home-intro .background video{
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .5;
}
.home-intro .intro-content{
    max-width: 690px;
}
.home-intro .intro-content p{
    max-width: 77%;
}
.home-intro p.has-medium-font-size{
    font-size: 1.4rem !important;
    line-height: 1.6em;
}

.home h2{
    font-size: 2.2rem;
    line-height: 1em;
}
.home h2,
.home h1,
.home p.altfont,
.services-category .category p.title
{
    font-family: 'Gilroy';
}
.services-category .category p.title{
    font-size: 2.2rem;
}


.typewriter{
    overflow: hidden;
}
.typewriter h1 .animation{
    color: #fff;
    /* font-family: monospace; */
    overflow: hidden; /* Ensures the content is not revealed until the animation */
    white-space: nowrap; /* Keeps the content on a single line */
     /* Gives that scrolling effect as the typing happens */
    letter-spacing: 0; 
    border-right: solid 5px transparent;
    animation: typing 1s steps(10, end),
    blink-caret .5s step-end 1;
    animation-fill-mode: backwards;
    display: block;
}
.typewriter h1 .delay {
    animation: typing 1.5s steps(10, end),
    blink-caret .5s step-end 2;
    animation-delay: .5s;
    animation-fill-mode: backwards;
    display: block;
}

.typewriter .animation-subtitle,
.typewriter .wp-block-buttons {
	animation: apareixer 1s;
	animation-delay: 2s;
	animation-fill-mode: backwards;
}

@keyframes apareixer{
    0% { transform: translateY(300%); }
    100% { transform: translateY(0); }
}
  
/* The typing effect */
@keyframes typing {
    from { width: 0 }
    to { width: 100% }
}

/* The typewriter cursor effect */
@keyframes blink-caret {
    from, to { border-color: transparent }
    50% { border-color: white; }
}


.arrow-link{
    position: relative;
    padding-left: 35px;
    transition: .3s;
    font-weight: bold;
    font-size: 1.1rem;
    font-family: 'Gilroy';
}
.arrow-link::before{
    content: '';
    position: absolute;
    left: 0;
    background-image: url('https://www.cpsl.com/wp-content/uploads/2025/09/arrow-link.png');
    background-repeat: no-repeat;
    background-size: contain;
    width: 30px;
    height: 15px;
    top: 3px;
}
.color-blue .arrow-link::before{
    background-image: url('https://www.cpsl.com/wp-content/uploads/2025/09/arrow-link-blue.png');
}
.color-green .arrow-link::before{
    background-image: url('https://www.cpsl.com/wp-content/uploads/2025/09/arrow-link-green.png');
}
.color-orange .arrow-link::before{
    background-image: url('https://www.cpsl.com/wp-content/uploads/2025/09/arrow-link-orange.png');
}
.arrow-link:hover{
    padding-left: 40px;
}

.services-category .category.color-blue:hover .background{
    background-color: #00699F;
    opacity: 1;
}
.services-category .category.color-green:hover .background{
    background-color: #009F90;
    opacity: 1;
}
.services-category .category.color-red:hover .background{
    background-color: #db4f40;
    opacity: 1;
}
.services-category .category.color-orange:hover .background{
    background-color: #E27C00;
    opacity: 1;
}

.wp-block-buttons{
    gap: 20px;
}
.wp-block-button.main a{
    background-color: #009F90;
    border: solid 3px #009F90;
    padding: 15px 40px;
    transition: .3s;
	text-wrap: balance;
}
.wp-block-button.main a:hover{
    background-color: #ffffff;
    color: #009F90;
}
.wp-block-button.transparent a{
    background-color: transparent;
    border: solid 2px #ffffff;
    padding: 15px 40px;
    transition: .3s;
	text-wrap: nowrap;
}
.wp-block-button.transparent a:hover{
    background-color: #ffffff;
    color: #000000;
}
.wp-block-button.orange a{
    background-color: #E27C00;
    border: solid 3px #E27C00;
    padding: 15px 40px;
    transition: .3s;
}
.wp-block-button.orange a:hover{
    background-color: #ffffff;
    color: #E27C00;
}
.columnes-home{
    justify-content: center !important;
    gap: 160px !important;
}
.columnes-home .wp-block-column{
    flex-grow: 0 !important;
    flex-basis: auto !important;
}
.columnes-home .wp-block-column a{
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    gap: 25px;
}
.columnes-home .wp-block-column .wp-block-group__inner-container > p:first-of-type{
    margin: 0;
}
.columnes-home .wp-block-image img{
    max-height: 110px;
    max-width: 130px;
    width: auto;
    height: auto;
    transition: .3s;
}
.columnes-home a:hover .wp-block-image img{
   transform: scale(1.15);
}

.promotion-items{
    display: flex;
    flex-flow: row wrap;
    gap: 30px;
}
.promotion-items .promotion-item{
    flex-basis: calc(50% - 15px);
    display: flex;
    flex-flow: row wrap;
    gap: 30px;
}
.promotion-items .promotion-item > .promotion-thumbnail{
    flex-basis: calc(45% - 15px);
    width: calc(45% - 15px);
    overflow: hidden;
}
.promotion-items .promotion-item > .promotion-text{
    flex-basis: calc(55% - 15px);
    width: calc(55% - 15px);
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
}
.promotion-items .promotion-item > .promotion-text p.post-type{
    color: #db4f40;
    font-size: .9rem;
    margin: 0;
}
.promotion-items .promotion-item > .promotion-text h3{
    text-align: left;
    color: #000000;
    font-size: 1.1rem !important;
    flex-grow: 1;
    max-width: 270px;
}
.promotion-items .promotion-item > .promotion-text .arrow-link{
    color: #db4f40;
}
.promotion-items .promotion-item > .promotion-thumbnail img{
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: .3s;
}
.promotion-items .promotion-item:hover  > .promotion-thumbnail img{
    transform: scale(1.1);
}

.no-margin-top{
    margin-top: 0;
}

.social-home {
    position: absolute;
    left: 0;
    top: 60vh;
	display: flex;
	flex-flow: column wrap;
	justify-content: center;
	padding-left: 30px;
	box-sizing: border-box;
    z-index: 2;
}
.social-home a {
	margin-bottom: 10px;
	margin-top: 10px;
	transition: .8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.social-home a img {
	width: 20px;
	height: auto;
}

.service-header .cols{
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    width: 100%;
}
.service-header .cols .titles{
    width: calc(100% - 350px);
    padding-right: 50px;
    box-sizing: border-box;
    padding-bottom: 30px;
    z-index: 1;
}
.service-header .cols .titles h1{
    font-family: 'Archia';
    font-size: 2.8rem;
}
.service-header .cols .titles h2{
    font-family: 'Archia';
    font-size: 1.4rem;
    margin-top: 0;
}
.service-header .cols .sidebar{
    width: 350px;
    box-sizing: border-box;
}
.service-header .cols .sidebar img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.service-content{
    display: flex;
    max-width: 1300px;
    margin: 0 auto;
}
.service-content .content h3:first-of-type{
    margin-top: 0;
}
.service-content #shr_canvas2{
    display: none;
}
.service-page .sidebar .term-items-wrap{
    margin-top: 50px;
    margin-bottom: 40px;
}
.service-page .sidebar .link-arrowup{
    color: inherit !important;
    min-height: 0 !important;
    margin-bottom: 30px;
}
.service-page.color-red .sidebar .link-arrowup svg{
    fill: #db4f40 !important;
}
.service-page.color-blue .sidebar .link-arrowup svg{
    fill: #00699f !important;
}
.service-page.color-orange .sidebar .link-arrowup svg{
    fill: #e27c00 !important;
}
.service-page.color-green .sidebar .link-arrowup svg{
    fill: #1aa89b !important;
}
.service-page .sidebar .link-arrowup::after{
    content: '';
    margin-top: 25px;
    margin-bottom: 15px;
    height: 1px;
    width: 50px;
    display: block;
}
.service-page .sidebar .arrow-link{
    margin-bottom: 50px;
}
.service-page.color-red .sidebar .link-arrowup::after{
    background-color: #db4f40;
}
.service-page.color-orange .sidebar .link-arrowup::after{
    background-color: #e27c00;
}
.service-page.color-blue .sidebar .link-arrowup::after{
    background-color: #00699f;
}
.service-page.color-green .sidebar .link-arrowup::after{
    background-color: #1aa89b;
}

.casestudies-page .posts-wrap{
    margin-top: 60px !important;
    margin-bottom: 60px !important;
    max-width: 1500px;
    margin: 0 auto;
}


.contact-block{
    background-color: #f1f1f1;
    padding: 0px 50px 0 50px;
}
.icon-bar {
    display: flex;
    gap: 1rem;
    cursor: pointer;
    font-size: 1.5rem;
    margin-bottom: 0;
    background-color: #f1f1f1;
    padding: 50px 50px 0 50px;
}
.icon-bar svg {
    width: 32px;
    height: 32px;
    fill: #217cab;
    transition: fill 0.3s ease;
}

.icon-bar svg.active-icon {
    fill: #00699F;
}

.contact-block .email,
.contact-block .telefon {
    display: none;
    padding-top: 1rem;
}
.contact-block .item .title{
    color: #1a638a;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: bold;
}
.contact-block .item {
    padding-bottom: 0.5rem;
}

.active {
    display: block !important;
}