/*
Theme Name: Bridge Child - John's Sanitation
Theme URI: https://johnssanitation.com/
Description: Child theme of Bridge for John's Sanitation. Holds the custom CSS that used to live directly in the parent theme's style.css (Bridge 27.2), so parent updates no longer wipe it.
Author: Erik Edgington
Template: bridge
Version: 1.0.2
Text Domain: bridge
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* ==========================================================================
   John's Sanitation custom CSS
   Moved verbatim from wp-content/themes/bridge/style.css (Bridge 27.2),
   lines 16-851, saved 2026-10-10.
   ========================================================================== */
header {
    background-color: #fff !important;
}

div#inner-page-contact-form .form-field-cover .form-field-main {
    width: 31.9%;
    margin-bottom: 20px;
    margin-right: 24px;
}

div#inner-page-contact-form .form-field-cover {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 20px;
}

div#inner-page-contact-form .form-field-cover .form-field-main:nth-child(3n) {
    margin-right: 0;
}

#inner-page-contact-form h3 {
    text-align: center;
    font-size: 34px;
    margin-bottom: 30px;
}

div#inner-page-contact-form {
    background: #c4c4c45c;
    padding: 40px;
}

div#inner-page-contact-form span.form-label {
    display: inline-block;
    color: #000;
    font-weight: 500;
}
div#inner-page-contact-form .form-recapcha {
    margin: 20px 0;
}
div#inner-page-contact-form .form-submit-button input {padding: 15px 50px !important;width: auto !important;height: auto !important;font-size: 18px;line-height: 1;}
.form-submit-button {text-align: center;margin-top: 20px;}
.subscription-form .submit-form {
    margin-top: 10px;
    width: 100%;
}
.subscription-form .submit-form input {
    width: 100% !important;
    padding: 0 !important;
    text-align: center !important; 
}
.subscription-form {
    margin-top: 10px;
}

.vc_empty_space_inner .empty_space_image {
    display: none !important;
  }
  /* .vc_empty_space {
    display: none !important;
  } */
.wpcf7-spinner {
	display: none !important;
}  

/* --------------About--------------------- */

div#about-us {
    padding-bottom: 30px !important;
    padding-top: 70px;
}
.vc_row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.full_section_inner.clearfix {
    max-width: 1300px !important;
    margin: 0 auto;
    
}
div#association {
    padding-bottom: 40px;
    padding-top: 20px;
}


.about-heading  h2 {
    margin-bottom: 50px !important;
    margin-top: 40px !important;
    font-size: 45px !important;
    text-align: center;
    font-weight: 800;
}

#testimonials .testimonial-box {
    border: 1px solid #eaeaea;
    padding: 15px;
    width: 46.6%;
    margin-bottom: 20px !important;
}

#testimonials .separator {
    background-color: transparent !important;
    display: none !important;
}
#testimonials .wpb_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#testimonials .testimonial-box .wpb_wrapper {
    display: block;
}
#testimonials h3.testi-name {
    display: inline-block;
    border-bottom: 1px solid #153961;
}

div#our-mission {
    padding-bottom: 30px;
    margin-top: 60px;
    padding-top: 20px;
}

div#testimonials {
    padding-bottom: 30px;
}
div#association-box-main .full_section_inner {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

div#association-box-main .associations-box {
    width: 23.5% !important;
    background: #fff;
    padding: 15px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
    margin-right: 25px;
}

div#association-box-main .associations-box:last-child {
    margin-right: 0;
}
/* --------------About--------------------- */

/* --------------our-mission--------------------- */

.content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
    padding-top: 100px;
    padding-bottom: 0 !important;
}

/* --------------our-mission--------------------- */

/* --------------press--------------------- */

a#press-btn {
    margin-top: 15px;
}

/* --------------press--------------------- */
/* --------------resources--------------------- */

.resources-column .resources-btn {
    margin-top: 15px;
}

.resources-column h4 {
    margin-top: 15px;
}

.resources-column p {
    margin-top: 10px !important;
}

.resources-column {
    border: 1px solid #eaeaea;
    padding: 20px !important;
    width: 47% !important;
}

.resources-column:nth-child(1) {
    margin-right: 30px;
}

.resources-column .vc_column-inner {
    padding: 0 !important;
}

/* --------------resources--------------------- */

/* --------------photo-gallery--------------------- */
div#photo-gallery img {
    width: 100% !important;
    height: auto !important;
}

/* --------------photo-gallery--------------------- */


/* --------------download-forms--------------------- */
.forms-heading h2 {
    padding-bottom: 20px !important;
}

/* --------------download-forms--------------------- */

/* --------------restroom-trailers--------------------- */
.restroom-trailers {
    width: 48% !important;
    border: 1px solid #eaeaea;
    padding: 20px !important;
    height: 100%;
        margin-bottom: 20px;
}

.restroom-trailers .vc_column-inner {
    padding: 0 !important;
}

.restroom-trailers:first-child {
    margin-right: 20px;
}
/* --------------restroom-trailers--------------------- */
/* --------------elite-plus-toilets--------------------- */
div#elite-plus-toilets .qode-aig-image {
    margin-bottom: 25px;
    padding-left: 0 !important;
    padding-right: 25px !important;
}
div#elite-plus-toilets .qode-aig-image img{
   width: 100% !important;
}
/* --------------elite-plus-toilets--------------------- */
.qode-aig-image-inner img {
    width: 100% !important;
}


/* -------------- new_contact_form --------------------- */

.new_contact_form_main .new_contact_form{background:#c4c4c45c;padding:40px;margin-bottom:50px !important;}
body .new_contact_form_main form .gform_fields .gfield{margin:0;}
.new_contact_form_main form .gform_fields{--gf-form-gap-x:16px;--gf-form-gap-y:20px;}
.new_contact_form_main form .gfield_label{display:inline-block;color:#000;font-weight:500 !important;font-size:15px;line-height:1;}
.new_contact_form_main form select,.new_contact_form_main form input{padding-top:0 !important;padding-bottom:0 !important;}
body .new_contact_form_main form .datepicker{width:100% !important;}
.new_contact_form_main form .gfield--type-phone input{border:0 !important;}
.new_contact_form_main form [type="radio"]:checked,.new_contact_form_main form [type="radio"]:not(:checked){position:absolute;left:-9999px;}
.new_contact_form_main form [type="radio"]:checked + label,.new_contact_form_main form [type="radio"]:not(:checked) + label{position:relative;padding-left:28px;cursor:pointer;line-height:20px;display:inline-block;color:#666;}
.new_contact_form_main form [type="radio"]:checked + label:before,.new_contact_form_main form [type="radio"]:not(:checked) + label:before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;border:1px solid #ddd;background:#fff;}
.new_contact_form_main form [type="radio"]:checked + label:after,.new_contact_form_main form [type="radio"]:not(:checked) + label:after{content:'';display:block;position:absolute;top:3px;left:8px;width:5px;height:12px;border:solid #282728;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);}
.new_contact_form_main form [type="radio"]:not(:checked) + label:after{opacity:0;-webkit-transform:scale(0);transform:scale(0);}
.new_contact_form_main form [type="checkbox"]:checked,.new_contact_form_main form [type="checkbox"]:not(:checked){position:absolute;left:-9999px;}
.new_contact_form_main form [type="checkbox"]:checked + label,.new_contact_form_main form [type="checkbox"]:not(:checked) + label{position:relative;padding-left:28px;cursor:pointer;line-height:20px;display:inline-block;color:#666;}
.new_contact_form_main form [type="checkbox"]:checked + label:before,.new_contact_form_main form [type="checkbox"]:not(:checked) + label:before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;border:1px solid #ddd;background:#fff;}
.new_contact_form_main form [type="checkbox"]:checked + label:after,.new_contact_form_main form [type="checkbox"]:not(:checked) + label:after{content:'';display:block;position:absolute;top:3px;left:8px;width:5px;height:12px;border:solid #282728;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);}
.new_contact_form_main form [type="checkbox"]:not(:checked) + label:after{opacity:0;-webkit-transform:scale(0);transform:scale(0);}
.new_contact_form_main form .gform_footer input,.new_contact_form_main form .gfield_choice_all_toggle{background-color:#27aae1 !important;}
.new_contact_form_main form .gform_footer input:hover,.new_contact_form_main form .gfield_choice_all_toggle:hover{background-color:#303030 !important;}
.new_contact_form_main form select:focus,.new_contact_form_main form input:focus,.new_contact_form_main form .gfield_choice_all_toggle:focus{outline:0 !important;border:0 !important;--gf-local-shadow:none !important;}
.new_contact_form_main form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url('https://johnssanitation.com/wp-content/uploads/2023/11/drop-down.png') no-repeat 98% center;background-color:#fff;}


/* -------------- new_contact_form --------------------- */


@media (max-width: 1800px) {

    #welcome-john-home, #what-our-clients-say, #view-our-sanitation-services {
    padding: 70px 0 !important;
    }
    #welcome-john-home .separator {
    display: none;
    }
    .footer_top {
        padding: 70px 0 !important;
      }
      .subscription-form .submit-form .wpcf7-spinner {
        display: none;
      }
      

}

@media (max-width: 1440px) {
    .full_section_inner.clearfix {
        max-width: 1100px !important;
        margin: 0 auto;
    }
    div#inner-page-contact-form .form-field-cover .form-field-main {
        width: 31.7%;
        margin-bottom: 20px;
        margin-right: 24px;
    }
    .wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
        padding-top: 70px !important;
        padding-bottom: 70px !important;
    }
    div#about-us {
        padding-bottom: 30px !important;
        padding-top: 50px;
    }
    div#association-box-main .associations-box {
        width: 23.5% !important;
        padding: 15px;
        margin-right: 21px;
    }
        #welcome-john-home .qbutton {
	margin-top: 15px;
    }
    #request-a-quote .qbutton {
	margin-top: 15px;
    }

}
@media (max-width: 1360px) {

    #welcome-john-home, #what-our-clients-say, #view-our-sanitation-services {
        padding: 50px 0 !important;
    }
    .footer_top {
        padding: 50px 0 !important;
    }
    
.q_slider h2 {
  font-size: 50px !important;
  line-height: 1.2 !important;
}
.q_slider h4 {
  font-size: 25px !important;
  line-height: 1.2 !important;
}
h2 {
	font-size: 30px !important;
	line-height: 1.3 !important;
}
#what-our-clients-say .separator.small.center {
	margin-bottom: 0 !important;
}
div#our-mission {
    padding-bottom: 20px;
    margin-top: 50px;
}

#testimonials .testimonial-box {
    padding: 15px;
    width: 45.9%;
    margin-bottom: 20px !important;
}

div#testimonials {
    padding-bottom: 15px;
}

}

@media (max-width: 1200px) {
    .full_section_inner.clearfix {
        max-width: 950px !important;
        margin: 0 auto;
    }

    #view-our-sanitation-services .separator {
        display: none;
      }
      #view-our-sanitation-services .qbutton {
        margin-top: 10px;
      }
      div#inner-page-contact-form .form-field-cover .form-field-main {
        width: 48.2%;
        margin-bottom: 20px;
        margin-right: 24px;
    }
    div#inner-page-contact-form .form-field-cover .form-field-main:nth-child(2n) {
        margin-right: 0;
    }
    div#inner-page-contact-form .form-field-cover .form-field-main:nth-child(3n) {
        margin-right: auto;
    }
    .wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
    }   
    
/* --------------photo-gallery--------------------- */
#photo-gallery .qode-item-space {
    padding: 0 10px !important;
    margin: 10px 0 !important;
}
#photo-gallery .qode-large-space .qode-outer-space {
    margin: 0 !important;
}
/* --------------photo-gallery--------------------- */    

div#about-us {
    padding-bottom: 20px !important;
    padding-top: 30px;
}
.about-heading  h2 {
    margin-bottom: 30px !important;
    margin-top: 20px !important;
    font-size: 40px !important;
}
div#association-box-main .associations-box {
    width: 23.7% !important;
    padding: 10px;
    margin-right: 15px;
}
div#association {
    padding-bottom: 50px;
    padding-top: 10px;
}
#testimonials .testimonial-box {
    padding: 15px;
    width: 45.9%;
    margin-bottom: 10px !important;
}

}
@media (max-width: 1100px) {
    .header_inner_left .q_logo img {
	width: 230px !important;
}
}
@media (max-width: 999px) {
    .full_section_inner.clearfix {
        max-width: 100% !important;
        margin: 0 auto;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .header_inner_left .q_logo img {
	width: auto !important;
}
    .has_slider .carousel:not(.advanced_responsiveness) .carousel-inner h2 span {
        font-size: 0.425em !important;
        line-height: 1.2em !important;
    }
    .has_slider .carousel:not(.advanced_responsiveness) .carousel-inner .q_slide_subtitle span {
        font-size: 0.7em !important;
        line-height: 1.4em !important;
        margin-bottom: 0 !important;
    }
    #welcome-john-home .wpb_wrapper, #what-our-clients-say .wpb_wrapper, #view-our-sanitation-services .wpb_wrapper {
        margin-top: 20px;
      }
      #welcome-john-home, #what-our-clients-say, #view-our-sanitation-services {
        padding: 40px 0 !important;
      }
      div#inner-page-contact-form .form-field-cover .form-field-main {
        width: 47.6%;
        margin-bottom: 20px;
        margin-right: 24px;
    }
    .wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }
    .full_section_inner .vc_column-inner {
        padding: 0 !important;
    }
    div#testimonials-left {padding-right: 20px;}

    div#testimonials-right {
        padding-left: 20px;
    }

    /* Press */

    div#press-right {
        padding-left: 25px;
    }

    /* Press */

    /* Sevices */
        div#services-left1 {
            border-right: 1px solid #cccc;
            padding-right: 15px;
        }
        #services-right{
            padding-left: 15px;
        }

    /* Sevices */

/* --------------septic-tank--------------------- */

    div#septic-tank-cleaning-left1 {
        padding-right: 15px;
    }

/* --------------septic-tank--------------------- */

/* --------------contact--------------------- */

div#contact-page-form, div#contact-page-map {
    width: 100% !important;
}
div#contact-page-map {
    padding-top: 20px !important;
    border-top: 1px solid #eaeaea;
}
/* --------------contact--------------------- */

/* --------------resources--------------------- */

.resources-column {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 20px;
}

.resources-column:nth-child(1) {
    margin-right: 0 !important;
}
/* --------------resources--------------------- */

/* --------------restroom-trailers--------------------- */
.restroom-trailers {
    width: 100% !important;
    margin-bottom: 20px;
    margin-top: 0 !important;
}

.restroom-trailers:first-child {
    margin-right: 0 !important;
}
/* --------------restroom-trailers--------------------- */
#testimonials .testimonial-box {
    padding: 15px;
    width: 45%;
    margin-bottom: 10px !important;
}
div#association-box-main .associations-box {
    width: 48% !important;
    padding: 10px;
    margin-right: 28px;
    margin-bottom: 30px;
}
div#association-box-main .associations-box:nth-child(2n) {
    margin-right: 0;
}

}

@media (max-width: 855px) {
    #banner-bottom-section p {
	text-align: center !important;
    }
    #banner-bottom-section .call_to_action.simple .text_wrapper > .qbutton {
	margin: 0px 0 0 !important;
}
footer .column1, footer .column2, footer .column3, footer .column4 {
	margin: 0 0 15px !important;
}
footer .separator {
	margin-bottom: 10px !important;
}


 }
@media (max-width: 767px) { 
    header .q_logo img.mobile {
        max-width: 310px !important;
        left: 0px !important;
    }


.wpb_column {
    margin-top: 20px;
  }  
  div#inner-page-contact-form .form-field-cover .form-field-main {
	width: 100%;
	margin-bottom: 10px;
	margin-right: 0;
}
div#inner-page-contact-form .form-field-cover .form-field-main:nth-child(2n) {
	margin-right: auto;
}
#inner-page-contact-form h3 {
	text-align: center;
	font-size: 25px;
	margin-bottom: 30px;
	letter-spacing: 0 !important;
}
.wpb_wrapper h2 {
	font-size: 28px !important;
	line-height: 1.4 !important;
}
.wpb_single_image .vc_single_image-wrapper {
	width: 100% !important;
}
.wpb_content_element.wpb_single_image img {
    width: 100% !important;
}
.page-id-19 .wpb_content_element.wpb_single_image img {
    width: auto !important;
}
.associations-border {
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
}
.wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
div#testimonials-left {padding-right: 0px;}
div#testimonials-right {padding-left: 0px;}

/* Press */
div#press-right {
    padding-left: 25px;
}
/* Press */

 /* Sevices */
        div#services-left1 {
    border-right: 0px;
    padding-right: 0px;
    border-bottom: 1px solid #eaeaea;
    padding-bottom: 20px;
}
        #services-right{
            padding-left: 0px;
        }
        .services-none-sec{display: none;}

    /* Sevices */
    /* --------------septic-tank--------------------- */

div#septic-tank-cleaning-left1 {
    padding-right: 0px;
}

/* --------------septic-tank--------------------- */

/* --------------event-list--------------------- */

.event-list-item {
    border-bottom: 1px solid #eaeaea;
    padding-bottom: 20px;
    margin-top: 0;
}
.event-list-item:last-child {
    border: 0;
}
/* --------------event-list--------------------- */

/* --------------forms--------------------- */
.forms-heading h2 {
    margin-top: 20px;
}
/* --------------forms--------------------- */
/* --------------portable-toilet-link--------------------- */
div#portable-toilet-link p {
    margin: 5px 0 !important;
}
/* --------------portable-toilet-link--------------------- */
div#about-us {
    padding-bottom: 20px !important;
    padding-top: 0px;
}
.about-heading  h2 {
    margin-bottom: 10px !important;
    margin-top: 0px !important;
    font-size: 40px !important;
}
#testimonials-heading .wpb_column, #our-mission .wpb_column {
    margin-top: 0;
}

#testimonials .testimonial-box {
    padding: 15px;
    width: 100%;
    margin-bottom: 10px !important;
}

div#testimonials {
    padding-bottom: 0;
}

div#association-box-main .associations-box {
    width: 100% !important;
    padding: 10px;
    margin-right: 0;
    margin-bottom: 20px;
    text-align: center;
}

div#association-box-main .associations-box img {width: auto !important;}

div#association-box-main .associations-box .wpb_single_image {
    text-align: center !important;
}



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

    .wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
    width: 500px !important;
    max-width: 100% !important;
}

}
@media (max-width: 640px) {
    h3 {
    letter-spacing: 0 !important;
}
    div#inner-page-contact-form {
        padding: 20px;
    }
    .wpb_wrapper h2 {
        font-size: 23px !important;
        line-height: 1.4 !important;
    }
    #testimonials-left .wpb_text_column .wpb_wrapper p:nth-child(2), #testimonials-right .wpb_text_column .wpb_wrapper p:nth-child(2) {
    margin-top: 10px;
    margin-bottom: 0px;
}
/* --------------portable-toilet-link--------------------- */
.page-id-10 .section_inner {
    width: 100% !important;
}
/* --------------portable-toilet-link--------------------- */
.page-id-2 .vc_empty_space {
    height: 0 !important;
}

div#association {
    padding-bottom: 20px;
    padding-top: 10px;
}

.new_contact_form_main .new_contact_form {
    padding: 20px;
}

/* -------------- new_contact_form --------------------- */
.new_contact_form_main form .gform_fields{--gf-form-gap-x:15px;--gf-form-gap-y:15px;}
.new_contact_form_main form .gfield_label{font-size:14px;margin-bottom:5px;}
body .new_contact_form_main form .gfield_radio,body .new_contact_form_main form .gfield_checkbox{margin-top:10px;}
.new_contact_form_main form select{background-size:14px;}
/* .new_contact_form_main form select,.new_contact_form_main form input{padding:10px !important;padding-top:0 !important;padding-bottom:0 !important;} */
body.page-id-6492 .content_inner .container_inner.default_template_holder.clearfix.page_container_inner{width:100% !important;}


/* -------------- new_contact_form --------------------- */


}
@media (max-width: 480px) {

    header .q_logo img.mobile {
        max-width: 250px !important;
        height: auto !important;
        left: 20px !important;
    }
    .header_bottom .q_logo a {
        height: auto !important;
    }
    .has_slider .carousel:not(.advanced_responsiveness) .carousel-inner h2 span {
        font-size: 0.325em !important;
        line-height: 0em !important;
      }
      .has_slider .carousel:not(.advanced_responsiveness) .carousel-inner .q_slide_subtitle span {
        font-size: 0.6em !important;
        line-height: 1.2em !important;
      }
      #welcome-john-home, #what-our-clients-say, #view-our-sanitation-services {
        padding: 20px 0 !important;
    }
    .form-recapcha iframe {
        transform: scale(0.75);
        -webkit-transform: scale(0.75);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }
    #inner-page-contact-form h3 {
        text-align: center;
        font-size: 20px;
        margin-bottom: 20px;
        letter-spacing: 0 !important;
    }
    #banner-bottom-section p span {
  font-size: 19px !important;
}
#banner-bottom-section a {
  font-size: 13px !important;
}
footer .column4 #block-4 {
	margin-bottom: 0 !important;
}
.wpb_wrapper h2 {
	font-size: 20px !important;
	line-height: 1.4 !important;
    letter-spacing: 0 !important;
}
#what-our-clients-say p {
	font-size: 15px !important;
	line-height: 1.5 !important;
}

.wrapper .content .container .container_inner.default_template_holder, .content .container .container_inner.page_container_inner {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

/* --------------resources--------------------- */
.resources-column {
    padding: 15px !important;
}
/* --------------resources--------------------- */
/* --------------restroom-trailers--------------------- */
.restroom-trailers   a img {
    width: 100%;
    margin-bottom: 15px !important;
}
.restroom-trailers {padding: 15px !important;}
.restroom-trailers p:first-child {margin: 0 !important;}
/* --------------restroom-trailers--------------------- */

}


/* * body p {
    font-family: 'Poppins';
    font-size: 20px;
    font-weight: 300;
    line-height: 32px;
} */