@charset "utf-8";
/* CSS Document */
html, h1, h2, h3, h4, h5, h6, p, ol, ul, li, pre, code, address, variable, form, fieldset, blockquote {
 padding: 0;
 margin: 0;
 font-size: 100%;
 font-weight: normal;
}
table { border-collapse: collapse; border-spacing: 0; }
td, th, caption { font-weight: normal; text-align: left; }
img, fieldset { border: 0; }
ol { padding-left: 1.4em; list-style: decimal; }
ul { padding-left: 1.4em; list-style:square; }
q:before, q:after { content:''; }
body { 
	margin: 0px 0px 0px 0px;
	background-color:#ffffff;
	min-width:320px;
	}
/* CSS Reset Finished */

#menubox {
	width:100%;
	height:100%;
	position:fixed;
	overflow: auto;
	top:0px;
	left:0px;
	z-index:2072;
	vertical-align:middle;
	background-color: #004799; 
	/*visibility:hidden;*/
	display: none;
	text-align:center;
	opacity: 0; /* Add this line to set initial opacity to 0 */
  	transition: opacity 0.01s ease, height 0.01s ease; /* Add a transition effect for smoother fading */
	}


	.button1 {
		border: none;
		text-align: center;
		text-decoration: none;
		display: inline-block;
		font-size: 20px;
		font-family: 'Open Sans', sans-serif;
		width: 100%;
		padding: 10px;
		color: #FFFFFF;
		background-color: #004799; 
	}
	
	.button1:hover {
		color: #004799;
		background-color: #FFFFFF; 
		}
		
	.button1:active {
		background-color: #004799;
		color: #FFFFFF;
	}


	.button_white {
		border: none;
		text-align: center;
		text-decoration: none;
		display: inline-block;
		font-size: 20px;
		font-family: 'Open Sans', sans-serif;
		font-weight: bold;
		padding-left: 10px;
		padding-bottom: 7px;
		padding-right: 10px;
		padding-top: 7px;
		color: #FFFFFF;
		border: #FFFFFF 2px solid;
		margin-right: 5px;
		border-radius: 10px;
	}
	
	.button_white:hover {
		color: #c3c8d6;
		border: #c3c8d6 2px solid;
		margin-right: 5px;
		border-radius: 10px;
		}
		
	.button_white:active {
		color: #FFFFFF;
		margin-right: 5px;
		border-radius: 10px;
	}

	.logo_header {
		width:100%;
		min-height:98px;
		text-align:left;
		background-color: #004799;
		overflow:visible;
	}

	.logo_navi_container {
		max-width: 1650px;
		min-height: 98px;
		margin: 0 auto;
	} 


	.top_flex_container {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: space-between;
		align-items: stretch;
		align-content: center;
		padding-top: 0px;
	  }

	  .top_flex_container a:active {
		background-color: transparent;
		background-image: none;
	  }

	  .tfitem1 {
		flex: 0 0 auto;
		margin: 0px;
		align-self: center;
	  }

	  .tfitem2 {
		flex: 0 0 auto;
		margin: 0px;
		align-self: center;
	  }

	  .tfitem3 {
		flex: 0 0 auto;
		margin: 0px;
		align-self: center;
		display: none;
	  }

	  .tfitem4 {
		flex: 0 0 auto;
		margin: 0px;
		align-self: center;
	  }


	.snavi a:link {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
		padding-right:30px;
	}
	
	.snavi a:visited {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
		padding-right:30px;
	}
	
	.snavi a:active {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
		padding-right:30px;
		background-color: transparent;
		background-image: none;
	}
	
	.snavi a:hover {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #c3c8d6;
		text-decoration: underline;
		padding-right:30px; }
	
	
	.snavi2 a:link {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
	}
	
	.snavi2 a:visited {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
	}
	.snavi2 a:active {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #ffffff;
		text-decoration: none;
		background-color: transparent;
		background-image: none;
	}
	.snavi2 a:hover {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #c3c8d6;
		text-decoration: underline;
	}
	
.main_img {
	width: 100%;
	max-height: 525px;
	background-color: #004799;
	text-align: center;
}

.mainimgsize {
	width: 100%;
	max-width: 1650px;
	max-height: auto;
}

.mainimgsize2 {
	width: 100%;
	max-width: 1650px;
	max-height: auto;
	display: none;
}

.h1title {
	width: 100%;
	min-height: 64px;
	background-color: #004799;
	border-bottom: #e3000f 4px solid;
}

.h1title_inner {
	max-width: 1650px;
	min-height: 64px;
	margin: 0 auto;
	background-image: url(gfx/h1_bg.png);
	background-position: right;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

h1 {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight:500;
	color: #ffffff;
	padding: 1%;
}

.hpservgrid {
	max-width: 1650px;
	height: auto;
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.hpservgrid div {
	border: #004799 2px solid;
	background-image: url(gfx/hpserv_bg.png);
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: cover;
}

.hpservgridimg {
	width: 100%;
	height: auto;
}

.hpservgrid h2 {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	font-weight:500;
	color: #ffffff;
	padding: 15px;
}

.hpservgrid a {
	color: #ffffff;
	text-decoration: none;
}

.lightblue {
	width: 100%;
	height: auto;
	background: #C4D5E7;
	background: linear-gradient(180deg,rgba(196, 213, 231, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.lightblueinner {
	max-width: 1650px;
	height: auto;
	margin: 0 auto;
	padding-bottom: 30px;
	padding-top: 30px;
}

.lightblueinner p {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:400;
		color: #004799;
		line-height: 150%;
		text-align: justify;
}

h3 {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:600;
		color: #004799;
		margin-top: 10px;
		margin-bottom: 10px;
}

.hpaboutimg {
	width: 40%;
	height: auto;
	float: right;
	margin-bottom: 50px;
	margin-left: 50px;
	border: #004799 2px solid;
	display: block;
	overflow: auto;
}

.footerinfo {
	width: 100%;
	height: auto;
	background-color: #004799;
	padding-bottom: 20px;
	padding-top: 20px;
}

.footerinfoinner {
	max-width: 1650px;
	height: auto;
	background-color: #004799;
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.footerinfo2 {
	width: 100%;
	height: auto;
	background-color: #004799;
	padding-bottom: 10px;
	padding-top: 10px;
	border-top: #80a3cc 1px solid;
}

.footerinfoinnercopyr {
	max-width: 1650px;
	height: auto;
	margin: 0 auto;
}

.footerinfoinner h2 {
		font-family: 'Open Sans', sans-serif;
		font-size: 25px;
		font-weight:500;
		color: #FFFFFF;
}

.footerinfoinner p {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:500;
		color: #FFFFFF;
		line-height: 150%;
		text-align: left;
}

.footerinfoinner a {
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  font-weight: 500;
  color: #FFFFFF;
  line-height: 150%;
  text-align: left;
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
  word-break: break-all;
}

.footerinfoinner a:hover {
  color: #c3c8d6;
  text-decoration: underline;
}

.sociallink {
	padding: 5px;
}


.footerinfoinnercopyr p {
		font-family: 'Open Sans', sans-serif;
		font-size: 16px;
		font-weight:500;
		color: #FFFFFF;
		line-height: 150%;
		text-align: left;
		padding-bottom: 5px;
		padding-top: 5px;
}

.footerinfoinnercopyr a {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #FFFFFF;
  line-height: 150%;
  text-align: left;
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

.footerinfoinnercopyr a:hover {
  color: #c3c8d6;
  text-decoration: underline;
}

.blank {
	width: 100%;
	height: 5px;
	display: block;
}

.whychooseus {
	max-width: 1650px;
	height: auto;
	margin: 0 auto;
}

.whychooseus_inner {
	max-width: 1650px;
	height: auto;
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

ul.ticklist {
  list-style-image: url('gfx/li_icon_tick.png');
  list-style-type: square;
  list-style-position: inside;
  padding-right: 20px;
}

ul.ticklist li {
font-family: 'Open Sans', sans-serif;
font-size: 20px;
font-weight:400;
color: #004799;
margin: 10px;
}

.whychooseus p {
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	font-weight:400;
	color: #004799;
	line-height: 150%;
}

.whychooseus a {
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #004799;
  line-height: 150%;
  text-align: left;
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

.whychooseus a:hover {
  color: #e3000f;
  text-decoration: underline;
}

.button_blue {
	border: none;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	font-weight: bold;
	padding-left: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
	padding-top: 10px;
	color: #004799;
	border: #004799 3px solid;
	margin-right: 5px;
	border-radius: 10px;
}

.button_blue:hover {
	color: #e3000f;
	border: #004799 3px solid;
	margin-right: 5px;
	border-radius: 10px;
	}
	
.button_blue:active {
	color: #004799;
	margin-right: 5px;
	border-radius: 10px;
}

.lightblueinner a {
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #004799;
  line-height: 150%;
  text-align: left;
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

.lightblueinner a:hover {
  color: #e3000f;
  text-decoration: underline;
}

.serviceops {
	/*max-width: 1650px;
	height: auto;*/
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.serviceops div {
	border: #004799 2px solid;
	/*background-image: url(gfx/servp_servops_bg.png);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: contain;*/
}

.serviceops h1 {
	background-image: url(gfx/servp_servops_bg.png);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: 15px;
	padding-left: 20px;
}

.serviceops p {
	margin: 20px;
}

.smallservp {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight:400;
	color: #004799;
	line-height: 150%;
	text-align: left;
	margin-bottom: 20px;
	margin-left: 20px;
	margin-right: 20px;
	display: block;
}


.typicalserv {
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
}


.button_red {
	border: none;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	font-weight: bold;
	padding-left: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
	padding-top: 10px;
	color: #e3000f !important;
	border: #004799 3px solid;
	margin-right: 5px;
	border-radius: 10px;
}

.button_red:hover {
	color: #004799;
	border: #e3000f 3px solid;
	margin-right: 5px;
	border-radius: 10px;
	}
	
.button_red:active {
	color: #e3000f;
	margin-right: 5px;
	border-radius: 10px;
}

.typicalserv p {
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #004799;
  line-height: 150%;
  text-align: left;
}

.carrep {
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(4, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.carrep div {
	border: #004799 2px solid;
}

.carrep h1 {
	background-image: url(gfx/servp_servops_bg.png);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: 15px;
	padding-left: 20px;
}

.carrep p {
	margin: 20px;
	text-align: left;
}


.bwimggrid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
}

.bodyworkimg {
	width: 100%;
	height: auto;
	border: #004799 3px solid;
}


.contactmain {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
}

.contactmain h2 {
		font-family: 'Open Sans', sans-serif;
		font-size: 24px;
		font-weight:600;
		color: #004799;
		margin-top: 10px;
		margin-bottom: 5px;
}

.contactmain a {
	word-break: break-all;
}

.contactform {
	width: 100%;
	height: auto;
	background-color: #004799;
	padding-bottom: 20px;
	padding-top: 20px;
	border-bottom: #b3c8e1 1px solid;
}

.contactforminner {
	max-width: 1650px;
	height: auto;
	background-color: #004799;
	margin: 0 auto;
}

.contactforminner p {
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	font-weight:500;
	color: #FFFFFF;
	line-height: 130%;
}

.contactforminner h3 {
		font-family: 'Open Sans', sans-serif;
		font-size: 20px;
		font-weight:600;
		color: #FFFFFF;
		margin-top: 10px;
		margin-bottom: 30px;
}

.formtext {
	width: 100%;
	box-sizing: border-box;
	border: 2px solid #004799;
	font-size: 18px;
	background-color: #b3c8e1;
	padding: 12px 20px 12px 40px;
    font-family: 'Open Sans', sans-serif;
    font-size: 20px;
    font-weight: 500;
	color: #004799;
	margin-top: 10px;
	margin-bottom: 10px;
  }

.formtext2 {
    width: 100%;
    background-color: #004799;
    border: 2px solid #b3c8e1; 
    padding: 10px 62px;
    text-decoration: none;
    margin: 4px 2px;
    cursor: pointer;
    box-sizing: border-box;
	padding: 12px 20px 12px 40px;
    font-family: 'Open Sans', sans-serif;
    font-size: 20px;
    color: #FFFFFF;
    }

.formtext6 {
font-family: 'Open Sans', sans-serif;
font-size: 20px;
font-weight: 500;
color: #FFFFFF;
margin-top: 10px;
margin-bottom: 10px;
}

iframe {
	width: 100%;
	height:412px;
	border:0;
	overflow: hidden;
}


/* -------------------------- START MOBILE CSS -------------------------------- */ 

@media screen and (max-width: 1670px) {
	.logo_navi_container {
		width: 96%;
		min-height:98px;
		margin: 0 auto;
	} 

	.h1title_inner {
	margin: 0 20px;
}

.hpservgrid {
	max-width: 1650px;
	height: auto;
	margin: 28px 20px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.lightblueinner {
	max-width: 1650px;
	height: auto;
	margin: 0 20px;
	padding-bottom: 30px;
	padding-top: 30px;
}

.footerinfoinner {
	max-width: 1650px;
	height: auto;
	background-color: #004799;
	margin: 28px 20px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 28px;
	grid-row-gap: 28px;

}

.footerinfoinnercopyr {
	max-width: 1650px;
	height: auto;
	margin: 0 20px;
}

.whychooseus {
	max-width: 1650px;
	height: auto;
	margin: 20px 20px;
}

.contactforminner {
	max-width: 1650px;
	height: auto;
	background-color: #004799;
	margin: 0 20px;
}

}

@media screen and (max-width: 1450px) {
	.tfitem4 {
	display: none;
	}

	.hpaboutimg {
	width: 50%;
	height: auto;
	float: right;
	margin-bottom: 50px;
	margin-left: 50px;
	border: #004799 2px solid;
}

}

@media screen and (max-width: 1200px) {
	.hpservgrid {
	max-width: 1650px;
	height: auto;
	margin: 28px 20px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(3, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.hpaboutimg {
	width: 40%;
	height: auto;
	float: right;
	margin-bottom: 50px;
	margin-left: 50px;
	border: #004799 2px solid;
}

}

@media screen and (max-width: 960px) {
		.snavi a:link {
		font-size: 18px;
		padding-right:20px;
	}

	.snavi a:visited {
		font-size: 18px;
		padding-right:20px;
	}
	
	.snavi a:active {
		font-size: 18px;
		padding-right:20px;
	}
	
	.snavi a:hover {
		font-size: 18px;
		padding-right:20px; }
	
	
	.snavi2 a:link {
		font-size: 18px;
	}
	
	.snavi2 a:visited {
		font-size: 18px;
	}
	.snavi2 a:active {
		font-size: 18px;
	}
	.snavi2 a:hover {
		font-size: 18px;
	}

	.hpaboutimg {
	width: 100%;
	height: auto;
	float:none;
	margin-bottom: 25px;
	margin-left: 0px;
	border: #004799 2px solid;
}

.footerinfoinner {
	max-width: 1650px;
	height: auto;
	background-color: #004799;
	margin: 28px 20px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;

}

.carrep {
	margin: 28px auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(6, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.carrep h1 {
	font-size: 25px;
}

}

@media screen and (max-width: 860px) {

		.snavi a:link {
		font-size: 18px;
		padding-right:15px;
	}

	.snavi a:visited {
		font-size: 18px;
		padding-right:15px;
	}
	
	.snavi a:active {
		font-size: 18px;
		padding-right:15px;
	}
	
	.snavi a:hover {
		font-size: 18px;
		padding-right:15px;
	}
	
	.snavi2 a:link {
		font-size: 18px;
	}
	
	.snavi2 a:visited {
		font-size: 18px;
	}
	.snavi2 a:active {
		font-size: 18px;
	}
	.snavi2 a:hover {
		font-size: 18px;
	}

	.serviceops {
	margin: 28px auto;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(4, auto);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.bwimggrid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.contactmain {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 0;
	grid-row-gap: 28px;
}


}

@media screen and (max-width: 775px) {
	  .tfitem3 {
		flex: 0 0 auto;
		margin: 0px;
		align-self: center;
		display: block;
	  }
	  .tfitem2 {
		display: none;
	  }

	  	.logo_navi_container {
		width: 94%;
		min-height:98px;
		margin: 0 auto;
	}


	.whychooseus_inner {
	max-width: 1650px;
	height: auto;
	margin: 0px 0px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}

.carrep {
	margin: 28px auto;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(12, auto);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.carrep h1 {
	font-size: 25px;
}

.mainimgsize {
	width: 100%;
	max-width: 1650px;
	max-height: auto;
	display: none;
}

.mainimgsize2 {
	width: 100%;
	max-width: 1650px;
	max-height: auto;
	display: block;
}


.typicalserv {
	margin: 28px auto;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 28px;
}


}

@media screen and (max-width: 620px) {
	.hpservgrid {
	max-width: 1650px;
	height: auto;
	margin: 28px 20px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(6, auto);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}

.hpservgrid h2 {
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	font-weight:500;
	color: #ffffff;
	padding: 15px;
}

.bwimggrid {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(4, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
}



}

@media screen and (max-width: 350px) {

footerinfoinner iframe {
	width: 100%;
	height:100%;
	border:0;
	text-align: center;
}


}