/*
Theme Name: JohnnyoTheme
Theme URI: http://johnnyodesign.com/
Author: Johnnyo Design
Author URI: http://johnnyodesign.com/
Description: Sensible design solutions.
*/

/* Import the necessary CSS additions */
@import url( inc/bootstrap.css );
	@import url("/font-face/font-face.css");
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600,600i,700,700i,800,800i');

html {
    overflow-x: hidden;
}
body {
font-family: 'Open Sans', sans-serif;
	background-color: #eef4fa;
}
body,td,th {

}
h1, .h1 {
font-family: 'Open Sans', sans-serif;
    font-size: 40px;
    font-weight: bold;
    text-align: left;
    color: #2f6bdd;
    margin: 0;
    padding: 0;
}
p {
    margin: 4px 21px 7px 6px;
    padding: 0px 0px 0px 0px;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 24px;
    color: #444;
	font-weight: normal;
}
h2 {
    color: #387dff;
    line-height: normal;
    margin: 17px 0 0px 0;
    text-align: left;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 900;
    font-size: 34px;
    padding: 20px;
}
.home h2 {
	color: #424242;
}
h3 {
	color: #424242;
	font-size: 24px;
	font-weight: bold;
	line-height: normal;
	margin: 17px 0px 12px 0;
	text-align: left;
	padding: 0px;
font-family: 'Open Sans', sans-serif;
}
h4 {
	color: #387dff;
	font-size: 18px;
	font-weight: bold;
	line-height: normal;
	margin: 14px 0px 0px 0;
	text-align: left;
	padding: 0px;
font-family: 'Open Sans', sans-serif;
}
ul {
    margin: 4px 0 0 28px;
    padding: 0px 0px 0px 0px;
    font-family: 'Open Sans', sans-serif;
    font-size: inherit;
    line-height: 21px;
    color: #444;
    list-style: initial;
    display: inline-block;
}
.slider h1 {
    color: #fff;
    font-size: 42px;
    font-weight: 900;
    margin-top: 30vh;
    text-transform: uppercase;
    text-align: center;
}
.slider p {
    color: #eee;
    font-size: 20px;
    font-weight: 700;
    padding: 0;
    margin: 20px 7px 26px 7px;
}
.slider a {
padding: 14px 22px;
    display: inline-block;
    border-radius: 1px;
    font-size: 20px;
    font-weight: 700;

	    color: #ffffff;
    background: #306bdd;
    text-transform: uppercase;
}
.slider a:hover {
text-decoration: none;
    color: #306bdd;
    background: #ffffff;
}
.slide-interior h1 {
    margin-top: 110px;
}
.interiorslider{
margin-bottom: 30px !important;
}
.navbar {
    z-index: 1;
    width: 100%;
    border-bottom: 4px solid #2f6bdd;
}
.header-top {
    background-color: #2d6adc;
    min-height: 30px;
    width: 100%;
    color: #fff;
    font-weight: 600;
    background: linear-gradient(135deg, #387dff 20%,#2d6adc 100%);
}
.widget_nav_menu {
margin: 0 !important;
padding-bottom: 0 !important;
}
#mega-menu-wrap-primary {
    margin: 0px 0;
}
.mega-menu-link {
    background-color: #6db641;
    border-radius: 5px;
}
.home-row {
    border-radius: 2px;
    display: flex;
}
.home-row .so-panel {
    height: 100%;
}
.home-item {
    background: #fff;
    border-radius: 2px;
    padding: 20px;
    height: 100%;
    box-shadow: 0 0 10px 1px #ececec;
}
.home-postloopheader {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    padding: 10px 14px;
    background-color: #6eb641;
    border-radius: 4px 4px 0 0;
}
.interior {
    padding-bottom: 50px;
	padding-top: 60px;
}
.header-logo {
position: absolute;
    top: 5px;
}
.header-upper {
    background-color: #ffffff;
    color: #6db641;
font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    border-bottom: 1px solid #6db641;
}
.social-header {
float: right;
padding-right: 10px;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
font-family: 'Open Sans', sans-serif;
}
.main-navigation {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 58px;
	z-index: 1;
}
.site-header {
    position: relative;
}
.site-branding {
    position: relative;
}
.site-logo {
    background-color: #fff;
    z-index: 3;
    width: 50px;
    height: 400px;
    padding-left: 392px;
    border-radius: 100%;
    transform: translate(-5%, -46%) translateY(50px);
}
.headlogo {
font-weight: 900;
    font-size: 35px;
    color: #01a5ff;
    margin: 20px 0;
    display: inline-block;
}
.header-info {
	position: absolute;
        width: 100%;
        top: 48px;
        right: 0;
}
.social-media {
    position: absolute;
    right: 52px;
    top: 10px;
}
.tagline {
color: #32b8ff;
font-family: 'Open Sans', sans-serif;
font-size: 30px;
    padding: 35px;
font-weight: bold;
float:right;
}
.mega-menu-link {
font-family: 'Open Sans', sans-serif;
}
.fa {
    font-size: 18px;
    padding: 12px 14px;
    color: #666;
}
.fa-twitter:hover {
    color: #fff;
    background-color: #1DA1F2 !important;
    border-radius: 3px !important;
}
.fa-facebook:hover {
    color: #fff;
    background-color: #3b5998 !important;
    border-radius: 3px !important;
}
.fa-linkedin:hover {
    color: #fff;
    background-color: #0077b5 !important;
    border-radius: 3px !important;
}
.footer-top {
}
.footer-content {
background-color: #8c8a84;
    box-shadow: 0 0 10px 1px rgba(140, 138, 132, 0.25);
    border-radius: 2px;
}
.site-footer {
    margin: 0;
    background-color: #387dff;
    border-top: 4px solid #2f6bdd;
}
.site-footer p {
	 display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.footer-top .so-panel {
    padding: 24px;
}
.footer-top .panel-grid-cell {
padding: 0 !important;
}
.footer-top ul {
    margin: 0;
    padding: 0px 0px 0px 0px;
font-family: 'Open Sans', sans-serif;
    font-size: 0.8em;
    line-height: 21px;
    color: #666;
    list-style: none;
    padding-left: 0px;
}
.footer-top li:hover {
    background-color: #386aa2;
    border-radius: 2px;
}
.footer-top a {
    /* color: #6eb641; */
    /* padding: 0px 6px; */
    /* width: 100%; */
    /* display: block; */
}
.footer-top a:hover {
    /* color: #fff; */
    /* text-decoration: none; */
    /* background-color: #6eb641; */
}
.footer-top h3 {
font-family: 'Open Sans', sans-serif;
    font-size: 18px;
    margin-bottom: 8px;
    color: #175474;
    margin: 0;
}
.footer-top p {
    color: #0b6075;
font-size: 0.8em;
}
.footer-logo {
   width: 100%;
}
#secondary h2 {
    color: #387dff;
    font-size: 20px;
    font-weight: bold;
    line-height: normal;
    text-align: left;
    padding: 0px;
    margin: 0 0px 7px 0px;
}
#secondary {
    width: 100%;
display: inline-block;
}
.blog #secondary, .archive #secondary {
    padding-top: 0;
    display: inline-block;
}
.blog #primary, .archive #primary {
padding-right: 30px;
}
.site-info p {
    text-align: center;
    margin: 24px;
    font-size: 11px;
    color: #eef5fa;
    font-weight: 600;
}
.site-info a {
    color: #fff;
}
.site-header {
	background: #377dff;
}
.slider {
    width: 100%;
}
.slide-content {
    padding-top: 217px;
    width: 80%;
    max-width: 1200px;
    margin: auto;
    height: 100%;
    position: relative;
}
.slide-text {
    top: 40%;
    position: absolute;
    z-index: 1;
}
.slide-image {
    right: 0;
    position: absolute;
    bottom: 5%;
}
.slide-text h1{
    font-size: 80px;
font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 900;
    line-height: 80px;
text-shadow: 0 0 200px #000;
}
.hbtn {
    font-size: 22px;
font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 900;
    background-color: #32b8ff;
    padding: 10px 20px;
    display: inline-block;
    margin-top: 14px;
transition: all 0.2s ease;
}
.hbtn:hover {
text-decoration: none;
background-color: #90c64a;
color: #fff;
cursor: pointer;
transition: all 0.2s ease;
}
.btn-top {
    font-size: 22px;
font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 900;
    background-color: #32b8ff;
    padding: 10px 20px;
    display: inline-block;
float:right;
margin: 30px;
transition: all 0.2s ease;
}
.btn-top:hover {
text-decoration: none;
background-color: #90c64a;
color: #fff;
cursor: pointer;
transition: all 0.2s ease;
}
.slide1 {

    background: url(/wp-content/uploads/2022/10/SDRG-HMI.jpg);
    background-size: cover;
    background-position: center;
    border-bottom: 4px solid #2f6bdd;
}
.slide2 {

    background: url(/wp-content/uploads/2022/10/Instrumentation-2.jpg);
    background-size: cover;
    background-position: center;
    border-bottom: 4px solid #2f6bdd;
}
.slide3 {

    background: url(/wp-content/uploads/2018/02/sdrg-1.jpg);
    background-size: cover;
    background-position: center;
    border-bottom: 4px solid #2f6bdd;
}
.home .slide2, .home .slide1, .home .slide3{
    height: 75vh;
}
.slider-interior .slide2, .slider-interior .slide1, .slider-interior .slide3{
	height: 35vh;
}
.slide1::after, .slide2::after, .slide3::after {
    content: " ";
    background-color: rgba( 0, 0, 0, 0.5);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: -1;
}

.home .post, .blog .post, .archive .post, #secondary .post {
    background-color: #eeeeee;
    padding: 1px 20px 20px 20px;
    border-radius: 3px;
    position: relative;
    transition: all 0.2s ease;
    margin-bottom: 20px;
}
.home .post h2, .blog .post h2, .archive .post h2{
   /* color: #32b8ff;
font-size: 30px;*/
}
.home .post p, .blog .post p, .archive .post p {
/* margin: 4px 6px;*/
}
.home .post:hover, .blog .post:hover, .archive .post:hover, #secondary .post:hover {
    background-color: rgba(110, 182, 65, 0.1);
    padding: 1px 20px 20px 20px;
    position: relative;
transition: all 0.2s ease;
}
.home .posthover, .blog .posthover, .archive .posthover, .posthover {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.single .posthover {
display: none;
}
.entry-meta h3 {
    color: #085e7f;
    font-size: .9em;
    font-weight: bold;
    line-height: normal;
    margin: 0 4px;
    text-align: left;
    padding: 0px;
font-family: 'Open Sans', sans-serif;
}

.btn {
    font-size: 22px;
font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 900;
    background-color: #32b8ff;
    padding: 10px 20px;
    display: inline-block;
margin: 10px;
transition: all 0.2s ease;
}
.btn:hover {
text-decoration: none;
background-color: #90c64a;
color: #fff;
transition: all 0.2s ease;
cursor: pointer;
}
.social-header .fa {
transition: all 0.2s ease;
}
.social-header .fa:hover {
transition: all 0.2s ease;
}
.frm_style_formidable-style.with_frm_style fieldset {
    padding: 0 !important;
}

.header-upper a{
    color: #09607e;
}
.header-upper a:hover, .header-upper a:hover .fa{
color: #e0ead9;
text-decoration: none;
}
#recent-posts-2, #archives-2, #categories-2, #text-3 {
    padding: 0;
    margin-bottom: 20px;
}
#secondary a {
    color: #085e7f;
    text-decoration: none;
    font-weight: normal;
}
#secondary a:hover {
    color: #6eb641;
    text-decoration: none;
    font-weight: normal;
}


@media only screen and (max-width: 1080px) {
.headerupper1 {
    display: none;
}
.btm-row2 {
    padding-top: 18px;
}
}
@media only screen and (max-width: 700px) {
.slide-text h1 {
    font-size: 2em;
    font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 900;
    line-height: 1em;
    text-shadow: 0 0 200px #000;
}
.slick-slide .container {
    bottom: 10px !important;
}
}




.video-container {
	position:relative;
	padding-bottom:56.25%;
	padding-top:30px;
	height:0;
	overflow:hidden;
}

.video-container iframe, .video-container object, .video-container embed {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.wp-post-image {
    width: 100%;
    height: inherit;
}
.home .wp-post-image {
    max-width: 500px;
    margin-top: 20px;
}
.blog .wp-post-image {
    max-width: 500px;
    margin-top: 20px;
}
.post-template-default #secondary {
    padding-top: 0;
}
.post-template-default #secondary h2, .blog #secondary h2 {
    margin: 0px 0px 7px 0px;
}
.post-template-default .wp-post-image {
    margin-bottom: 20px;
}





.home-slug {
    background-color: #eee;
    padding: 14px 14px 10px 14px;
    border-radius: 4px;
    margin: 50px 0;
    text-align: center;
}
.home-slug p {
    font-size: 40px;
    color: #728992;
    line-height: normal;
    font-weight: 600;
}
.widget_search {
    margin-bottom: 20px;
}
.screen-reader-text {
    display: none;
}
.search-field {
    display: block;
    width: 100%;
    padding: 4px 8px;
    text-indent: 0;
    background-color: #eeeeee;
    border: 1px solid #e7e7e7;
    border-radius: 3px;
    margin: 0 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 500;
    font-size: 16px;
    outline: 0 !important;
}
.search-submit {
    background-color: #175474 !important;
    margin: 0 10px !important;
    border: 0 none;
    border-radius: 4px;
    transition: all 0.23s ease-in-out 0s;
    color: #FFFFFF;
    cursor: pointer;
    display: inline-block;
    font-size: 15px;
    font-weight: normal;
    height: 32px;
    line-height: 32px;
    padding: 0 22px;
    text-align: center;
    text-decoration: none;
    vertical-align: top;
    white-space: nowrap;
    width: auto;
    font-family: 'Open Sans', sans-serif;
}
.alignleft {
float: left;
    margin: 11px 18px 11px 0px !important;
    max-width: 50%;
}
.alignright {
float: right;
    margin: 11px 4px 11px 18px !important;
    max-width: 50%;
}
.widget_siteorigin-panels-postloop article:not(:first-child) {
	display: none;
}

@media only screen and (max-height: 900px) {
	.slick-slide {
    height: 400px !important;
	}
	.slider h1 {
    margin-top: 90px;
}
}
@media only screen and (max-height: 900px) and (max-width: 470px) {
	.slider h1 {
        margin-top: 30px;
}
}
	.slick-slide {
    min-height: 200px;
	}

.slick-dots {
    position: absolute;
    bottom: 5px;
    display: block;
    width: 100%;
    padding: 0;
    list-style: none;
    text-align: right;
margin: 0;
}
.slick-dots li button:before {
    font-family: 'slick';
    font-size: 20px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    content: '•';
    text-align: center;
    opacity: .7;
    color: #075e80;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
    opacity: .9;
    color: #6eb642;
}
.slidewrap {
position: relative;
	text-align: center;
}
.slider-mockup {
    height: 40vh;
    position: absolute;
    right: 0;
    top: 10vh;
}
.row1 {
background-color: #fff;
    padding: 80px 0;
}
.row2 {
background-color: #eee;
    padding: 80px 0;
}
.row3 {
background-color: #00a6ff;
    padding: 80px 0;
}
.panel-grid {
    margin-bottom: 0px !important;
}
.home2, .home2 h2 {
text-align: right;
}
.home2 h2 {
    margin: 160px 18px 0px 0;
    font-size: 42px;
    font-weight: 900;
}
.home2 p {
margin-top: 20px;
}
.actbtn {
    padding: 14px 40px;
    display: inline-block;
    border-radius: 4px;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
background: #ffffff;
    background: -moz-linear-gradient(-45deg, #00a6ff 0%, #65c8ff 100%);
    background: -webkit-linear-gradient(-45deg, #00a6ff 0%,#65c8ff 100%);
    background: linear-gradient(135deg, #00a6ff 0%,#65c8ff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a6ff', endColorstr='#65c8ff',GradientType=1 );
    transition: all 0.4s ease;
box-shadow: inset 0px 0px 0px 2px transparent;
}
.actbtn:hover {
color: #00a6ff;
text-decoration: none;
    background: #eeeeee;
transition: all 0.4s ease;
box-shadow: inset 0px 0px 0px 2px #00a6ff;
}
.slick-slider {
    margin-bottom: 0;
}
.row1 p {
    color: #56c2ff;
    font-weight: 600;
}
.featureimg {
    margin-bottom: 10px;
    margin-left: 10px;
}
.testimonial {
    background-color: #efefef;
    padding: 20px;
    border-radius: 4px;
}
.testimonialname {
font-weight: bold;
    text-align: right;
    color: #01a5ff;
    border-top: 1px solid #ddd;
    padding-top: 18px;
    margin-top: 20px;
    padding-right: 10px;
}
.mockup {
    max-height: 500px;
}
.logo {
    height: 100px;
}
.headtext {
	float: right;
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
    padding: 10px;
}
.headlink {
    color: #fff!important;
	text-decoration: none;
}
.headlink:hover {
    color: #424242!important;
	text-decoration: none!important;
}
.headbtn {
	color: #306bdd!important;
    background-color: #fff!important;
    padding: 6px 12px;
    display: inline-block;
    border-radius: 1px;
    margin-left: 20px;
}
.headbtn:hover {
	color: #fff!important;
    background-color: #306bdd!important;
	text-decoration: none!important;
}
.home-content {
    padding: 40px 0;
}
.sidirect {
	    max-width: 100%;
    background-color: #fff;
    padding: 20px 21px 22px 20px;
    border-radius: 2px;
    border: 4px solid #eef5fa;
    box-shadow: 0 0 20px 4px rgba(14, 47, 111, 0.25);
}
.foootlogo {
		    max-width: 100%;
}
.customers {
	    background-color: white;
    padding: 40px 20px;
    border-radius: 2px;
    background: linear-gradient(135deg, #ffffff 20%,#eef5fa 100%);
    box-shadow: 0 0 20px 1px rgba(141, 162, 204, 0.15);
}
.industries {
background: linear-gradient(135deg, #387dff 20%,#2d6adc 100%);
    padding: 20px;
    color: #fff;
    font-weight: 900;
    font-size: 20px;
    text-transform: uppercase;
    text-align: center;
    border-radius: 2px;
    border: 4px solid #eef5fa;
    box-shadow: 0 0 20px 2px rgba(141, 162, 204, 0.3);
	    background: #387dff;
}
.google-maps {
        position: relative;
        padding-bottom: 75%;
        height: 0;
        overflow: hidden;
    }
    .google-maps iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }

@media only screen and (max-width: 785px) {
	.headtext {
    text-align: center;
    float: none;
    margin-bottom: 30px;
	}
	.img-responsive {
    margin: auto;
	}
	#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
    background: rgb(55 125 255);
}
}
.site-footer .frm_style_formidable-style-2.with_frm_style .form-field {
	margin-bottom: 2px;
}
.site-footer .frm_primary_label {
	color: #fff;
	font-size: 14px;
}
.headlink:first-of-type {
	margin-right:20px;
}