
.rem-<uniquifier> {
  font-family: "REM", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}



body {
    font-family: 'REM', sans-serif;
    margin: 0;
    padding: 0;
    background:#DAE8F5;
}



header {
    background: #2c3e50;
    color: #fff;
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

nav ul {
    list-style: none;
    display: flex;
    gap: 1.8rem;
}

nav ul li {
    display: inline;
}

nav ul li a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.logo img {
	max-width: 15rem; 
	
}
h2 {font-family: REM;
	font-weight:100;
	font-size:2.5rem;

}


.hero {
    text-align: center;
    padding: 2rem 1rem;
    background:#6185A4;
    color: #fff;
}

.cta-button {
    background: #e74c3c;
    color: white;
    padding: 1rem 2rem;
    text-decoration: none;
    display: inline-block;
    margin-top: 1rem;
    border-radius: 5px;
}

#services  {
/*
	margin-left:2rem;
	margin-right:1rem;
*/
	text-align:center;
}

.serv-text {
	max-width:60%;
	margin-left:auto;
	margin-right:auto;
}
.service-grid {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
    padding: 1rem;
}

.service-item {
    background: white;
    padding: 1rem;
    text-align: center;
/*    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    border-radius: 10px;*/
    max-width: 20%;
}

.service-item img {
    width: 100%;
    height: auto;
 /*   border-radius: 10px;*/
}

#case-studies  {

	width:100%;
	margin-bottom:2rem;
	text-align:center;
}

.case-studies {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	 gap: 2rem;
	
}

.case-study {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem;
    background: white;
  /*  margin: 1rem 0 1rem 0;*/
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
/*    border-radius: 10px;*/
    text-align: center;
	max-width:40%;
}

.case-study img {
    width: 100%;
    max-width: 35rem;
  /*  border-radius: 10px;*/
}

.sus-text h2, p {
	margin-left: 2rem;
	margin-right:2rem;
}

/*.sus-text p {
	margin-left: 2rem;
	margin-right:2rem;
}*/

#sustainability  {
	background-color:#7BC888;
	width:100%;
	padding:2rem;
	/*display: flex;*/
	
}

.sus-img {
/*	padding: 1rem;*/
	text-align: center;
	max-width:70%;
	margin-left:auto;
	margin-right:auto;
	margin-top:1rem;
}

.sus-img img {

	width:100%;
	height:auto;

}

.sus-logo {
	max-height:100%;
	margin-left:10%;
/*	display:block;*/
}

.sus-box {
	display:flex;
	margin-left:auto;
	margin-right:auto;
	max-width:80%;
}

.sus-text {
	text-align: left;
/*	display: flex;
	flex-direction: column*/
}
.sus-text h2 {
	margin-bottom:-0.5rem;
}

/* Diversity */

#diversity {
  	background-color: #EA8CF2;
  	padding: 2rem 1rem;
  	color: white;
  	overflow: hidden;
}

.div-box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 2rem;
  width:80%;
  margin-left:auto;
  margin-right:auto;
}
.div-logo {
	display:flex;
	align-items:center;
	justify-content:center;
	flex: 0 0 12rem;
}

.div-logo img {
  height:100%;
  width: auto;
  max-height:20rem;
  display: block;
}


.div-text {
  flex: 1 1 0;
  min-width: 15rem;
  padding: 0;
}

.div-text h2 {
  margin-top: 0; /* eliminates default spacing at top */
  margin-bottom: 0.5rem;
/*  font-size: 2rem;*/
  color: white;
}

.div-text p {
  margin: 0;
  line-height: 1.6;
  color: #000000;
  font-size: 1rem;
}



#testimonials {
	background-color:#1F3453;
	padding: 2rem; 
	color:white;
	
}

.test-head  {
	text-align:center;
	color:white;

	
}

/*
.testimonials p {
	
	margin-bottom:0.3;
	
}
*/

test-case {
	
}

.test-box-right {
	position: relative;
	background-color:#3B497A;
	type-align:left;
	padding: 2.5rem 2rem 2rem 2rem;
	margin-right: 10%;
	margin-left: 35%;
	margin-top: 2rem;
	margin-bottom: 2rem;
	width: 60%;	
	border-radius:2rem;	
}

.test-box-left {
	position: relative;
	background-color:#3B497A;
	type-align:left;
	padding: 2.5rem 2rem 2rem 2rem;
	margin-left:5%;
	margin-top: 2rem;
	margin-bottom: 2rem;
	width: 60%;
	border-radius:2rem;		
	
}

.test-hilite {
	font-weight:500;
	
}

.quotes-left {
	
	position:absolute;
	width:4rem;
	height:4rem;
	background:#455282;
	border-radius:50%;
	display:flex;
	justify-content:center;
	box-shadow: 0 2px 6px rgba(0,0,0,0.5);
	top:-1rem;
	left:-1rem;
}

.quotes-right {
	
	position:absolute;
	width:4rem;
	height:4rem;
	background:#455282;
	border-radius:50%;
	display:flex;
	justify-content:center;
	box-shadow: 0 2px 6px rgba(0,0,0,0.5);
	bottom:-1rem;
	right: -1rem;
}


.test-box-left p {
/*	padding-bottom: 0.3em;*/
	font-style:italic;
	font-weight:100;
	color:#A6DEFF;
	type-align:left;
}

.test-box-right p {
/*	padding-bottom:0.3em;*/
	font-style:italic;
	font-weight:100;
	color:#A6DEFF;
	type-align:left;
}

.client-box {
	display:flex;
}

.client-box img {
	width:40%;
	margin:auto;
}


.clients {
	font-style: normal;
	font-weight: 300;
	text-align:left;
}


  .social-media {
    text-align: center;
    margin-top: 30px;
  }

  .social-media h2 {
    font-size: 24px;
    margin-bottom: 15px;
  }

  .social-icons a {
    margin: 0 10px;
  }

  .social-icons img {
    transition: transform 0.3s ease;
	max-height: 6rem;
	max-width: 6rem;
  }

  .social-icons img:hover {
    transform: scale(1.1);
  }



#contact {
	margin-left:2rem;
	margin-right:2rem;
	padding:2rem;
		
}

#contact h2 {
	text-align: center;
	margin-left:auto;
	margin0right:auto;
}
#contact p {
	text-align: center;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:2rem;
}

#contact form {
	margin-left:2rem;
	margin-right:2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 400px;
    margin: auto;
    padding: 2rem;
    background: white;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    border-radius: 10px;
}

.contact {
	font-size: 1rem;
	font-weight:800;
    background: #e74c3c;
    color: white;
    padding: 0.8rem 2rem;
    text-decoration: none;
    display: inline-block;
    margin-top: 1rem;
    border-radius: 1rem;
}

footer {
    text-align: center;
    padding: 1rem;
    background: #2c3e50;
    color: #fff;
	width:100%;
}





/* Responsive Design */
@media (max-width: 768px), screen and (orientation: portrait) {
    header {
        flex-direction: column;
        text-align: center;
    }

    nav ul {
        flex-direction: column;
        padding: 0;
    }

    .service-grid {
        flex-direction: column;
        align-items: center;
    }
	
	.service-item {
    background: white;
    padding: 1rem;
    text-align: center;
	min-width: 90%; 
}
	
#case-studies  {
	margin-bottom: 2rem;
}
	
.case-study {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
	padding-top:1rem;
    padding-left: 1rem;
	padding-right: 1rem;
    background: white;
	margin: 0 0;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
/*    border-radius: 10px;*/
    text-align: center;
	min-width:90%;
}
	
#sustainability  {
	width:100%;
	padding:1rem;
	
}
	
.sus-logo {
	display:none;
}	
	
.sus-img {

	max-width:100%;
	padding:0;
	margin-left:0;
	margin-right:0;

}
	
	

.sus-text h2, p {
	text-align: center;
	margin-left:auto;
	margin-right:auto;
}
	
.sus-box {
	display:flex;
	margin-left:auto;
	margin-right:auto;
	type-align:center;
}
	
  .div-box {
    flex-direction: column;
    align-items: center;
  }

  .div-logo {
    flex: 0 0 auto;
    width: auto;
    margin-bottom: 1rem;
  }

  .div-logo img {
    height: auto;
    width: 40vw;
    max-width: 10rem;
  }

  .div-text {
    text-align: center;
  }
	

	
	#testimonials {
	background-color:#1F3453;
	padding-top: 1rem;
	padding-right:6rem;
	color:white;
	
}
	.test-box-right {
	position: relative;
	background-color:#3B497A;
	padding: 1rem;
	margin-right: 1rem;
	margin-left: 1rem;
	margin-top: 2rem;
	width: 100%
}


.test-box-left {
	position: relative;
	background-color:#3B497A;
	padding: 1rem;
	margin-left:1rem;
	margin-right:1rem;
	margin-top: 2rem;
	width: 100%
	
}

	
.client-box {
	display:block;
}

.client-box img {
	width:90%;
	margin:auto;
	padding-top:1rem;
}

	form {
		width:80%;
		margin-left: auto;
		margin-right: auto;
	
	
	}	
	
	
	
	
	
}