/*
Theme Name: EWS Child
Description: EWS Child Theme
Author: Effective Web Solutions
Author URI: http://www.effectivewebsolutions.biz/
Template: EWS-Theme
Version: 1.1.0 "Li'l Nessy"
Text Domain: EWS-Child
*/

:root {
    --line-height-set: 1.7;
    --theme-font-main: Roboto;
    --theme-font-secondary: Roboto;
    --theme-font-headings: Arial;
    --theme-font-menu: Arial;
    --button-font: Arial;
    /* --button-bg: #41a7eb; */
    --button-bg: #007acc; /* 2025/04/25 ~TZ ADA Compliance */
    --button-color: #fff;
    --button-shadow: inset 0 25px 20px -10px rgba(255, 255, 255, 0.3);
    --button-shadow-hover: inset 0 25px 20px -10px rgba(0, 0, 0, 0.1);
    --footer-anchor-color: #a7dcff;
    --menu-toggle-shadow-color: #a7dcff;
    --menu-toggle-bg: rgba(215, 215, 215, 0.5);
    /* --themed-bg-color: #2991d6; */
    --themed-bg-color: #007acc; /* 2025/04/25 ~TZ ADA Compliance */
    --themed-bg-secondary: rgba(41, 145, 214, 0.8);
    --themed-bg-tertiary: rgba(41, 145, 214, 0.6);
    --header-margin-bottom: 18px;
}

/* Custom styles go here */

@media only screen and (min-width: 1px) {
    body {
        background-image: url(https://www.signtechelectric.com/wp-content/uploads/2015/12/home_webdesign_pattern1.png);
        font-size: 16px;
        line-height: 21px;
    }
    .before-services {
        background-image: url(https://www.signtechelectric.com/wp-content/uploads/2017/11/signtech-hero-mobile.png);
    }
    body:not(.home) #content {
    clear: both;
    padding: 0 0%;
    }
    .sbMobile {
        background:#fff;
    }
    
    #footer {background-color:#2f3192;}
    .ftr-cta {
        background-color:#273192; /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */
        background: linear-gradient(#273192, rgba(0,0,0,1)); /* Standard syntax */
    }
    .sub-ftr {
        background-color:#273192; /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */
        background: linear-gradient(rgba(0,0,0,1), #273192); /* Standard syntax */
        border-top:1px solid #000;
    }
    
    a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, .fauxthree, h4, h5, h6, header, hgroup, html, i, iframe, img, input, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, textarea, tfoot, th, thead, time, tr, tt, u, ul, var, video {
        font-size:16px;
        lineheight:21px;
    }
    p {font-size:16px; line-height:20px;font-family:'Roboto', sans serif;}
    h2 {font-size:28px; color:#2f3192; line-height:32px; margin-top:10px;}
    a {color:#2f3192; text-decoration:none; font-weight: bold; }
    h3, .fauxthree, div.sidebar-title {font-size:20px; line-height:24px;}
    
    #content { background-color:#fff;}
    #subhead {background:#2f3192; margin-bottom:0;}

    /* 2025/04/25 ~TZ Accessibility and color contrast */
    /* #subhead h1.page-title { color:#000;} */
    #subhead h1.page-title { color:#fff;}
    /* 2025/04/25 ~TZ keep redundant service template headings dimmed */
    .page-template-page-service-template #subhead h1.page-title { color:#fff;}

    p.phoneNum {text-align:center; font-size:35px; width:100%; color:#2f3192; margin-top:10px;}
    p.phoneNum a {color:#2f3192; text-decoration:none !important;}
    hr {
    background-color: rgba(0, 0, 0, .08);
    color: rgba(0, 0, 0, .08);
    }
    .button {background:#2f3192;}
    
    .home-service-wrapper {
        background-color:#2f3192;
        
    }
    p.headerAddy {margin-top:20px; text-align:center;}
    
    span.wpcf7-form-control-wrap {
        width:100%;
        display: inline-block;
        margin-bottom: 3px;
    }
    input[type="text"], input[type="email"], input[type="tel"], select, textarea {
        color:#626262;
        box-shadow: inset 0 0 2px 2px rgba(0,0,0,0.02);
    }
    
    .wpcf7-form input.name {
        background:url(../EWS-Child/images/input_name.gif) top left no-repeat #fff;
        padding-left:25px;
        background-position: 0 6px;
        font-size: 15px;
    }
    .wpcf7-form input.email {
        background:url(../EWS-Child/images/input_email.gif) top left no-repeat #fff;
        padding-left:25px;
        background-position: 0 6px;
        font-size: 15px;
    }
    .wpcf7-form input.phone {
        background:url(../EWS-Child/images/input_phone.gif) top left no-repeat #fff;
        padding-left:25px;
        background-position: 0 6px;
        font-size: 15px;
    }
    .wpcf7-form select, .wpcf7-form textarea {
        width: 100%;
        padding-left:10px;
        font-size: 15px;
    }
    input[type="submit"] {
        background:#2f3192;
    }
    
    .wpcf7-form input {
        border: rgba(0,0,0,0.2);
        padding: 10px 25px 10px 10px;
    }
    .wpcf7-form select, .wpcf7-form textarea {
        border: rgba(0,0,0,0.2);
        background:#fff;
        width:100%;
    }
    ul.list_check {
        color:#656b6f;
        margin: 0 0 15px 30px;
        font-size:15px;
        line-height:21px;
    } 
    ul.list_check li {
        margin-bottom: 20px !important;
        position:relative;
        list-style:none;
        padding-left: 50px;
        margin-left:0;
    }
    ul.list_check li:after {
        content:" ";
        width:70px;
        height: 1px;
        overflow:hidden;
        position:absolute;
        left:0;
        bottom:-11px;
    }
    
    .one_third ul.list_check {
        margin:0 0 15px 0;
    }
    .service-text, .service-text strong {
        font-size:13px;
    }
    div.schema-footer p strong, div.schema-footer p span,  div.schema-footer p span a,
    div.schema-footer p span.city-resources a, div.schema-footer span {
        font-size:9px;
    }
    p.client, p.client strong {font-size:12px;}
    .elecImg {width:145px;}
    .serving {text-align:center;}
    .home-service-box h2 {
        color:#fff;
    }
    div.content-section {padding:0 10px; }
    span.banner-cta {
        color:#fff;
        text-shadow:
        0px 0px 2px #112041, 1px 0px 2px #112041, 2px 0px 2px #112041,
        0px 1px 2px #112041, 1px 1px 2px #112041, 2px 1px 2px #112041,
        0px 2px 2px #112041, 1px 2px 2px #112041, 2px 2px 2px #112041;
    }
    .headerAddy {color:#fff; width:40%; float:right; padding:5px;}

    .wrap {
        max-width: 1400px;
        margin: 20px auto;
        box-shadow: 0 0 9px rgba(0,0,0,.3);
    }

    .reviews-wrapper {
    }
    
    .reviews-wrapper .review-form-wrapper {
    }
    
    .reviews-wrapper .review-form-wrapper p.required-notice,
    .reviews-wrapper .review-form-wrapper .required symbol,
    .reviews-wrapper .review-form-wrapper .required.symbol:after {
        display: none !important;
    }
    
    .reviews-wrapper .review-form-wrapper {
        background: #f3f3f3;
        width: 100%;
        float: none;
        margin-bottom: 15px;
    }
    
    .reviews-wrapper .review-form-wrapper .form-field {
        margin:0;
    }
    
    .reviews-wrapper .review-form-wrapper .reviewsheader {
        text-align: center;
        display: block;
        padding: 10px 0 0;
    }
    
    .reviews-wrapper .review-form-wrapper .form-field {
        margin: 0 0 10px;
    }
    
    .review-form-wrapper form input[type="text"],
    .review-form-wrapper form textarea {
        box-shadow: 0 0 0 1px #cccccc;
        background-color: #ffffff;
        border: none;
        padding: 3px;
    }

.reviews-wrapper .strong-form textarea {
    height: 60px;
    }

.reviews-wrapper .form-field.field-star_rating {
    margin-bottom: 0;
    }

    .reviews-wrapper .form-field.submit {
    margin-bottom: 0;
    }

    .reviews-wrapper .testimonial {
        float: none;
        margin: 0 0 20px !important;
        width: 100% !important;
    }
    
    .reviews-wrapper .aggregate-rating {
        vertical-align: middle;
        white-space: nowrap;
        clear: both;
        text-align: center;
        background: #f3f3f3;
        margin: 0 0 30px;
        float: none;
        position: relative;
        top: 15px;
    }
    
    .reviews-wrapper .aggregate-rating .aggregate-title,
    .reviews-wrapper .aggregate-rating .aggregate-stars {
        display: inline-block;
        vertical-align: unset;
        line-height: 10px;
    }
    
    .strong-form .strong-rating {
        display: inline-block;
    }
    
    .strong-form label {
        width: auto;
        max-width: unset;
        margin: 0;
    }
    .home .home-header-wrapper h1 {
        margin-bottom: 10px;
    }	
    .svc-sctn {
        padding-top: 10px;
    }
    .home-service-box img {
        margin-top: 10px;
    }

    .placeholder-container .contactformlabel {
        margin: 0 10px;
    }

    span.wpcf7-form-control-wrap {
        display: block;
    }

    .wpcf7-form input {
        padding: 10px 10px 10px 10px;
    }
    
    .head-section {
        background-image: url(https://www.signtechelectric.com/wp-content/uploads/2025/04/signtech-bannerV13-mobile.webp);
        background-repeat: no-repeat;
        background-size: cover;
        background-position-x: center;
        background-position-y: bottom;
    }

}

@media only screen and (min-width: 400px) {

}

@media only screen and (min-width: 600px) {


    /* REVIEWS */


    
    .reviews-wrapper .review-form-wrapper {
        background: #f3f3f3;
        width: 50%;
        float: left;
    }

    .reviews-wrapper .testimonial {
        float: left;
        margin: 0 1% 20px !important;
        width: 48% !important;
    }

    .head-section {
        background-image: url(https://www.signtechelectric.com/wp-content/uploads/2017/12/signtech-bannerV13.jpg);
    }

}

@media only screen and (min-width: 768px) {
    .home-service-box h2 {
        height:65px;
    }
    .with-sidebar .contact-form-sidebar {
        width:24%;
    }

    .before-services {
        background-image: url(http://dev.ewsproduction.com/ewstheme/wp-content/uploads/2017/06/temp-home-bg.jpg);
    }
    .home #content.with-sidebar .entry { width:70%;}
    
    #wrapper {
        width:768px; 
        margin:0 auto;
        box-shadow: 0px 0px 15px rgba(0, 0, 0, .06);
    }
    p.headerAddy {text-align:right;}
    
    .head-section {
        max-width:92%;
        padding:4%;
    }
    .before-section {
        width:50%; 
        float:left;
        padding:5% 0;
        
    }
    .before-section span.heroh1 {
        font-size:50px;
        font-weight:300;
        color:#2f3192;
    }
    .before-section h3.heroh3, .before-section .fauxthree.heroh3 {
        font-size:30px;
        color:#000;
        line-height:60px;
    }
    .before-section a.ctabtn, .elecBtn a.ctabtn {
        background-color:#e13a3e;
        border-radius:10px;
        padding: 10px 15px;
        color:#fff;
        font-size:20px;
        text-decoration:none;
        display: inline-block;
        margin-top:5px;
    }
    .elecBtn {
        text-align:center;
        margin-bottom:35px;
    }
    
    .before-services {
        background-image:url(https://www.signtechelectric.com/wp-content/uploads/2018/02/signtech-hero-desk-1024x330.jpg);
        height:350px;
        padding:0;
        
    }
    .home-service-wrapper {
        background-color:#2f3192;
        max-width:100%;
    }
    .home-service-box {
        text-align:center;
        background: rgba(255,255,255,0.0);
        margin: 0 1%;
        
    }
    .home-service-box img {
        margin:0 auto;
    }
    
    .home-service-box img {
        width:212px;
        height:146px;
    }
    .get_in_touch {
        background-color:#2991d6;
        color:#fff;
        padding: 25px 20px 25px 30px;
        background-position: right bottom;
        background-repeat:no-repeat;
    }
    .get_in_touch h3 {color:#fff;}
    
    .home-service-wrapper.service-boxes-4 {
        display: flex;
    }

    .with-sidebar #sidebar {
        width: 24%;
    }

    #content {
        padding: 0;
    }


    /* 2025/04/25 ~TZ fix broken layout */
    .home .content-section #content > .content-section {
          width: auto;
          max-width: 100%;
        box-sizing: content-box;
        justify-content: center;
    }
    .home .wrap > div > #content > .content-section {
        padding: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

}

@media only screen and (min-width:900px) {
    #wrapper {
        width:900px; 
    }
    .banner-bar span.banner-cta {
        font-size:1.8em;
    }

}

@media only screen and (min-width: 970px) {

    .wrap {
        max-width: 955px;
    }

    .before-section {
        padding: 10% 0 4%;
    }

    .head-section {
        max-width: 100%;
        padding: 4% 0 0;
    }
    

}

@media only screen and (min-width: 1240px) {
    #wrapper {
        width:1240px; 
        margin:0 auto;
        box-shadow: 0px 0px 9px rgba(0, 0, 0, .3);
        margin-top: 20px;
        margin-bottom:20px;
    }

}

@media only screen and (min-width: 1400px) {

    .wrap {
        max-width: 1400px;
    }

    .before-section {
        padding: 7% 0 0;
    }

}


/*                                                                                                                    */
/*                                                                                                                    */
/* CHANGE THIS TO SHIFT THE POINT WHERE THE MOBILE MENU CHANGES TO DESKTOP */
/*                                                                                                                    */
/*                                                                                                                    */
@media only screen and (min-width: 868px) {
    
    /* MENU */
    
    /* 2025/04/25 ~TZ fix broken layout */
    /* .menu-toggle {
        display: none;
    } */
    
    .sub-menu {
        display: inherit;
        transition: 0;
    }

    /* 2025/04/25 ~TZ fix broken layout */
    /* .main-navigation {
        display: block;
        background-color: #fff;
    } */
    
    div.nav-menu {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

    nav.main-navigation .nav-menu ul.menu {
        display: block;
        padding: 0;
        margin: 0;
        float: none;
        width: 1400px;
        border: 0;
        margin: 0px 2% -3px;
        max-width: 92%;
    }

    nav.main-navigation .nav-menu ul.menu li {
        display: block;
        float: left;
        width: auto;
        text-align: left;
        background-color: transparent;
    }

    nav.main-navigation .nav-menu ul.menu li a {
        display: flex;
        padding: 20px 25px;
        line-height: 1;
        text-shadow: none;
    }

    nav.main-navigation .nav-menu ul.menu li ul.sub-menu li a {
        padding: 10px 25px;
    }
    
    .main-navigation .sub-menu > li:first-of-type {
        border-top: none;
    }
    
    ul.submenu li.menu-item-has-children a:after {
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 7px solid rgba(0, 0, 0, 0.5);
    }

    .main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul {
        /*border-bottom: 1px solid #ededed;
        border-top: 1px solid #ededed;*/
        /* 2025/04/25 ~TZ fix broken layout */
        /* display: inline-block !important; */
        display: none !important;
        text-align: left;
        width: 100%;
    }
    .main-navigation ul {
        margin: 0;
        text-indent: 0;
    }
    
    .main-navigation ul.nav-menu {
        border: none;
    }
    .main-navigation li a,
    .main-navigation li {
        display: inline-block;
        text-decoration: none;
    }
    .main-navigation li a {
        border-bottom: 0;
        color: #6a6a6a;
        white-space: nowrap;
    }
    .main-navigation li a:hover,
    .main-navigation li a:focus {
        color: #000;
    }
    .main-navigation li {
        margin: 0;
        position: relative;
        border-bottom: none;
        background: transparent;
        font-size: 15px;
        font-weight: normal;
        font-family: sans-serif;
        box-shadow: none;
    }
    .main-navigation li.menu-item-has-children a:after {
        margin-top: 4px;
        margin-left: 10px;
    }
    .main-navigation ul.sub-menu li.menu-item-has-children a:after {
        margin-top: 4px;
        margin-left: 10px;
        border-top: 5px solid transparent;
        border-left: 7px solid rgba(0, 0, 0, 0.5);
        border-bottom: 5px solid transparent;
    }
    .main-navigation li ul {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 100%;
        z-index: 1;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px);
    }
    .main-navigation li ul ul {
        top: 0;
        left: 100%;
    }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li:focus > ul,
    .main-navigation .focus > ul {
        border-left: 0;
        clip: inherit;
        overflow: inherit;
        height: inherit;
        width: inherit;
    }
    .main-navigation li ul li a {
        background: #f3f3f3;
        border-bottom: 1px solid #ededed;
        display: block;
        font-size: 11px;
        font-size: 1em;
        padding: 8px 10px;
        width: 180px;
        white-space: normal;
    }
    .main-navigation li ul li a:hover,
    .main-navigation li ul li a:focus {
        background: #e3e3e3;
        color: #444;
    }
    .main-navigation .current-menu-item > a,
    .main-navigation .current-menu-ancestor > a,
    .main-navigation .current_page_item > a,
    .main-navigation .current_page_ancestor > a {
        color: #636363;
        font-weight: bold;
    }
    
    nav.main-navigation .nav-menu ul.menu li ul {
        margin-left:-1px;
    }
    
    nav.main-navigation .nav-menu ul.menu li ul li {
        border-left: 1px solid rgba(0, 0, 0, 0.15);
    }
    
    nav.main-navigation .nav-menu ul.menu li ul li ul {
        width: 100%;
    }
    
    nav.main-navigation .nav-menu ul.menu li ul li ul li {
        width: 100%;
        float: none;
        display: flex;
    }
    
    .sub-menu li a {
        width: 100%;
        margin-left: 0;
    }
    
    .sub-menu .menu-item-has-children {
        border-top: 0;
    }
    
    .sub-menu li .sub-menu li a {
        width: 100%;
        margin-left: 0;
    }
    
    nav.main-navigation .nav-menu ul.menu li {
        border-right:1px solid rgba(0, 0, 0, 0.15);
    }
    
    nav.main-navigation .nav-menu ul.menu li:last-child {
        border-right:0;
    }
    
}


/* 2025/04/25 ~TZ fix broken layout */
@media only screen and (min-width:900px) {
    .menu-toggle {
        display: none;
    }
    .main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul {
        display: inline-block !important;
        text-align: left;
        width: 100%;
    }
    .main-navigation {
        display: block;
        background-color: rgba(255, 255, 255, .9);;
    }
    nav.main-navigation .nav-menu ul.menu {
        background: transparent;
    }
}


