*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

img {
	width: 100%;
}

body {
	font-weight: 400;
	font-family: 'Raleway', sans-serif;
	font-size: 18px;
	background-color: whitesmoke;
	overflow-x: hidden;
	line-height: 25px;
}

/* HOME PAGE*/

/* header ***************/

#preloader{
	background: white url(../images/loader.gif) no-repeat center center;
	background-size: 50%;
	height: 100vh;
	width: 100%;
	position: fixed;
	z-index: 100;
}

html,body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

.header {
	position: sticky;
	top: 0;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;

	display: flex;
	background-color: white;
	box-shadow: 0px 2px 4px #b3b3b3;
	
	position: fixed;
	z-index: 45;
	width: 100%;
	justify-content: center;
}

.header-logo {	
	width: 200px;
	margin-top: 30px;
	margin-bottom: 30px;
}

.navbar {
	display: flex;
	justify-content: space-between;
 	align-items: center;
	width: 100%;
	margin-left: 40px;
	margin-right: 40px;
}

.nav-main {
	display: flex;
	flex-direction: row;
	color: white;
}

.menu {
	display: flex;
	flex-direction: row;
	color: white;
}

.nav-main li, .menu li {
	list-style: none;
}

.menu-1 a {
	background-color: #2a2a2a;
	border-radius: 30px;
	margin-right: 30px;
}

.menu-2 a {
	background-color: #052a64;
	border-radius: 30px;
	margin-right: 30px;
}

.menu-3 a {
	background-color: #880909;
	border-radius: 30px;
}

.nav-main li a, .menu li a {
	color: white;
	display: block;
	text-decoration: none;
	padding: 0.5em 1em;
	font-size: 1rem;
	font-family: Raleway;
	font-size: 18px;
}

.nav-main > li:hover > a { 
	 cursor: pointer;
	 transform:  scale(1.1);
	 transition: 0.3s;
}

.menu > li:hover > a { 
	 cursor: pointer;
	 transform:  scale(1.1);
	 transition: 0.3s;
}

.main-menu {
	margin-top:13%;
	display: flex;
	justify-content: space-between;
}

.menu-about {
	background-color: #062a64;
	border-radius: 0px 30px 30px 0px;
	padding: 30px;
	color: white;
	width: 100%;
	margin-right: 70px;
	display: flex;
	justify-content: space-between;
}

.menu-about img {
	width: 380px;
	border-radius: 23px;
}

.menu-about-text {
	margin-left: 10px;
	font-size: 48px;
	font-weight: 600;
	align-self: flex-end;
}

.menu-about p {
	margin-bottom: 25px;
}

.menu-services {
	background-color: #890a09;
	border-radius: 30px 0px 0px 30px;
	padding: 30px;
	color: white;
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.menu-services img {
	width: 380px;
	border-radius: 23px;
}

.menu-services-text {
	margin-right: 10px;
	font-size: 48px;
	font-weight: 600;
	align-self: flex-end;
}

.menu-services p {
	margin-bottom: 25px;
}

.button-1 {
  background-color: white;
  border-radius: 30px;
  border-style: none;
  box-sizing: border-box;
  color: #062a64;
  cursor: pointer;
  font-family: 'Raleway', sans-serif;
  font-size: 18px;
  font-weight: 300;
  height: 40px;
  width: 70%;
  line-height: 20px;
  list-style: none;
  margin: 0;
  outline: none;
  padding: 10px 16px;
  text-align: center;
  text-decoration: none;
  transition: color 100ms;
  vertical-align: baseline;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  transition: 0.3s;
}

.button-1:hover {
	 cursor: pointer;
	 transform:  scale(1.1);
}

.button-2 {
  background-color: white;
  border-radius: 30px;
  border-style: none;
  box-sizing: border-box;
  color: #890a09;
  cursor: pointer;
  font-family: 'Raleway', sans-serif;
  font-size: 18px;
  font-weight: 300;
  height: 40px;
  width: 70%;
  line-height: 20px;
  list-style: none;
  margin: 0;
  outline: none;
  padding: 10px 16px;
  text-align: center;
  text-decoration: none;
  transition: color 100ms;
  vertical-align: baseline;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  transition: 0.3s;
}

.button-2:hover {
	 cursor: pointer;
	 transform:  scale(1.1);
}


/**footer****/

.footer {
	margin-top:5%;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;

	display: flex;
	background-color: white;
	box-shadow: 0px -2px 4px #b3b3b3;
	
	width: 100%;
	justify-content: center;
}

.footer-text {
	display: flex;
	justify-content: space-between;
 	align-items: center;
	width: 100%;
	margin-top: 40px;
	margin-bottom: 40px;
	margin-left: 40px;
	margin-right: 40px;
	color: #8b0908;
	font-size: 12px;
	line-height: 18px;
}

.footer-left {
	margin-right: 150px;
	font-weight: 300;
}

.footer-right {
	display: flex;
}

.footer-right-columns img {
	width: 12px;
	margin-right: 3px;
}

.footer-left strong, .footer-right-columns strong {
	font-size: 13px;
}

.footer-right-columns:not(:last-child) {
	margin-right: 30px;
}

.contact-info-email, .contact-info-phone {
	display: flex;
	align-items: center;
	font-weight: 300;
}

/**about-us***/

.story-body {
	width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.about {
	margin-top:13%;
	justify-content: space-between;
}

.about-us-title {
	background-color: #062a64;
	border-radius: 0px 30px 30px 0px;
	padding: 40px;
	color: white;
	width: 420px;
	margin-right: 70px;
	display: flex;
	justify-content: flex-end;
	font-weight: 600;
	font-size: 35px;
	margin-bottom: 50px;
}

.founder{
	display:flex;
	justify-content: space-between;
	margin-left:auto;
	margin-right: auto;
	width: 650px;
	margin-bottom: 50px;
}

.story-images img {
	width:300px;
	border-radius:50%;
	animation: fade-in linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 500px;
}

@keyframes fade-in {
	from {scale: .8; opacity: 0;}
	to {scale: 1; opacity: 1;}
}

.red-title{
	text-align: center;
	color: #890a09;
	margin-right: auto;
	margin-left: auto;
	margin-top: 100px;
	margin-bottom: 50px;
	font-weight: 600;
	font-size: 45px;
	animation: fade-in linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 400px;
}

.red-title-2{
	text-align: center;
	color: #890a09;
	margin-right: auto;
	margin-left: auto;
	margin-top: 80px;
	margin-bottom: 40px;
	font-weight: 600;
	font-size: 25px;
}

.red-text{
	background-color: #890a09;
	padding: 45px;
	color: white;
	display: flex;
	margin-right: auto;
	margin-left: auto;
 	box-shadow: 0 0 0 100vmax #890a09;
	clip-path: inset(0px -100vmax 0px -50px round 30px); 
	margin-bottom:30px;
	animation: slide-in linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 250px;
}

.box-text {
	width: 800px;
	text-align: left;
	display: flex;
	flex-direction: column;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;
	line-height: 20px;
}

.red-text span, .blue-text span {
	font-size: 25px;
	font-weight: 600;
}

.mission br, .values br {
	content: "";
 	margin: 3em;
 	display: block;
 	font-size: 24%;
}

.blue-text {
	background-color: #062a64;
	padding: 45px;
	color: white;
	display: flex;
	margin-right: auto;
	margin-left: auto;
 	box-shadow: 0 0 0 100vmax #062a64;
	clip-path: inset(0px -50px 0px -100vmax round 30px); 
	animation: slide-out linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 250px;
}

@keyframes slide-out {
	from {
		margin-right: 0%;
   		width: auto;}
	to {
	    margin-right: 20%;
		clip-path: inset(0px -50px 0px -100vmax round 30px); 
    }
}



@keyframes slide-in {
	from {
		margin-left: 100%;
   		width: auto;}
	to {
	    margin-left: 20%;
    	clip-path: inset(0px -100vmax 0px -50px round 30px); 
    }
}

.box-text-2 {
	width: 800px;
	text-align: left;
	display: flex;
	flex-direction: column;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;
	line-height: 20px;
}

.mission, .values {
	display: flex;
	flex-direction: column;
}

.accred-logo {
	display: flex;
	width: 850px;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
}

.accred-logo img {
	width:150px;
	animation: fade-in linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 300px;
}


/**services****/

.services-title {
	background-color: #062a64;
	border-radius: 0px 30px 30px 0px;
	padding: 40px;
	color: white;
	width: 350px;
	margin-right: 70px;
	display: flex;
	justify-content: flex-end;
	font-weight: 600;
	font-size: 35px;
	margin-bottom: 50px;
}

.red-box {
	background-color: #880909;
	border-radius: 30px;
	width: 600px;
	display: flex;
	flex-direction: column;
	color: white;
	padding: 40px;
	animation: fade-in linear;
	animation-timeline: view();
	animation-range-start: cover;
	animation-range-end: 400px;
}

.services-list {
	display: flex;
}

.red-box img {
	width: 70px;
}

.red-box p{
	font-size: 16px;
	line-height: 20px;
	margin-top: 20px;
	font-weight: 300;
}

.red-box span{
	font-size: 20px;
	font-weight: 700;
	align-self: center;
	margin-left: 15px;
}

.red-box-column {
	width: 1250px;
	display: flex;
	justify-content: space-between;
	margin-right: auto;
	margin-left: auto;
	margin-top: 40px;
}

#button-columns {
 	display: flex;
 	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	flex: 1;
	margin-top: 20px;
}

#button-columns-2 {
 	display: flex;
 	flex-direction:column;
	justify-content: space-between;
	flex: 1;
	align-items:center;
	margin-top: 20px;
}

.button-set {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.button-item {
 	background-color: white;
 	border-radius: 30px;
 	border-style: none;
 	box-sizing: border-box;
 	color: #062a64;
 	cursor: pointer;
 	font-family: 'Raleway', sans-serif;
 	font-size: 16px;
 	font-weight: 600;
 	height: 40px;
 	width: 250px;
 	line-height: 20px;
 	list-style: none;
 	outline: none;
 	padding: 10px 16px;
 	text-align: center;
 	text-decoration: none;
 	transition: color 100ms;
 	vertical-align: baseline;
	user-select: none;
 	-webkit-user-select: none;
 	touch-action: manipulation;
 	transition: 0.3s;
}

.button-item:hover {
	 cursor: pointer;
	 transform:  scale(1.1);
}

.button-set br {
	content: "";
 	margin: 1.5em;
 	display: block;
 	font-size: 24%;
}

@media (max-width: 800px){
	.header {
		position: relative;
	}

	.navbar {
		flex-direction:column;
	}

	.menu, .nav-main {
		margin-bottom: 20px;
	}

	.nav-main li a, .menu li a {
		font-size: 15px;
	}

	.main-menu {
		flex-direction:column;
	}

	.menu-about {
		margin-top: 1vh;	
		flex-direction:column;
		width: 90%;
		margin-right: 0px;
	}

	.menu-about-text {
		margin-left: 0px;
		margin-bottom: 50px;
		margin-top: 30px;
		align-self: flex-start;
	}

	.menu-about img {
		width: 100%;
		border-radius: 23px;
	}

	.menu-services{
		flex-direction:column;
		margin-top: 50px;
		margin-bottom: 50px;
		margin-left: 10%;
	}

	.menu-services img {
		width: 85%;
		border-radius: 23px;
	}

	.menu-services-text {
		margin-right: 0px;
		align-self: flex-start;
		margin-bottom: 20px;
		margin-top: 50px;
	}
	
	.footer-text {
		flex-direction: column;
	}

	.footer-right {
		margin-left: 30px;
		margin-right :30px;
	}


	.footer-text {
		display: flex;
		text-align: center;
		justify-content: center;
	 	align-items: center;
		width: 80%;
		margin-top: 40px;
		margin-bottom: 40px;
		margin-left: 0px;
		margin-right: 0px;
	}

	.footer-left {
		margin-right: 0px;
		width: 80%;
		justify-content: center;
		margin-bottom: 30px;
	}

	.footer-right {
		display: flex;
		justify-content: center;
		flex-direction: column;
		text-align: center;
	}

	.contact-info-email, .contact-info-phone {
		display: flex;
		justify-content: center;
		text-align: center;
	}

	.footer-right-columns:not(:last-child) {
		margin-bottom: 30px;
		margin-right: 0px;
	}

	.story-body {
		width: 300px;
		justify-content: space-between;
	}

	.about {
		margin-top:8vh;
	}

	.about-us-title {
		width: 350px;
		font-weight: 600;
		font-size: 25px;
		padding: 30px;
	}

	.founder{
		width: 400px;
		display:flex;
		margin-bottom: 0px;
		justify-content: space-between;
	}

	.story-images img {
		width:180px;
		align-self: center;
		margin-left:auto;
		margin-right: auto;
		border-radius:50%;
		margin-bottom: 50px;
	}

	.red-title{
		font-size: 35px;
	}

	.red-title-2{
		font-size: 25px;
	}

	.red-text{
		clip-path: inset(0px -100vmax 0px 10px round 30px); 
	}

	@keyframes slide-in {
	from {
		margin-left: 100%;
   		width: 300%;}
	to {
	    margin-left: 20%;
		clip-path: inset(0px -100vmax 0px 10px round 30px); 
    }
	}

	@keyframes slide-out {
	from {
		margin-right: 0%;
   		width: auto;}
	to {
	    margin-right: 10%;
		width: auto;
    }
	}	


	.box-text {
		width: 280px;
		font-size: 16px;
	}

	.blue-text {
		clip-path: inset(0px 10px 0px -100vmax round 30px); 
	}

	.box-text-2 {
		width: 280px;
		font-size: 16px;
	}	

	.accred-logo {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	.accred-logo img {
		width:150px;
		margin-bottom: 40px;
		margin-left: auto;
		margin-right: auto;
		align-content: center;
	}

	.services-title {
		width: 300px;
		font-weight: 600;
		font-size: 25px;
		padding: 30px;
	}

	.red-box-column {
		width: 350px;
		display: flex;
		flex-direction: column;
		margin-right: auto;
		margin-left: auto;
		margin-top: 0px;
	}

	.red-box {
		width: 350px;
		margin-bottom: 40px;
	}


	#button-columns {
	 	flex-direction: column;
		margin-top: 20px;
	}

	.button-set {
		margin-top: 20px;
	}

}
