body { background-color: #0599b7; font-family: Verdana, Geneva, sans-serif;  color: #333; margin: 0; padding: 0;line-height:1.5 }
a img, iframe { border: none; }
.imgLeft { float: left; margin: 5px 30px 15px 0; }
.imgCenter { display: block; margin: 0 auto; }
.imgRight { float: right; margin: 5px 0 15px 30px; }
.imgRight, .imgLeft { max-width: 45% }
img,iframe{display:block;margin:0 auto}
iframe{aspect-ratio:16 / 9 auto;width:100%}
a { color: #0599b7; text-decoration: none; }
main a:hover { color: #008202; }
small{font-size:max(13px, 0.8125rem)}
.clear { margin: 0; padding: 0; clear: both; visibility: hidden; border: none; }
.grid{display:grid;grid-gap:10px 20px;clear:both}
.grid.mid{align-items:center}
.grid.half{grid-template-columns:1fr 1fr}
.grid.third { grid-template-columns: 1fr 1fr 1fr}
.flex{display:flex;flex-wrap:wrap}
#topstrip { background-color: #0599b7 }
#topstrip a { color: #fff; font-size: 14px; font-weight: bold; text-transform: uppercase; }
.wrap { max-width: 1080px; margin: 0 auto; }
#topstrip ul { text-align: right; margin:0;padding: 5px 10px; }
#topstrip li { display: inline; }
#topstrip li a { color: #fff; margin: 0 5px; }
header{padding:20px 10px}
header a{display:block}
header.grid{grid-template-columns:230px 1fr 210px }
header>span{font-size:13px;font-weight:bold;max-width:320px}
header .right {  text-align: right; }
header .right a { color: #333;font-weight: bold; }
.headphone{font-weight:bold;color:#333;font-size:1.375rem;margin:0}
header>div{font-size:13px;text-align:center}
nav { background: #008202;padding:10px }
nav ul { text-align: center; margin:0; padding: 0; }
nav li{display:inline-block}
nav a { display:block;color: #fff; font-weight: bold; text-transform: uppercase; margin: 6px;font-size:13px }
.nowrap,a[href^=tel]{white-space:nowrap}
h1{font-size:1.5rem}
h2{font-size:1.25rem}
h3{font-size:1rem}
#banner {background: #000;text-align:center;overflow:hidden }
.cycle-slideshow { margin: 0 auto; height: 335px; }
.cycle-slideshow a { display: block; margin: 0 auto; width: 100%; height: 100%; text-decoration: none; position: relative; }
.cycle-slideshow img{width:100%;height:100%;object-fit:cover}
.cycle-prev, .cycle-next { position: absolute; top: 0; width: 6%; opacity: .3; z-index: 800; height: 100%; cursor: pointer; }
.cycle-prev { left: 0; background: url(/images-design/arrow-left.png) 50% 50% no-repeat; }
.cycle-next { right: 0; background: url(/images-design/arrow-right.png) 50% 50% no-repeat; }
#substrip {background-color: #008202;padding:15px 10px}
#substrip .grid{grid-template-columns:1fr 250px }
#substrip strong { text-align: center; display: block;max-width:600px;margin:0 auto;color: #fff; text-shadow: 1px -1px 2px #555;font-size:1.125rem  }
#substrip a { text-align: center; background: #ff9c00; font-weight: bold; color: #333; display: block; font-size: 14px; padding: 10px 5px }
.container { background: #fff;border-top:15px solid #0599b7}
main { padding: 20px 10px 40px; }
main{font-size:0.9375rem}
hr{margin:40px 0;border-top:none;border-bottom:1px solid #ccc}
.welcome .grid {grid-template-columns:170px 1fr  }
.welcome h1{margin-top:0}
.grid.featured{padding-top:10px;grid-gap:10px 30px}
.featured img {padding: 5px; border: 1px solid #ccc; box-sizing: border-box;width:100% }
.featured a{display:block}
.featured a:nth-of-type(2){margin-top:40px}
.box { padding: 10px;}
.box a { color: #333; }
.box img {padding: 5px; border: 1px solid #ccc;box-sizing:border-box }
.box span { display: block; margin: 10px 0;font-weight: bold; }
.box ul li a { color: blue; }
main ul,main ol { padding-left:30px; }
main ul ul,main ol ol { margin: 5px 0 }
main li { margin: 5px 0 }
.nolist { list-style: none;padding-left:0 }
iframe.jasper{min-height:282px}
form label { display: block; text-align: left; margin-bottom: 10px }
form input, form textarea { font-family: Verdana, Geneva, sans-serif; border: 1px solid #008202;padding:10px;box-sizing:border-box;width:100%;display:block; }
form textarea{height:100px}
form input[type=submit] { color: #333; font-weight: bold; background: #ff9c00; border: none;font-size:15px;margin-top:15px;max-width:300px;margin:0 auto }
form input[type=submit]:hover { cursor: pointer; }
.contact iframe{height:400px}
.footertop { min-height: 300px; background: #fff url(/images-design/bg.jpg) center bottom repeat-x; }
footer .grid{grid-template-columns:250px 1fr}
footer{font-size:0.875rem}
footer li{margin:5px 0}
footer, footer a { color: #fff; }
footer .wrap {  padding: 20px 10px 20px }
footer .left a { color: #fff; }
#social .facebook { background: url(/images-design/social.png) 0 0 no-repeat; }
#social .twitter { background: url(/images-design/social.png) -50px 0 no-repeat; }
#social .linkedin { background: url(/images-design/social.png) -100px 0 no-repeat; }
#social .blogger { background: url(/images-design/social.png) -150px 0 no-repeat; }
#social .wordpress { background: url(/images-design/social.png) -200px 0 no-repeat; }
footer .nolist span:first-of-type { width: 15px; height: 12px; margin: 10px 10px 10px 0; }
footer .nolist span {  display:inline-block;vertical-align:middle}
footer .phone { background: url(/images-design/contact.png) 0 0 no-repeat; }
footer .email { background: url(/images-design/contact.png) -20px 0 no-repeat; }
footer .grid>div {  text-align: right; }
footer .grid > div p { max-width: 500px; margin-left: auto; margin-top: 40px }
footer .grid>div img{margin:0 0 0 auto}
footer .mark { margin-top: 20px;display:inline-block }
.center { text-align: center; }
#sidebar_services {  margin: 40px 0; border: solid 1px #ff9c00; background: #fff0d8; padding: 10px 15px; font-weight: bold; }
#sidebar_services ul li { list-style-type: none; font-size: 14px; margin-bottom: 10px; }
aside ul{padding-left:0}
aside img{display:inline-block}
.red, .red a { color: #ce2f3c; }
.blue, .blue a { color: #215da1; }
.blue ul { margin: 5px 0; }
.orange, .orange a { color: #ff9c00; }
.teal, .teal a { color: #0599b7; }
.green, .green a { color: #029a02; }
.palm, .palm a { color: #8fa243; }
aside #contact { border: solid 1px #04abcd; background: #e5fafe; padding: 15px; }
#summary { padding: 10px; margin-top: 40px; }
#esdm { margin: 0 15px 15px 15px; border: 1px solid #0599b7; border-radius: 15px; padding: 15px; }
.services{margin:0 -10px}
.services p { margin: 0; height: 75px; background-color: #008202; border: 1px solid #008202; }
.services strong { text-align: center; display: block; color: #fff; padding: 10px; top: 50%; transform: translateY(-50%); position: relative; }
.services a { border-radius: 10px; overflow: hidden; border: 1px solid #ddd; box-sizing: border-box;flex:1 0 200px;margin:10px }
.services a:hover p{background-color:#3e3e3e}
.services img { object-fit: cover; height: 180px; width: 100%; border-bottom: 1px solid #ddd }
.boxes { text-align: center;  }
.boxes a:hover strong, .btn:hover, form #submit:hover { background: #3e3e3e; color: #fff; }
.boxes a:hover { text-decoration: none; }
.boxes img { width: 190px; height: 120px; border-radius: 10px 10px 0px 0px; border-bottom: 1px solid #ddd; }
.boxes img, .boxes strong, .boxes span { display: block; }
.boxes span { height: 77px;padding: 5px; }
.boxes strong { border-radius: 0px 0px 10px 10px; text-align:center; background: #008202; color: #fff; padding: 10px 5px; text-shadow: 1px 1px 5px #000; }
.hideBox { visibility: hidden; }
.singleLineCenter { line-height: 40px; }
.staff > div { display: inline-block; width: 48%; vertical-align: top; }
.staff > div:nth-of-type(odd) { margin-right: 3%; }
.staff .imgLeft { max-width: 150px; }
.team { max-width: 200px; }

@media(max-width:999px){
    nav{padding:10px 0}
    nav a{padding:5px}
    .grid.contact{grid-template-columns:1fr 1fr}
    .grid.contact > div:first-of-type { grid-column: span 2 }
    #contact{display:grid;grid-gap:10px;grid-template-columns:1fr 1fr 1fr;}
    #contact label:nth-of-type(4),#contact input[type=submit]{grid-column:span 3;margin-top:0}
}
@media(max-width:700px){
    header.grid, #substrip .grid, .grid.half, footer .grid,.grid.contact { grid-template-columns: 1fr }
    .grid.contact > div:first-of-type { grid-column: unset }
    header>span{text-align:center;margin:0 auto;max-width:500px}
    .welcome .grid{grid-template-columns:1fr 170px}
    .welcome img{order:2}
    .contact iframe{height:300px}
    footer ul,footer p{text-align:center}
    footer .grid>div img{margin:0 auto}
    footer .grid>div p{margin:20px auto 0}
    footer .mark{display:block}
}
@media(max-width:500px){
    .welcome .grid,#contact{grid-template-columns:1fr}
    #contact label:nth-of-type(4), #contact input[type=submit] { grid-column: unset }
    .welcome img{order:unset;}
    .welcome h1{text-align:center}
    .imgLeft,.imgRight{float:none;margin:1em auto;max-width:100%}
    .cycle-slideshow { height: 250px; }
}