body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    width: 100%;
    font-family: Figtree, Arial, sans-serif;
}

header{
	background: linear-gradient(90deg, #0E2168, #1E3898);
    margin-bottom: 30px;
}

header, main, footer {
    display: flex;
    flex-direction: column;
}

section h2 {
    margin: 20px 0;
}

main section {
    padding: 20px 0;
}

nav {
    padding: 20px 0;
}

h1 {
    font-size: 52px;
    font-weight: 600;
    color: white;
}

h2 {
    font-size: 50px;
    color: #455064;
    font-weight: 600;
    text-align: center;
    line-height: 1.2;
    margin: 0;
    padding: 0;
}

h3 {
    font-size: 30px;
    color: #455064;
    font-weight: 300;
    text-align: center;
    margin: 10px 0;
    padding: 0;
}

h4 {
    font-size: 20px;
    color: #455064;
    font-weight: 300;
    text-align: center;
    margin: 0;
    padding: 0;
}

p {
    font-size: 18px;
    color: black;
    font-weight: 300;
    line-height: 1.4;
}

.nav-wrap, .footer-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 50px;
}

.hero-wrap {
    max-width: 1250px;
    margin: 0 auto;
    padding: 0 50px;
}

.section-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 50px;
}

#testimonials .section-wrap {
    padding: 0 20px;
}

#hero-main p {
    font-size: 22px;
    color: white;
    font-weight: 300;
    line-height: 1.4;
    margin-bottom: 40px;
}

#hero-main {
    position: relative;
}

#hero-map {
    position: absolute;
    right: 0;
    max-width: 600px;
    top: 0;
}

#logo {
    display: inline-block;
}

#logos {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #C5C7D0;
    margin-bottom: 60px;
}

#logos-title {
    font-size: 18px;
    margin-bottom: 30px;
}

#logos-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
}

#logos-container img {
    max-height: 25px;
    padding: 5px 20px;
}

.btn-orange {
    background-color: #FC5A43;
    padding: 10px 30px;
    text-decoration: none;
    border-radius: 10px;
    font-family: Figtree, Arial, sans-serif;
    font-weight: 600;
    font-size: 20px;
    display: inline-block;
    color: white;
}

.btn-orange:hover {
	color: white;
    background-color: #fc3a20;
}


#hero-main {
    position: relative;
    margin-top: 60px;
    margin-bottom: 60px;
}

#intro-main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
}

#features-main,
#process-main,
#testimonials-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 50px;
}

.features-col,
.process-col,
.testimonials-col {
    width: 30%;
}

#intro-main>div {
    width: 45%;
}

.features-col-top span {
    font-size: 22px;
    color: #455064;
    font-weight: 400;
}


.features-col-top {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.features-col-top img {
    margin-right: 15px;
}

.features-col-bottom span {
    color: #1C348F;
    font-weight: 400;
}

.process-num {
    font-size: 70px;
    color: #1C348F;
    font-weight: 600;
    margin-right: 20px;
}

.process-col-top {
    display: flex;
    align-items: center;
}

.testimonials-photo img {
    max-width: 90px;
}

.features-col-bottom {
    min-height: 110px;
}

.process-txt {
    font-size: 22px;
    color: #455064;
    font-weight: 400;
}

.testimonials-col {
    border: 1px solid #EFF0F2;
    background: #F3F4F8;
    box-shadow: 4px 4px 9px 2px #00000012;
    padding: 25px 25px 10px 25px;
    width: 25%;
    display: flex;
    flex-direction: column;
}

#testimonials-main {
	align-items: stretch;
}

.testimonials-name {
    font-weight: 700;
    margin-bottom: 5px;
}

.testimonials-position {
    font-size: 13px;
}

.testimonials-contacts {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.testimonials-txt {
    min-height: 250px;
}

.testimonials-company img {
    height: 30px;
}

.testimonials-company {
    margin-top: 10px;
}

#cta {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 100px;
}

footer {
    background: linear-gradient(180deg, #1d4ecc, #16378b);
    padding: 70px 0;
}

#footer-copyright {
    color: white;
    font-weight: 400;
}

#footer-top {
    display: flex;
    margin-bottom: 60px;
    justify-content: space-between;
}

#footer-top>section {
    width: 42%;
}

footer h4 {
    color: white;
    font-weight: 600;
    text-align: left;
    margin-bottom: 10px;
}

#footer-about p {
    color: white;
}

#footer-links a {
    color: white;
    text-decoration: none;
    font-size: 15px;
}

#footer-links ul {
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
}

#footer-links li {
    list-style: none;
    width: 50%;
    margin-bottom: 10px;
}

#features {
    padding-bottom: 0;
}

#cta .btn-orange {
    padding: 14px 55px;
    margin-top: 25px;
}

.testimonials-info {
    max-width: 175px;
}

.testimonials-photo {
    margin-top: 30px;
}

.process-col-bottom p {
    margin-top: 5px;
}



/*  Mobile  optimisation */

@media (max-width: 1100px) {
    
.testimonials-info {
    max-width: 130px;
}

}

@media (max-width: 1050px) {

#logos-container {
    justify-content: center;
}

}

@media (max-width: 950px) {


h1 {
    font-size: 40px;
}

h2 {
    font-size: 30px;
}

h3 {
    font-size: 24px;
}

h4 {
    font-size: 18px;
}

p {
    font-size: 16px;
}

#intro-main, #features-main, #process-main, #testimonials-main  {
    flex-direction: column;
}

#intro-main>div {
    width: 100%;
}

#testimonials-main {
    align-items: center;
}

.testimonials-col {
    margin: 20px 0;
}

.testimonials-txt {
    min-height: auto;
}

#hero-main {
    width: 100%;
    margin: 0 auto 50px;
}

.features-col, .process-col, .testimonials-col {
    width: 100%;
    max-width: 500px;
} 

#hero-main, .nav-wrap, .footer-wrap, .intro-col {
    max-width: 800px;
}

#hero-map {
    display: none;
}

#logos {
    margin-bottom: 20px;
}

#cta {
    margin-top: 30px;
}

#footer-top {
    flex-direction: column;
}

#footer-top>section {
    width: 100%;
}

#hero-main p {
    font-size: 18px;
}

}



@media (max-width: 650px) {

h1 {
    font-size: 30px;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 18px;
}

h4 {
    font-size: 16px;
}

.testimonials-col {
    max-width: 350px;
}

.btn-wrap, h1, #hero-main p {
    text-align: center;
}

.process-num {
    font-size: 50px;
}

.nav-wrap, .footer-wrap, .hero-wrap, .section-wrap {
    padding: 0 20px;
}



}