/*
 Theme Name:     RYNO Child Theme
 Theme URI:      http://rynoss.com/
 Description:    RYNO Child Theme
 Author:         Ryno SS - Jerad Shepherd
 Author URI:     http://www.rynoss.com
 Template:       theme-3
 Text Domain:    ryno-theme-three-child
 Version:        1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */
.mobile-header__phone * {
      pointer-events: none;
      display: inline-block;
}
/* ================== */
/* GLOBAL */
/* ================== */
/* colors */
:root {
    --color-darkblue: #293577;
    --color-blue: #35A2DB;
    --color-gray: #E0E8EB;
    --color-darkgray: #5B5B5B;

    --lightblue-gradient: linear-gradient(180deg, #E0E8EB 0%, #35A2DB 100%);
    --blue-gradient: linear-gradient(180deg, #35A2DB 0%, #293577 100%);
    --blue-gradient-btn: linear-gradient(to right, #35A2DB 0%, #293577 100%);
    --darkblue-gradient: linear-gradient(180deg, #293577 0%, #000 100%);
    --darkblue-gradient-btn: linear-gradient(to right, #293577 0%, #000 100%);
    
    --color-white: #fff;
    --color-black: #000;
}
/* fonts */
:root {
    --desktop-rem-size: 18;
    --mobile-rem-size: 16;
    
    --heading-font: var(--font-heading);
    --body-font: var(--font-body);
    
    --margin-bottom-default: 30px;
}
/* screen size */
:root {
    --desktop-screen-size: 1600;
    --mobile-screen-size: 576;
}
/* common styles */
.viewport-overflow-wrapper {
    overflow: hidden;
}
.accent-image {
    width: calc(1em * (358 / var(--desktop-rem-size)));
    height: calc(1em * (314 / var(--desktop-rem-size)));
    border-radius: calc(1em * (10 / var(--desktop-rem-size)));
}
.header__phone--link::before {
    display: inline-flex;
    content: '';
    position: relative;
    width: 24px;
    height: 24px;
    margin-right: 8px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-phone.svg');    
}
.header__phone--link {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.hidden {
    display: none;
}



/* ================== */
/* TYPOGRAPHY */
/* ================== */
.h1,.h2,.h3,.h4,.h5,.h6,
h1,h2,h3,h4,h5,h6 {
    text-transform: uppercase;
    font-weight: 800;
    font-family: var(--heading-font);
    margin-bottom: var(--margin-bottom-default);
}
html {
    font-size: calc(1px * var(--desktop-rem-size));    
}
@media screen and (max-width: 767px){
    html {
        font-size: calc(1px * var(--mobile-rem-size));
    }
}
body {
    font-family: var(--body-font);
    font-size: inherit;
}
div, ul, ol, p {
    font-family: inherit;
    font-size:   inherit;
    font-weight: inherit;
    line-height: inherit;
}
p, ul, ol {
    margin-bottom: var(--margin-bottom-default);
}




/* ================== */
/* BUTTONS */
/* ================== */
@media (min-width: 992px) {
    .btn-secondary:hover::before {
        opacity: 1;
        background: var(--blue-gradient-btn);  
    }
    .btn-secondary:hover {
        background-color: var(--color-blue);
    }
    .btn-primary:hover::before {
        opacity: 1;
        background: var(--darkblue-gradient-btn);  
    }
    .btn-primary:hover {
        background-color: var(--color-darkblue);
    }    
    .btn:hover span {
        padding-right: 15px;
    }    
    .btn:hover span::after {
        opacity: 1;
    }    
}
.btn-tertiary {
    color: var(--color-darkblue);
    background-color: var(--color-gray);
}
.btn-secondary::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--blue-gradient-btn);
    opacity: 0;
    transition: .325s ease-in-out;
    z-index: -1;
}
.btn-secondary {
    position: relative;
    background-color: var(--color-blue);
    overflow: hidden;
    z-index: 1;
}
.btn-primary::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--darkblue-gradient-btn);
    opacity: 0;
    transition: .325s ease-in-out;
    z-index: -1;
}
.btn-primary {
    position: relative;
    background-color: var(--color-darkblue);
    overflow: hidden;
    z-index: 1;
}
.btn span::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translatey(-50%);
    width: 20px;
    height: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-ornament.svg');
    transition: var(--btn-fx-speed) ease-out;
    opacity: 0;
}
.btn span {
    position: relative;
    transition: var(--btn-fx-speed) ease-out;   
}
.btn{
    --button-rem-size: 20;
    
    display: inline-block;
    max-width: 100%;
    
    
    font-family: var(--heading-font);
    font-size: calc(1em * (var(--button-rem-size) / var(--desktop-rem-size)));
    font-weight: 700;
    line-height: 28px;
    text-transform: uppercase;
    

    border-radius: calc(1em * (8 / var(--button-rem-size)));
    border-style: solid;
    border-color: transparent;
    border-width: calc(1em * (0 / var(--button-rem-size)));
    
    
    padding-top: calc(1em * (11 / var(--button-rem-size)));
    padding-left: calc(1em * (18 / var(--button-rem-size)));
    padding-right: calc(1em * (18 / var(--button-rem-size)));
    padding-bottom: calc(1em * (11 / var(--button-rem-size)));
    
    --btn-fx-speed: 0.235s;
    
    transition: 
        all 0s,
        background-position var(--btn-fx-speed) ease-out,
        background-color var(--btn-fx-speed) ease-out,
        background var(--btn-fx-speed) ease-out,
        border-color var(--btn-fx-speed) ease-out,
        color var(--btn-fx-speed) ease-out,
        top var(--btn-fx-speed) ease-out,
        left var(--btn-fx-speed) ease-out,
        right var(--btn-fx-speed) ease-out,
        bottom var(--btn-fx-speed) ease-out,
        box-shadow var(--btn-fx-speed) ease-out,
        padding var(--btn-fx-speed) ease-out,
        transform var(--btn-fx-speed) ease-out
    ;
}


.postscript-contact .wpcf7-submit,
.main-contact-form .wpcf7-submit,
.page-section .btn,
.header .btn,
.footer .btn,
.home .btn {
    min-width: calc(1em * (261 / var(--button-rem-size)));
    max-width: 100%;
}




/* ================== */
/* HEADER */
/* ================== */
.header-col--right .header__phone--link {
    font-size: calc(1em * (30 / var(--desktop-rem-size)));
    font-weight: 700;
    background: var(--darkblue-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;    
}
.header-service-text span::before {
    display: inline-flex;
    content: '';
    position: relative;
    margin-top: 5px;
    margin-right: 8px;
    width: 15px;
    height: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-location.svg');
}
.header-service-text span {
    display: inline-flex;
}
.header-service-text {
    display: inline-flex;
    margin-bottom: 18px;    
    color: var(--color-black);
}
.header-col--main img {
    width: calc(1em * (314 / var(--desktop-rem-size)));
    height: calc(1em * (105 / var(--desktop-rem-size)));
}
.header-col--right {
    align-items: flex-end;
}
.header-col--main {
    align-items: center;
}
.header-col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.nav-bar .container-lg {
    padding: 0px 40.5px;
    background-color: var(--color-white);
    border-radius: calc(1em * (8 / var(--desktop-rem-size)));
    box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.2);
}
.nav-bar {
    padding-bottom: calc(1em * (20 / var(--desktop-rem-size)));
}
.header,
.nav-bar {
    background-color: var(--color-gray);
}
@media (max-width: 991px) {
    .nav-bar {
        padding-bottom: 0;
    }
}




/* ================== */
/* PAGE SECTIONS */
/* ================== */
.company-title {
    margin-top: calc(100vw * (30 / var(--desktop-screen-size)));
    width: calc(100vw * (512 / var(--desktop-screen-size)));
    height: calc(100vw * (155 / var(--desktop-screen-size)));    
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-company-title.svg');
}
.page-section--hero .hero-header .slogan span {
    display: block;
    font-size: calc(100vw * (100 / var(--desktop-screen-size)));
    background: var(--darkblue-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.page-section--hero .hero-header .slogan {
    line-height: 1;
}
.page-section--hero .hero-header {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    text-transform: uppercase;
    color: var(--color-black);
    font-size: calc(100vw * (66 / var(--desktop-screen-size)));
    font-weight: 800;
}
.page-section--hero .hero-content {
    position: absolute;
    top: calc(100vw * (44 / var(--desktop-screen-size)));
    right: calc(100vw * (226 / var(--desktop-screen-size)));
}
.page-section--hero {
    position: relative;
    width: 100vw;
    height: calc(100vw * (702 / var(--desktop-screen-size)));
    background-size: auto 101%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-bg-hero.png');
    background-color: var(--color-gray);
}
@media screen and (max-width: 991px) {
    .company-title {
        width: calc(100vw * (298 / var(--mobile-screen-size)));
        height: calc(100vw * (90 / var(--mobile-screen-size)));            
    }
    .page-section--hero .hero-header .slogan span {
        font-size: calc(100vw * (90 / var(--mobile-screen-size)));
    }
    .page-section--hero .hero-header {
        font-size: calc(100vw * (45 / var(--mobile-screen-size)));
    }
    .page-section--hero .hero-content {
        top: calc(100vw * (43 / var(--mobile-screen-size)));
        right: calc(100vw * (45 / var(--mobile-screen-size)));        
    }
    .page-section--hero {
        height: calc(100vw * (632 / var(--mobile-screen-size)));
    background-size: cover;
    transform: scale(1.03);        
        background-image: url('/wp-content/uploads/midstateplumbing-bg-hero-mobile.svg');
    }
}




.multi-section-wrapper::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: calc(100vw * (935 / var(--desktop-screen-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;    
    background-image: url('/wp-content/uploads/midstateplumbing-texture-lines.svg');
}
.multi-section-wrapper {
    position: relative;
    background-image: var(--darkblue-gradient);
}
.page-section--main .col-lg-3 {
    display: flex;
    align-items: center;
}
.page-section--main {
    color: var(--color-white);
    position: relative;
    padding-top: calc(1em * (0 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (0 / var(--desktop-rem-size)));
    transform: translateY(-1px);
}
@media screen and (max-width: 991px) {
    .page-section--main .guarantee-card {
        width: calc(1em * (313 / 20));
        height: calc(1em * (87 / 20));        
    }
    .page-section--main .guarantee-cards {
        margin-bottom: 30px;
    }
    .page-section--main .hidden {
        display: block;
    }
    .page-section--main .col-lg-3 {
        display: none;
    }    
    .page-section--main {
        padding-top: calc(1em * (100 / var(--mobile-rem-size)));
        padding-bottom: calc(1em * (56 / var(--mobile-rem-size)));
    }
}




.page-section--cta {
    position: relative;
    padding-top: calc(1em * (102 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (80 / var(--desktop-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/');
}
@media screen and (max-width: 991px) {
    .page-section--cta {
        padding-top: calc(1em * (0 / var(--mobile-rem-size)));
        padding-bottom: calc(1em * (94 / var(--mobile-rem-size)));
    }
}




.page-section--committed-to-action .text-block::after {
    display: block;
    content: '';
    position: relative;
    width: 100%;
    max-width: 751px;
    height: 8px;
    background-color: var(--color-darkblue);
    margin-bottom: 30px;
}
.page-section--committed-to-action .section-header {
    color: var(--color-darkblue);
    max-width: 750px;
}
.page-section--committed-to-action::before {
    display: block;
    content: '';
    position: absolute;
    top: 249px;
    left: 0;
    width: 100vw;
    height: calc(100vw * (335 / var(--desktop-screen-size)));
    background-size: 101% auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-transition-topwaves.svg');
}
.page-section--committed-to-action {
    position: relative;
    background-image: linear-gradient(to bottom, black, black 250px, var(--color-blue) 250px, var(--color-blue));
}
.page-section--committed-to-action > .container > .row {
    position: relative;
    background-color: #ffffff;
    z-index: 20;
    padding: calc(1em * (71 / var(--desktop-rem-size))) calc(1em * (95 / var(--desktop-rem-size)));
    border-radius: calc(1em * (20 / var(--desktop-rem-size)));
}
@media (max-width: 991px) {
    .page-section--committed-to-action > .container > .row {
        z-index: 20;
        padding: calc(1em * (54 / var(--mobile-rem-size))) calc(1em * (53 / var(--mobile-rem-size)));
        border-radius: calc(1em * (20 / var(--mobile-rem-size)));
    }
}
@media (max-width: 466px) {    
    .page-section--committed-to-action .section-header h2 {
        font-size: 24px;
    }
    .page-section--committed-to-action > .container > .row {
       padding: calc(1em * (54 / var(--mobile-rem-size))) calc(1em * (10 / var(--mobile-rem-size)));
    }    
}



.page-section--trusted-solutions {
    position: relative;
    padding-top: calc(1em * (80 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (100 / var(--desktop-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/');
    background-color: var(--color-blue);
    color: var(--color-white);
    z-index: 1;
}
@media screen and (max-width: 991px) {
    .page-section--trusted-solutions .widget-block::after {
        display: block;
        content: '';
        position: relative;
        width: 495px;
        height: 314px;
        margin: auto;
        margin-top: 130px;
        border-radius: 10px;
        background-color: red;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        background-image: url('/wp-content/uploads/midstateplumbing-accent-trusted-plumbing-mobile.png');
    }
    .page-section--trusted-solutions .widget-block {
        position: relative;
    }
    .page-section--trusted-solutions {
        padding-top: calc(1em * (50 / var(--mobile-rem-size)));
        padding-bottom: calc(1em * (59 / var(--mobile-rem-size)));
    }
}
@media (max-width: 525px) {
    .page-section--trusted-solutions .widget-block::after {
        width: calc(100vw - 20px);
        left: 50%;
        transform: translatex(-50%);
    }     
}



.page-section--testimonials .image-wrapper .image::before {
    display: block;
    content: '';
    position: absolute;
    width: 695px;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-accent-testimonials.png')
}
.page-section--testimonials .image-wrapper .image {
    position: relative;
}
.page-section--testimonials .image-wrapper {
    width: 100%;
}
.page-section--testimonials .image img {
    height: calc(1em * (637 / var(--desktop-rem-size)));
}
.page-section--testimonials::after {
    display: block;
    content: '';
    position: absolute;
    bottom: calc(100vw * (-3 / var(--desktop-screen-size)));
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    max-width: 1461px;
    height: calc(1em * (141 / var(--desktop-rem-size)));
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-testimonial-text.svg');
}
.page-section--testimonials {
    position: relative;
    padding-top: calc(1em * (0 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (0 / var(--desktop-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/');
    background-color: var(--color-darkblue);
    color: var(--color-white);
}
@media screen and (max-width: 991px) {
    .page-section--testimonials::after {
        height: calc(100vw * (434 / var(--mobile-screen-size)));
        background-image: url('/wp-content/uploads/midstateplumbing-accent-testimonials-mobile.png');
    }    
    .page-section--testimonials {
        padding-top: calc(1em * (100 / var(--mobile-rem-size)));
        padding-bottom: calc(100vw * ((434 + 206) / var(--mobile-screen-size)));
    }
}




.multi-section-wrapper-2 {
    background-image: var(--lightblue-gradient);
}
.page-section--why-us .section-header h2 {
    color: var(--color-darkblue);
    margin-bottom: calc(1em * (20 / var(--desktop-rem-size)));
}
.page-section--why-us::before {
    display: block;
    content: '';
    position: absolute;
    top: calc(1em * (-203 / var(--desktop-rem-size)));
    left: 0;
    width: 100vw;
    height: calc(100vw * (935 / var(--desktop-screen-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-texture-lines-whyus.svg');    
    transform: scaleX(1.02);
}
.page-section--why-us {
    position: relative;
    padding-top: calc(1em * (100 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (100 / var(--desktop-rem-size)));
}
@media screen and (max-width: 991px) {
    .page-section--why-us::before {
        background-image: none;
    }    
    .page-section--why-us {
        padding-top: calc(1em * (60 / var(--mobile-rem-size)));
        padding-bottom: 0;
    }
}




.page-section--professional-plumbing .image img {}
.page-section--professional-plumbing .image-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.page-section--professional-plumbing .subheader {
    font-size: calc(1em * (22 / 36));
    letter-spacing: calc(1em * (4.4 / 22));
}
.page-section--professional-plumbing .section-header h2 {
    font-size: calc(1em * (36 / var(--desktop-rem-size)));
}
.page-section--professional-plumbing .callout-block {
    border-left: 8px solid var(--color-darkblue);
    padding-left: 19px;
}
.page-section--professional-plumbing::after {
    display: block;
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 100vw;
    height: calc(100vw * (420 / var(--desktop-screen-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-transition-mountains.png');
    transform: scale(1.02);
}
.page-section--professional-plumbing {
    position: relative;
    padding-top: calc(1em * (0 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (552 / var(--desktop-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/');
    color: var(--color-white);
}
@media (max-width: 992px) {
    .page-section--professional-plumbing .accent-image {
        width: calc(1em * (485 / var(--mobile-rem-size)));
        height: calc(1em * (314 / var(--mobile-rem-size)));
    }
    .page-section--professional-plumbing .image {
        background-size: cover;
        background-position: center center;
        background-image: url('/wp-content/uploads/midstateplumbing-accent-professional-plumbing-mobile.png');
    }
    .page-section--professional-plumbing .image img {
        display: none;
    }
    .page-section--professional-plumbing .subheader {
        display: block;
        margin-top: calc(1em * (20 / var(--desktop-rem-size)));
    }
    .page-section--professional-plumbing::after {
      width: 100vw;
      height: calc(100vw * (218 / var(--mobile-screen-size)));
      background-image: url('/wp-content/uploads/midstateplumbing-transition-mountains.png');
    }    
    .page-section--professional-plumbing {
        padding-top: calc(1em * (60 / var(--mobile-rem-size)));
        padding-bottom: calc(45px + 100vw * 218 / 576);
    }
}
@media (max-width: 480px) {
    .page-section--professional-plumbing .image {
        background-size: contain;
    }
}




/* ================== */
/* FOOTER */
/* ================== */
.footer .footer-col--left .social-icon-wrapper:hover .social-icons__icon a {
    color: var(--color-white);
}
.footer .footer-col--left .social-icon-wrapper:hover .social-icons__icon {
    background-color: var(--color-darkblue);
    transform: translateY(-10px);
}
.footer .footer-col--left .social-icons__icon a {
    color: var(--color-blue);
    padding: 8px 13px;
}
.footer .footer-col--left .social-icons__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 5px;
    background-color: var(--color-white);
    transition: .324s ease-out;
}
.footer .footer-col--left .social-icons {
    display: flex;
    justify-content: center;
    gap: 24px;
}
.footer .footer-col--left .footer-box::before {
    display: block;
    content: '';
    position: absolute;
    top: -16px;
    left: calc(50% - 4px);
    width: calc(1em * (39 / var(--desktop-rem-size)));
    height: calc(1em * (37 / var(--desktop-rem-size)));    
    transform: translateX(-50%);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-ornament.svg');
}
.footer .footer-col--left .footer-box span:last-child::before {
    display: inline-block;
    content: '';
    position: relative;
    width: 28px;
    height: 28px;
    margin-right: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-stopwatch.svg');
}
.footer .footer-col--left .footer-box span:last-child {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer .footer-col--left .footer-box {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 30px;
    font-size: calc(1em * (20 / var(--desktop-rem-size)));
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-footerbox-border.png');
}
.footer .footer-col--right .button-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
}
.footer .footer-col--right .footer-box {
    display: flex;
    justify-content: center;
    height: 100%;
}
.footer .header__phone--link::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-phone-light.svg');    
}
.footer .footer-col--main .header__phone--link {
    font-size: 30px;
    font-weight: 800;
}
.footer .footer-col--main .google-maps-link {
    text-decoration: underline;
}
.footer .footer-col--main a {
    color: var(--color-white);
}
.footer .company-address::before {
    display: inline-flex;
    content: '';
    position: relative;
    margin-right: 4px;
    width: 15px;
    height: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-location-dark.svg');    
}
.footer-wrapper {
    display: flex;
    justify-content: space-between;
}
.footer {
    color: var(--color-white);
    background: linear-gradient(180deg, #35A2DB 0%, #293577 100%);
}
.copyright a {
    color: white;
}
.copyright {
    background-color: #293577;
    color: white;
}
@media (max-width: 992px) {
    .footer-col--right .footer-box {
        width: calc(1em * (359 / 20)) !important;
        height: calc(1em * (215 / var(--mobile-rem-size))) !important;
    }
    .footer .footer-col--left .footer-box::before {
        left: calc(50% - 1px);
    }    
    .footer-col--left .footer-box {
        width: calc(1em * (359 / 20)) !important;
        height: calc(1em * (215 / 20)) !important;
        padding: calc(1em * (30 / 20)) 0px !important;
        font-size: calc(1em * (20 / 20)) !important;
        gap: 16px;
        background-position: 4px center;
        background-size: contain !important;
    }
    .footer-col--left {
        font-size: calc(1em * (20 / var(--mobile-rem-size)));    
    }
    .footer-col--main {
        text-align: center;
        margin-bottom: 10px;
    }
    .footer-wrapper {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 30px;
    }
}




/* ================== */
/* WIDGETS */
/* ================== */
.cta.service::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-247service.svg');
}
.cta.drain-cleaning::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-draincleaning.svg');
}
.cta.water-heaters::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-waterheaters.svg');
}
.cta.plumbing::before {
    background-image: url('/wp-content/uploads/midstateplumbing-cta-plumbing.svg');
}
@media (min-width: 992px) {    
    .cta:hover::before {
        transform: translateY(-30px);    
    }
}
.cta::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(1em * (248 / var(--local-rem-size)));
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: none;
    transition: .125s ease-out;
}
.cta-label {
    color: var(--color-white);
    font-weight: 700;
    text-transform: uppercase;
}
.cta {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    width: calc(1em * (261 / var(--local-rem-size)));
    height: calc(1em * (303 / var(--local-rem-size)));
}
.cta-slider {
    display: flex;
    justify-content: space-between;
}
.cta-slider-wrapper {
    --local-rem-size: 30;
    font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)));
} 
@media (min-width: 992px) and (max-width: 1199px) {
    .cta-slider-wrapper {
        font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)) * 933/1113);
    }
}
@media (max-width: 991px) {
    .cta {
        margin-left: calc(1em * (16 / var(--local-rem-size)));
        margin-right: calc(1em * (16 / var(--local-rem-size)));
    }
    .cta-slider-wrapper {
        position: relative;
        width: 100vw;
        left: 50%;
        transform: translatex(-50%);
    }
    #cta-slider .slick-dots .slick-active button::before {
        background-color: var(--color-white);
    }
    #cta-slider .slick-dots button:hover::before {
        background-color: var(--color-white);
    }
    #cta-slider .slick-dots button::before {
        background-color: transparent;
        border-radius: 100%;
        border: 2px solid var(--color-white);
        color: transparent !important;
        opacity: 1 !important;
    }
    #cta-slider .slick-dots {
        top: 100%;
        bottom: auto;
    }
}




.guarantee-card.same-day span::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-stopwatch.svg');
}
.guarantee-card.trusted-plumbing span::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-trust.svg');
}
.guarantee-card span::before {
    display: inline-flex;
    content: '';
    position: relative;
    width: calc(1em * (80 / var(--desktop-rem-size)));
    height: calc(1em * (80 / var(--desktop-rem-size)));
    margin-right: calc(1em * (16 / var(--desktop-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: none;
}
.guarantee-card span {
    display: flex;
    align-items: center;
    position: relative;
}
.guarantee-card {
    display: flex;
    justify-content: center;
    font-size: calc(1em * (20 / var(--desktop-rem-size)));
    font-weight: 800;
    text-transform: uppercase;
    width: calc(1em * (261 / 20));
    height: calc(1em * (121 / 20));
    border-radius: calc(1em * (5 / 20));
    background-color: rgba(255, 255, 255, 0.50);
}
.guarantee-cards {
    display: flex;
    flex-direction: column;
    gap: calc(1em * (27 / var(--desktop-rem-size)));
}
@media (max-width: 991px) {
    .guarantee-card span::before {
        width: calc(1em * (60 / var(--mobile-rem-size)));
        height: calc(1em * (60 / var(--mobile-rem-size)));
        margin-right: calc(1em * (16 / var(--mobile-rem-size)));
    }    
    .guarantee-card {
        font-size: calc(1em * (20 / var(--mobile-rem-size)));
    }
}




.reputation-item.brand-expertise::before {
        background-image: url('/wp-content/uploads/midstateplumbing-icon-leader.svg');
}
.reputation-item.quality-commitment::before {
        background-image: url('/wp-content/uploads/midstateplumbing-icon-trophy.svg');
}
.reputation-item.plumbing-service::before {
        background-image: url('/wp-content/uploads/midstateplumbing-icon-repairs.svg');
}
.reputation-item::before {
    display: inline-block;
    content: '';
    position: relative;
    width: calc(1em * (80 / 20));
    height: calc(1em * (80 / 20));
    margin-right: calc(1em * (16 / 20));
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: none;
}
.reputation-item {
    display: flex;
    align-items: center;
    position: relative;
    font-size: calc(1em * (20 / var(--desktop-rem-size)));
    font-weight: 800;
    color: var(--color-darkblue);
    text-transform: uppercase;
}
.reputation-list {
    display: flex;
    justify-content: space-between;
}
@media (max-width: 991px) {
    .reputation-item::before {
        width: calc(1em * (30 / 20));
        height: calc(1em * (30 / 20));
    }    
    .reputation-list {
        flex-direction: column;
        gap: 20px;
    }
}




.why-us-label::before {
    display: inline-block;
    content: '';
    position: relative;
    top: 0;
    left: 0;
    width: calc(1em * (50 / var(--local-rem-size)));
    height: calc(1em * (50 / var(--local-rem-size)));    
    margin-right: calc(1em * (24 / var(--local-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-checkmark.svg');
}
.why-us-label {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--color-darkblue);
}
.why-us-slide {
    display: flex;
    padding: calc(1em * (17 / var(--local-rem-size))) calc(1em * (24 / var(--local-rem-size)));
    padding-right: calc(1em * (39 / var(--local-rem-size)));
    border-radius: calc(1em * (5 / var(--local-rem-size)));
    background-color: rgba(255, 255, 255, 0.5);
}
.why-us-slider {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: calc(1em * (45 / var(--local-rem-size)));
}
.why-us-slider-wrapper {
    --local-rem-size: 22;
    font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)));
    margin-bottom: calc(1em * (44 / var(--local-rem-size)));
}
@media (max-width: 992px) {
    .why-us-label::before {
        width: calc(1em * (30 / var(--local-rem-size)));
        height: calc(1em * (30 / var(--local-rem-size)));
        background-size: cover;
    }    
    .why-us-slider {
        display: flex;
        flex-direction: column;
        gap: calc(1em * (20 / var(--local-rem-size)));
    }
    .why-us-slider-wrapper {
        font-size: calc(1em * (var(--local-rem-size) / var(--mobile-rem-size)));
    }
}
@media (max-width: 435px) {
    .why-us-label::before {
        position: absolute;
        top: 50%;
        transform: translatey(-50%);
    }
    .why-us-label {
        position: relative;
        padding-left: calc(1em * (40 / var(--local-rem-size)));
    }
    .why-us-slider-wrapper {
        --local-rem-size: 16;
    }
}




.postscript-contact .button-wrapper {
    text-align: center;
}
.postscript-contact .postscript-contact-header h2:last-child {
    margin-top: calc(1em * (15 / 40));
    text-align: right;
}
.postscript-contact .postscript-contact-header h2:first-child {
    margin-bottom: calc(1em * (15 / 40));
}
.postscript-contact .postscript-contact-header h2 {
    font-size: 40px;
    font-weight: 800;
    color: var(--color-darkblue);
}
.postscript-contact .postscript-contact-header {
    max-width: calc(1em * (409 / var(--desktop-rem-size)));
    margin: auto;
}
.postscript-contact .company-title {
    width: calc(1em * (407 / var(--desktop-rem-size)));
    height: calc(1em * (122 / var(--desktop-rem-size)));
    margin-top: 0px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-company-title.png');
}
.postscript-contact .postscript-row {
    display: flex;
    justify-content: flex-end;
}
.postscript-contact::before {
    display: block;
    content: '';
    position: absolute;
    width: calc(1em * (680 / var(--desktop-rem-size)));
    height: calc(1em * (728 / var(--desktop-rem-size)));    
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-bg-contactform.svg');
}
.postscript-contact {
    position: relative;
    padding-top: calc(1em * (36 / var(--desktop-rem-size)));
    padding-bottom: calc(1em * (100 / var(--desktop-rem-size)));
}
@media (max-width: 991px) {
    .postscript-contact::before {
        display: none;
    }
    .postscript-contact .company-title {
        width: calc(1em * (407 / var(--mobile-rem-size)));
        height: calc(1em * (122 / var(--mobile-rem-size)));
    }    
}
@media (max-width: 480px) {    
    .postscript-contact .company-title {
        width: 100%;
        height: calc(1em * (90 / var(--mobile-rem-size)));
        background-size: contain;
    }
}




.service-detail-card.emergency-plumbing .service-detail-header span::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-repairs.svg');
}
.service-detail-card.sewer-line .service-detail-header span::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-sewerline.png');
}
.service-detail-card.water-heater .service-detail-header span::before {
    background-image: url('/wp-content/uploads/midstateplumbing-icon-waterheaters-drops.png');
}
.service-detail-card .service-detail-header span::before {
    display: inline-block;
    content: '';
    position: relative;
    width: calc(1em * (35 / 24));
    height: calc(1em * (40 / 24));
    margin-right: calc(1em * (14 / 24));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: none;
}
.service-detail-card .service-detail-header span {
    position: relative;
    display: flex;
    align-items: center;
    font-size: calc(1em * (24 / var(--local-rem-size)));
    font-weight: 800;
    text-transform: uppercase;
}
.service-detail-card .service-detail-header {
    margin-bottom: calc(1em * (10 / var(--local-rem-size)));
}
.service-detail-card {
    padding-left: calc(1em * (18 / var(--local-rem-size)));
    max-width: calc(1em * (457 / var(--local-rem-size)));
    border-left: calc(1em * (9 / var(--local-rem-size))) solid var(--color-gray);
}
.slick-track .service-detail-slide,
.slick-track {
    display: flex;
    align-items: stretch;
    height: auto;
}
.service-detail-slider-wrapper {
    --local-rem-size: 18;
    font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)));
    margin: calc(1em * (30 / var(--local-rem-size))) 0px;
}
@media (max-width: 991px) {
    .service-detail-card {
        margin: 0px calc(1em * (50 / var(--local-rem-size)));
    }    
    .service-detail-slider-wrapper {
        position: relative;
        width: 100vw;
        left: 50%;
        transform: translateX(-50%);
    }    
}
@media (max-width: 450px) {
    .service-detail-card {
        max-width: calc(1em * (350 / var(--local-rem-size)));
    }     
}





/*
.page-section--trusted-solutions .slick-prev::before {
    display: block;
    content: '';
    position: relative;
    
    inset: 0;
    width: 20px;
    height: 28px;
    
    background-size: contain;
    background-repeat: no-repeat;    
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow-darkblue.svg');
    transform: scale(1);
}
.page-section--trusted-solutions .slick-next::before {
    display: block;
    content: '';
    position: relative;
    
    inset: 0;
    width: 20px;
    height: 28px;
    
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow-darkblue.svg');
    transform: scale(-1);
}
.page-section--trusted-solutions .slick-prev {
    transform: translateX(-80%);
    padding-right: 7px;
}
.page-section--trusted-solutions .slick-next {
    transform: translateX(80%);
    padding-left: 7px;
}
.page-section--trusted-solutions .slick-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    top: auto;
    bottom: -80px;
    left: 46%;
    width: 46px;
    height: 46px;
    border-radius: 100%;
    background-color: var(--color-white);
}
.page-section--trusted-solutions .slick-slider {
    margin-top: calc(1em * (40 / var(--desktop-rem-size))) !important;
    width: 100%;
}
.page-section--trusted-solutions {
    padding-bottom: calc(1em * (185 / var(--desktop-rem-size)));
}
.slick-prev::before {
    display: block;
    content: '';
    position: absolute;
    
    inset: 0;
    
    background-size: cover;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow.svg');
    transform: scale(1);
}
.slick-next::before {
    display: block;
    content: '';
    position: absolute;
    
    inset: 0;
    
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow.svg');
    transform: scale(-1);
    opacity: 1;
}
.slick-prev {
    transform: translateX(-100%);
}
.slick-next {
    transform: translateX(100%);
}
.slick-arrow {
    top: auto;
    bottom: -80px;
    left: 50%;
    width: 30px;
    height: 50px;
}
@media (max-width: 991px) {
    .page-section--trusted-solutions .slick-slider {
        margin-top: calc(1em * (0 / var(--desktop-rem-size))) !important;
        width: 100%;
    }    
}*/




.review-slider .review-logo {
    display: block;
    width: calc(1em * (30 / var(--local-rem-size)));
    height: calc(1em * (31 / var(--local-rem-size)));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-google.svg');
}
.review-slider .review-name {
    font-size: calc(1em * (24 / var(--local-rem-size)));
    font-weight: 700;
    text-transform: uppercase;
    padding-left: calc(1em * (53 / 24));
}
.review-slider .review-footer {
    display: flex;
    justify-content: space-between;
    max-width: 560px;
}
.review-slider .review-quote p {
    font-size: calc(1em * (22 / var(--local-rem-size)));
    line-height: calc(1em * (32 / 22));
    padding-top: calc(1em * (39 / 22));
    padding-left: calc(1em * (53 / 22));
    padding-right: calc(1em * (45 / 22));
    padding-bottom: calc(1em * (20 / 22));
}
.review-slider .review-quote::after {
    display: block;
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: calc(1em * (50 / var(--local-rem-size)));
    height: calc(1em * (30 / var(--local-rem-size)));
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-quote.svg');
}
.review-slider .review-quote::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(1em * (50 / var(--local-rem-size)));
    height: calc(1em * (30 / var(--local-rem-size)));
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-decoration-quote.svg');
}
.review-slider .review-quote {
    position: relative;
}
.review {
    width: calc(1em * (651 / var(--local-rem-size)));
    padding-right: calc(1em * (15 / var(--local-rem-size)));
}
.review-slider-wrapper {
    --local-rem-size: 18;
    font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)));
    padding-top: calc(1em * (40 / var(--local-rem-size)));
} 
@media (min-width: 992px) and (max-width: 1199px) {
    .review-slider-wrapper {
        font-size: calc(1em * (var(--local-rem-size) / var(--desktop-rem-size)) * 933/1113);
    }
}
@media (max-width: 992px) {  
    .review-slide {
        margin-left: calc(100vw * (100 / 576));
        margin-right: calc(100vw * (100 / 576));
    }    
    .review {
        max-width: 487px;
        margin-left: calc(1em * (15 / var(--local-rem-size)));
        margin-right: calc(1em * (15 / var(--local-rem-size)));        
    }
    .review-slider-wrapper {
        font-size: calc(1em * (var(--local-rem-size) / var(--mobile-rem-size)));
    }
}
@media (max-width: 510px) {
    .review-slider .review-name {
        padding-left: 0;
    }
    .review-slider .review-quote::after {
        display: block;
        content: '';
        position: absolute;
        bottom: 0;
        right: 0;
        width: calc(1em * (50 / var(--local-rem-size)));
        height: calc(1em * (30 / var(--local-rem-size)));
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        background-image: url('/wp-content/uploads/midstateplumbing-decoration-quote.svg');
    }
    .review-slider .review-quote::before {
        display: block;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: calc(1em * (50 / var(--local-rem-size)));
        height: calc(1em * (30 / var(--local-rem-size)));
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        background-image: url('/wp-content/uploads/midstateplumbing-decoration-quote.svg');
    }    
    .review-slider .review-quote p {
        font-size: calc(1em * (22 / var(--local-rem-size)));
        line-height: calc(1em * (32 / 22));
        padding-top: calc(1em * (39 / 22));
        padding-left: calc(1em * (0 / 22));
        padding-right: calc(1em * (0 / 22));
        padding-bottom: calc(1em * (39 / 22));
        margin-bottom: 30px;
    }    
    .review {
        width: 300px;
        padding-right: calc(1em * (0 / var(--local-rem-size)));
        margin: 0 calc(1em * (60 / var(--local-rem-size)));
    }
}




/* ================== */
/* SLICK */
/* ================== */
.page-section--trusted-solutions .slick-prev::before {
    display: block;
    content: '';
    position: relative;
    inset: 0;
    width: 20px;
    height: 28px;
    background-size: contain;
    background-repeat: no-repeat;    
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow-darkblue.svg');
    transform: scale(1);
}
.page-section--trusted-solutions .slick-next::before {
    display: block;
    content: '';
    position: relative;
    inset: 0;
    width: 20px;
    height: 28px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow-darkblue.svg');
    transform: scale(-1);
}
.page-section--trusted-solutions .slick-prev {
    transform: translateX(-80%);
    padding-right: 7px;
}
.page-section--trusted-solutions .slick-next {
    transform: translateX(80%);
    padding-left: 7px;
}
.page-section--trusted-solutions .slick-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    top: auto;
    bottom: -80px;
    left: 46%;
    width: 46px;
    height: 46px;
    border-radius: 100%;
    background-color: var(--color-white);
}


.slick-prev::before {
    display: block;
    content: '';
    position: absolute;
    
    inset: 0;
    
    background-size: cover;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow.svg');
    transform: scale(1);
}
.slick-next::before {
    display: block;
    content: '';
    position: absolute;
    
    inset: 0;
    
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/uploads/midstateplumbing-icon-arrow.svg');
    transform: scale(-1);
    opacity: 1;
}
.slick-prev {
    transform: translateX(-100%);
}
.slick-next {
    transform: translateX(100%);
}
.slick-arrow {
    top: auto;
    bottom: -80px;
    left: 50%;
    width: 30px;
    height: 50px;
}




/* Error Message Position */
.wpcf7-response-output {
    right: 0;
    bottom: calc(100vw * (-80 / 1600)) !important;
}
@media (max-width: 1199px) {
    .wpcf7-response-output {
        bottom: calc(100vw * (-100 / 1600)) !important;
    }    
}
@media (max-width: 991px) {
    .wpcf7-response-output {
        bottom: -8% !important;
    }    
}




/* FORM FIELD SPACING */
.main-contact-form .cf-text {
    margin: 0;
}
.main-contact-form .h3 {
    margin-bottom: 0px;
}
.main-contact-form .row {
    margin-bottom: 50px;
}
.main-contact-form .row .col-lg-6.mb-3 {
    margin-bottom: 0px !important;
}
.main-contact-form .col-12,
.main-contact-form .col-lg-6 {
    margin: 10px 0px;
}
.main-contact-form .select2-container--default .select2-selection--single {
    margin-bottom: 10px;
}
/* SPACING FOR SIDEBAR BUTTON */
.sidebar-form__button .wpcf7-submit {
    margin-top: 15px;
}
/* SUBNAV WIDTH */
@media (min-width: 992px) {
    .main-navigation a {
        width: calc(100% + 15px);
    }
}
/* INTERNAL HEADER */
body:not(.home) .header {
    background-color: white;
}
body:not(.home) .nav-bar {
    padding-bottom: 0px;
    background-color: white;
}
body:not(.home) .nav-bar a {
    color: black;
}
body:not(.home) .nav-bar .container-lg {
    box-shadow: none;
    border-radius: 0px;
    background-color: transparent;
}
/* INTERNAL MOBILE PIC ALIGN */
@media (max-width: 992px) {
    body:not(.home) picture.alignright {
        display: flex;
        justify-content: center;
    }
}
/* STICKY IMAGE CUTOFF */
@media (min-width: 992px) {
    .page-template-page-conversion .conversion-content-two__sticky-image {
        top: 240px;
    }
}
/* SERVICE AREAS WIDTH */
@media (max-width: 992px) {
    .ryno-service-areas .rsa-pipe-template__region {
        width: 100%;
    }    
}