/*
 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
------------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&family=Titillium+Web:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700&display=swap');

/* COLORS */
:root {
    --color-blue-1: #196FB4;
    --color-blue-2: #2788C9;
    --color-blue-3: #2F9CD7;
    --color-blue-4: #63B8DD;
    --color-blue-5: #63CBE5;
    --color-blue-6: #7BD0E6;
    --color-blue-7: #ABDFEA;
    --color-teal: #5EC7CF;
    --color-yellow: #FFF33B;
    --color-mustard: #E0D354;
    --color-red: #BF2926;
    --color-orange: #F8B161;

    --primary-button-gradient: linear-gradient(to bottom, #196FB4 0%, #60C4D3 100%);
    --secondary-button-gradient: linear-gradient(to bottom, #F08B1A 0%, #F8B161 100%);
    --tertiary-button-gradient: linear-gradient(to right, #D9D9D9 0%, #FFF 100%);
}
/* TYPOGRAPHY */
:root {
    --home-heading-font: 'Titillium Web', sans-serif;
    --home-body-font: 'Nunito Sans', sans-serif;
    --heading-margin-bottom-default: 24px;
    --margin-bottom-default: 24px;
}
.home .h1,.home .h2,.home .h3,
.home .h4,.home .h5,.home .h6,
.home h1,.home h2,.home h3,
.home h4,.home h5,.home h6 {
    color: black;
    font-family: var(--home-heading-font);
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: var(--heading-margin-bottom-default);
}
.home h1 {
    /* Desktop/H1 */
    font-size: 44px;
    line-height: 100%;
}
.home h2 {
    /* Desktop/H2 */
    font-size: 42px;
    line-height: 100%;
}
.home h3 {
    /* Desktop/H3 */
    font-size: 30px;
    line-height: 100%;
}
.home p {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: var(--margin-bottom-default);
}
body {
    color: black;
    font-family: var(--home-body-font);
}
@media (max-width: 991.98px) {
    .home h1 {
        font-size: 25px;
    }
    .home h2 {
        font-size: 24px;
    }    
    .home h3 {
        font-size: 22px;
    }
    .home p {
        font-size: 16px;
        line-height: 24px;
    }
}
.section-header {
    color: var(--color-variant-name);
}
.callout-text {
    font-weight: 700;
}
/* COMMON STYLES */
.viewport-overflow-wrapper {
    overflow: hidden;
}
.wpcf7 p {
    margin: 0 !important;
}
.social-icons {
    display: flex;
    gap: 10px;
}
.button-wrapper {
    display: flex;
    gap: 10px;
}
.section-transition {
    position: absolute;
    bottom: calc(100vw * (0 / 1600));
    width: 100vw;
    height: calc(100vw * (450 / 1600));
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transform: scale(1.01);
}
.mobile-only {
    display: none;
}
@media (max-width: 991.98px) {
    .desktop-only {
        display: none;
    }
    .mobile-only {
        display: block;
    }
}
.slick-dots .slick-active button::before {
    border-color: dodgerblue;
    background-color: dodgerblue;
}
.slick-dots li button:hover::before {
    border-color: orange;
}
.slick-dots li button::before {
    content: '';
    border: 2px solid dodgerblue;
    background-color: transparent;
    border-radius: 100%;
    opacity: 1;
}


/* BUTTONS */
@media (min-width: 992px) {
    .btn.btn-tertiary:hover::before {
/*         rotate: 180deg; */
        background: var(--primary-button-gradient);
    }
    .btn.btn-secondary:hover::before {
        rotate: 180deg;
        background: var(--primary-button-gradient);
    }
    .btn:hover {
        padding-right: calc(11px + 24px);
    }
    .btn:hover::after {
        opacity: 1;
    }
}
.btn.btn-tertiary::before {
    background: var(--tertiary-button-gradient);
}
.btn.btn-secondary::before {
    color: black;
    background: linear-gradient(to bottom, #F08B1A 0%, #F08B1A 40%, #F8B161 60%, #F8B161 100%);
}
.btn.btn-primary::before {
    background: linear-gradient(to bottom, #196FB4 0%,#196FB4 42%, #60C4D3 65%, #60C4D3 100%);
}
.btn.btn-secondary {
    color: black;
}
.btn::after {
    --icon-size: 24px;
    display: block;
    content: '';
    position: absolute;
    right: 10px;
    top: 50%;
    width: var(--icon-size);
    height: var(--icon-size);
    transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/button-arrow.svg');
    opacity: 0;
    transition: var(--btn-fx-speed);
}
.btn::before {
    display: block;
    content: '';
    position: absolute;
    top: -200%;
    left: -50%;
    width: 200%;
    height: 500%;
    transition: var(--btn-fx-speed);
    z-index: -1;
}
.btn{
    position: relative;
    --button-rem-size: 17;
    
    display: inline-block;
    max-width: 100%;
    
    
    font-family: var(--home-heading-font);
    font-size: var(--button-rem-size);
    font-weight: 600;
    line-height: 17px;
    text-transform: uppercase;
    

    border-radius: 26px;
    border-style: solid;
    border-color: transparent;
    border-width: 0;
    
    
    padding-top: 18px;
    padding-left: 11px;
    padding-right: 11px;
    padding-bottom: 18px;
    
    --btn-fx-speed: 0.435s;
    overflow: hidden;
    z-index: 3;
      }
.postscript-contact .wpcf7-submit,
.main-contact-form .wpcf7-submit,
.page-section .btn,
.header .btn,
.footer .btn,
.home .btn {
    min-width: 261px;
    max-width: 100%;
}


.header .company-phone-wrapper a {
    color: white;
}
.company-phone-wrapper .phone-icon {
    line-height: 0px;
}
.company-phone-wrapper {
    display: flex;
    align-items: center;
    gap: 5px;
    font-family: var(--home-heading-font);
    font-weight: 600;
    font-size: 26px;
    text-decoration: underline;
}
@media (min-width: 992px) {
    .header .company-logo img {
        top: 10px;
    }	
    .serving-text-wrapper:hover::before {
        background-image: url('/wp-content/uploads/Group-826.svg');
    }    
    .serving-text-wrapper:hover a {
        color: var(--color-orange);
        text-decoration: none;
    }
    .company-phone-wrapper:hover .phone-icon svg {
        fill: var(--color-orange);
    }
    .company-phone-wrapper:hover,
    .company-phone-wrapper:hover span {
        color: var(--color-orange);
        text-decoration: none;
    }
}
.company-phone-wrapper .phone-icon svg {
    fill: white;
}
.serving-text-wrapper a {
    text-decoration: underline;
    color: white;
    text-align: center;
    font-weight: 600;
    line-height: 100%;
}
.serving-text-wrapper::before {
    --icon-size: 32px;
    display: block;
    content: '';
    position: relative;
    top: 2px;
    width: var(--icon-size);
    height: var(--icon-size);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/Group-8261.svg');
}
.serving-text-wrapper {
    display: flex;
    gap: 2px;
    font-size: 17px;
    text-transform: uppercase;
}

.header-col--center .header-box img {
    position: absolute;
    left: 50%;
    transform: translatex(-50%);
}
.header-col--right .header-box {
    align-items: flex-end;
}
.header-col--center .header-box {
    align-items: center;
}
.header-box {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 17px 0;
    height: 100%;
    padding-top: 17px;
    padding-bottom: 5px;
}
.header-wrapper {
    color: white;
    font-family: var(--home-heading-font);
    background: linear-gradient(to bottom, #000 0%, #6F6F6F 100%);
}
.main-navigation>li.has-dropdown:after {
    content: '';
}
.nav-wrapper {
    display: flex;
    gap: 0 295px;
}
.header-overbar-wrapper {
    background-color: var(--color-blue-1);
}
@media (min-width: 992px) and (max-width: 1199px) {
    .menu-item a {
        font-size: 12px;
    }
    .nav-wrapper {
        gap: 0 180px;
    }
}
@media (max-width: 991.98px) {
    .hamburger-inner::after,
    .hamburger-inner::before,
    .hamburger-inner {
        border-radius: 0;
        height: 7px;
    }
    .hamburger-box {
        width: 32px;
    }
    .mobile-header {
        background: linear-gradient(90deg, #000 0%, #999 100%);
    }
    .main-navigation a {
        color: black;
    }
    .main-navigation>li.has-dropdown:after {
        color: black;
    }
    .nav-wrapper {
        flex-direction: column;
        gap: unset;
    }
}


.page-section {
    position: relative;
}
.full-width-section::before {
    display: block;
    content: '';
    position: relative;
    width: 100vw;
    height: 70px;
    background: linear-gradient(270deg, #FFF 0%, #D9D9D9 100%);
}
.full-width-section {
    position: relative;
}
@media (max-width: 991.98px) {
    .full-width-section::before {
        height: 30px;
    }
}


.page-section--hero .image-wrapper {
    position: absolute;
    bottom: calc(100vw * (191 / 1600));
    left: calc(100vw * (229 / 1600));
    width: calc(100vw * (163 / 1600));
    height: calc(100vw * (79 / 1600));
}
.page-section--hero .button-wrapper {
    position: absolute;
    bottom: calc(100vw * (191 / 1600));
    right: calc(100vw * (229 / 1600));
}
.page-section--hero .hero-box-2 span:nth-child(3) {
    color: var(--color-red);
}
.page-section--hero .hero-box-2 span:nth-child(2) {
    color: var(--color-orange);
    margin: calc(100vw * (12 / 1600)) 0;
}
.page-section--hero .hero-box-2 span {
    color: var(--color-blue-1);
    font-size: calc(100vw * (42 / 1600));
    font-weight: 700;
}
.page-section--hero .hero-box-2 {
    right: calc(100vw * (229 / 1600));
}
.page-section--hero .hero-box-1 span:last-child {
    color: var(--color-blue-1);
    font-size: calc(100vw * (100 / 1600));
    line-height: 100%;
}
.page-section--hero .hero-box-1 {
    left: calc(100vw * (229 / 1600));
    font-size: calc(100vw * (44 / 1600));
}
.page-section--hero .hero-box span {
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;    
    font-family: var(--home-heading-font);
}
.page-section--hero .hero-box .text-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.page-section--hero .hero-box {
    position: absolute;
    top: calc(100vw * (64 / 1600));
    width: calc(100vw * (457 / 1600));
    height: calc(100vw * (234 / 1600));
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.68);
}
.page-section--hero::before {
    display: block;
    content: '';
    position: absolute;
    top: calc(100vw * (26 / 1600));
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: calc(100vw * (1548 / 1600));
    border: 3px solid #343434;
}
.page-section--hero {
    height: calc(100vw * (830 / 1600));
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/Hero-BG-Image-1.png');
    overflow: hidden;
}
@media (max-width: 758px) {
    .page-section--hero .image-wrapper {
        left: 50%;
        transform: translatex(-50%);
        bottom: calc(100vw * (40 / 320));
        width: calc(100vw * (117 / 320));
        height: calc(100vw * (56 / 320));
    }
    .page-section--hero .button-wrapper .btn {
        font-size: calc(100vw * (17 / 320));
        padding: calc(100vw * (18 / 320)) calc(100vw * (11 / 320));
        min-width: calc(100vw * (261 / 320));
    }
    .page-section--hero .button-wrapper {
        bottom: calc(100vw * (131 / 320));
        right: unset;
        left: 50%;
        transform: translatex(-50%);
    }
    .page-section--hero .hero-box-2 span:nth-child(2) {
        margin: calc(100vw * (11 / 320)) 0;
    }    
    .page-section--hero .hero-box-2 span {
        font-size: calc(100vw * (23 / 320));
    }    
    .page-section--hero .hero-box-2 {
        top: unset;
        bottom: calc(100vw * (222 / 320));
        right: unset;
    }
    .page-section--hero .hero-box-1 span:last-child {
        font-size: calc(100vw * (57 / 320));
    }
    .page-section--hero .hero-box-1 {
        top: calc(100vw * (20 / 320));
        left: unset;
        font-size: calc(100vw * (24 / 320));
    }
    .page-section--hero .hero-box {
        position: absolute;
        left: 50%;
        transform: translatex(-50%);
        width: calc(100vw * (262 / 320));
        height: calc(100vw * (149 / 320));
    }
    .page-section--hero {
        height: calc(100vw * (723 / 320));
    }
}


.multisection-wrapper::before {
    display: block;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/starburst-1.png');
}
.multisection-wrapper {
    position: relative;
    background: linear-gradient(180deg, #FFF 0%, #D9D9D9 100%);
}
@media (max-width: 991.99px) {
    .multisection-wrapper {
        padding-bottom: 40px;
    }
}


.page-section--main .section-transition {
    top: calc(100vw * (-50 / 1600));
    height: calc(100vw * (162 / 1600));
    background-image: url('/wp-content/uploads/Middle-striped-transition.png');
}
.page-section--main .section-content-wrapper {
    width: 100%;
    max-width: 946px;
    margin-left: auto;
    margin-right: auto;
}
.page-section--main {
    padding-top: calc(100vw * (208 / 1600));
    padding-bottom: 137px;
    z-index: 1;
}
@media (max-width: 991.99px) {
    .page-section--main {
        padding-top: calc(100vw * (71 / 320));
        padding-bottom: 0;
    }
}


.page-section--why-us .section-header span {
    font-weight: 400;
    letter-spacing: 2.1px;
}
.page-section--why-us {
    padding-bottom: 100px;
}
@media (max-width: 991.99px) {
    .page-section--why-us .row {
        flex-direction: column-reverse;
        gap: 40px 0;
    }
    .page-section--why-us {
        padding-top: 0;
        padding-bottom: 0;
    }
}


.page-section--testimonials .section-header .google::after {
    display: inline-block;
    content: '';
    position: relative;
    width: 98px;
    height: 33px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/google-logo.svg');
}
.page-section--testimonials .section-header .google {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 12px;
}
.page-section--testimonials .section-header span {
    color: #FFF;
    font-size: 18px;
    text-transform: capitalize;
}
.page-section--testimonials .section-header .stars::after {
    display: inline-block;
    content: '';
    position: relative;
    width: 147.429px;
    height: 26px;
    background-image: url('/wp-content/uploads/stars.svg');
}
.page-section--testimonials .section-header .stars {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 22px;
    color: var(--color-orange);
    margin-bottom: 10px;
}
.page-section--testimonials .section-header {
    text-align: center;
}
.page-section--testimonials {
    padding-top: 49px;
    padding-bottom: 49px;
    background-color: #606060;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/testimonials-bg.png');
}
@media (max-width: 991.99px) {
    .page-section--testimonials {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}


.page-section--experience .section-header span:nth-child(3) {
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 4.8px;
    margin-top: 9px;
}
.page-section--experience .section-header span:nth-child(2) {
    font-size: 83px;
    font-weight: 700;
    letter-spacing: 12.45px;
}
.page-section--experience .section-header span:nth-child(1) {
    font-size: 46px;
    letter-spacing: 6.9px;
}
.page-section--experience .section-header span {
    display: block;
    line-height: 100%;
    text-transform: uppercase;
    font-family: var(--home-heading-font);
}
.page-section--experience {
    text-align: center;
    padding-top: 60px;
    padding-bottom: calc(100vw * (130 / 1600));
    background: linear-gradient(to bottom, #FFF 0%, #C0C0C0 100%);
}
@media (max-width: 991.99px) {
    .page-section--experience .section-header span:nth-child(3) {
        font-size: 15px;
        line-height: 100%;
        letter-spacing: 2.25px;
        margin-top: 9px;
    }
    .page-section--experience .section-header span:nth-child(2) {
        font-size: 39px;
        font-weight: 700;
        letter-spacing: 5.85px;
        margin-top: 6px;
    }
    .page-section--experience .section-header span:nth-child(1) {
        font-size: 18px;
        letter-spacing: 2.3px;
    }
    .page-section--experience {
        padding-top: 36px;
        padding-bottom: 36px;
    }
}


.page-section--video .section-transition {
    top: calc(100vw * (-60 / 1600));
    height: calc(100vw * (152 / 1600));
    background-image: url('/wp-content/uploads/middle-striped-transition-blue.png');
}
.page-section--video .video-block {
    margin-top: 40px;
    margin-bottom: 40px;
}
.page-section--video .button-wrapper {
    justify-content: center;
}
.page-section--video .section-header h3 {
    color: white;
}
.page-section--video {
    padding-top: calc(100vw * (200 / 1600));
    padding-bottom: 100px;
    text-align: center;
    background-color: black;
}
@media (max-width: 991.99px) {
    .page-section--video .video-block iframe {
        width: calc(100vw * (300 / 576));
        height: calc(100vw * (168 / 576));
    }
    .page-section--video .video-block {
        width: calc(100vw * (300 / 576));
        height: calc(100vw * (168 / 576));
        margin: 20px auto 27px;
    }    
    .page-section--video .button-wrapper .btn:first-child {
        margin-bottom: 14px;
    }
    .page-section--video .button-wrapper {
        display: block;
    }
    .page-section--video .section-header {
        position: relative;
        left: 50%;
        transform: translatex(-50%);
        min-width: 320px;
        max-width: 520px;
    }
    .page-section--video {
        padding-top: 69px;
        padding-bottom: 40px;
    }
}


.page-section--accurate-installation .image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-section--accurate-installation .image-wrapper {
    position: relative;
    width: calc(100vw * (914 / 1600));
    height: 557px;
}
.page-section--accurate-installation .section-body {
    width: calc(100vw * (686 / 1600));
}
.page-section--accurate-installation .section-header span:last-child {
    font-size: 42px;
    margin-bottom: var(--margin-bottom-default);
}
.page-section--accurate-installation .section-header span:first-child {
    font-size: 26px;
    font-weight: 700;
}
.page-section--accurate-installation .section-header span {
    display: block;
    line-height: 100%;
    text-transform: uppercase;
    font-family: var(--home-heading-font);
}
.page-section--accurate-installation .section-content-wrapper {
    display: flex;
}
.page-section--accurate-installation .box-1 div {
    max-width: 359px;
    margin: auto;
}
.page-section--accurate-installation .box-1::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100vw * (686 / 1600));
    height: 100%;
    background-image: url('/wp-content/uploads/waves-bg-small.png');
    mix-blend-mode: multiply;
}
.page-section--accurate-installation .box-1 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
}
.page-section--accurate-installation {
    color: white;
    padding-top: 0px;
    padding-bottom: 0px;
    background: linear-gradient(180deg, #196FB4 0%, #60C4D3 100%);
}
@media (max-width: 991.99px) {
    .page-section--accurate-installation .section-header span:last-child {
        font-size: 24px;
    }
    .page-section--accurate-installation .section-header span:first-child {
        font-size: 20px;
    }
    .page-section--accurate-installation .box-1::before {
        width: 100%;
        background-size: cover;
    }
    .page-section--accurate-installation .box-1 {
        padding: 40px 10px 10px;
    }
    .page-section--accurate-installation .section-body {
        width: unset;
    }
    .page-section--accurate-installation .image-wrapper {
        width: 100%;
        height: calc(100vw * (278 / 320));
    }    
    .page-section--accurate-installation .section-content-wrapper {
        flex-direction: column;
    }
}


.page-section--reliable-service .image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-section--reliable-service .image-wrapper {
    position: relative;
    width: calc(100vw * (914 / 1600));
    height: 557px;
}
.page-section--reliable-service .section-body {
    width: calc(100vw * (686 / 1600));
}
.page-section--reliable-service .section-header span:last-child {
    font-size: 42px;
    margin-bottom: var(--margin-bottom-default);
}
.page-section--reliable-service .section-header span:first-child {
    font-size: 26px;
    font-weight: 700;
}
.page-section--reliable-service .section-header span {
    display: block;
    line-height: 100%;
    text-transform: uppercase;
    font-family: var(--home-heading-font);
}
.page-section--reliable-service .section-content-wrapper {
    display: flex;
}
.page-section--reliable-service .box-1 div {
    max-width: 359px;
    margin: auto;
}
.page-section--reliable-service .box-1::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100vw * (686 / 1600));
    height: 100%;
    background-image: url('/wp-content/uploads/waves-bg-small.png');
    mix-blend-mode: multiply;
}
.page-section--reliable-service .box-1 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
}
.page-section--reliable-service {
    padding-top: 0px;
    padding-bottom: 0px;
    background: linear-gradient(0deg, #F8B161 0%, #F08B1A 100%);
}
@media (max-width: 991.99px) {
    .page-section--reliable-service .section-header span:last-child {
        font-size: 24px;
    }
    .page-section--reliable-service .section-header span:first-child {
        font-size: 20px;
    }    
    .page-section--reliable-service .box-1::before {
        width: 100%;
        background-size: cover;
    }
    .page-section--reliable-service .box-1 {
        padding: 40px 10px 10px;
    }
    .page-section--reliable-service .section-body {
        width: unset;
    }
    .page-section--reliable-service .image-wrapper {
        width: 100%;
        height: calc(100vw * (278 / 320));
    }
    .page-section--reliable-service .section-content-wrapper {
        flex-direction: column-reverse;
    }
}


.page-section--maintenance-plans .image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-section--maintenance-plans .image-wrapper {
    position: relative;
    width: calc(100vw * (914 / 1600));
    height: 557px;
}
.page-section--maintenance-plans .button-wrapper {
    justify-content: center;
}
.page-section--maintenance-plans .section-body {
    width: calc(100vw * (686 / 1600));
}
.page-section--maintenance-plans .section-header span:last-child {
    font-size: 33px;
    margin-bottom: var(--margin-bottom-default);
    letter-spacing: 2.31px;
}
.page-section--maintenance-plans .section-header span:first-child {
    font-size: 42px;
    font-weight: 700;
    margin-bottom: var(--margin-bottom-default);
}
.page-section--maintenance-plans .section-header span {
    display: block;
    line-height: 100%;
    text-transform: uppercase;
    text-align: center;
    font-family: var(--home-heading-font);
}
.page-section--maintenance-plans .section-content-wrapper {
    display: flex;
}
.page-section--maintenance-plans .box-1 div {
    max-width: 457px;
    margin: auto;
}
.page-section--maintenance-plans .box-1::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100vw * (686 / 1600));
    height: 100%;
    background-image: url('/wp-content/uploads/waves-bg-small.png');
    mix-blend-mode: multiply;
}
.page-section--maintenance-plans .box-1 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
}
.page-section--maintenance-plans {
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: #E0D354;
}
@media (max-width: 991.99px) {
    .page-section--maintenance-plans .section-header span:last-child {
        font-size: 24px;
    }
    .page-section--maintenance-plans .section-header span:first-child {
        font-size: 20px;
    }    
    .page-section--maintenance-plans .section-header span:last-child {
        font-size: 18px;
        letter-spacing: 1.26px;
    }
    .page-section--maintenance-plans .section-header span:first-child {
        font-size: 24px;
        margin-bottom: 18px;
    }   
    .page-section--maintenance-plans .box-1::before {
        width: 100%;
        background-size: cover;
    }
    .page-section--maintenance-plans .box-1 {
        padding: 56px 10px;
    }
    .page-section--maintenance-plans .section-body {
        width: unset;
    }
    .page-section--maintenance-plans .image-wrapper {
        width: 100%;
        height: calc(100vw * (252 / 320));
    }
    .page-section--maintenance-plans .section-content-wrapper {
        flex-direction: column;
    }
}


.page-section--our-work {
    padding-top: 100px;
    padding-bottom: calc(100vw * (180 / 1600));
    background: linear-gradient(to bottom, #000 20%, #999 100%);
}
@media (max-width: 991.99px) {
    .page-section--our-work {
        padding-top: 40px;
        padding-bottom: calc(100vw * (90 / 576));
    }
}


.page-section--meet-the-team .section-transition {
    top: calc(100vw * (-100 / 1600));
    height: calc(100vw * (162 / 1600));
    background-image: url('/wp-content/uploads/Middle-striped-transition.png');    
}
.page-section--meet-the-team .button-wrapper {
    justify-content: center;
}
.page-section--meet-the-team .section-content-wrapper {
    max-width: 947px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.page-section--meet-the-team .section-header {
    margin-top: 60px;
}
.page-section--meet-the-team::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/starburst-2.png');
    z-index: -1;
}
.page-section--meet-the-team {
    padding-top: calc(100vw * (150 / 1600));
    padding-bottom: calc(100vw * (150 / 1600));
    background: linear-gradient(270deg, #FFF 0%, #D9D9D9 100%);
    z-index: 1;
}
@media (max-width: 991.99px) {
    .page-section--meet-the-team .section-header {
        text-align: left;
    }
    .page-section--meet-the-team {
        padding-top: calc(100vw * (90 / 576));
        padding-bottom: calc(100vw * (90 / 576));
    }
}


.page-section--premium-hvac .section-transition {
    top: calc(100vw * (-60 /1600));
    height: calc(100vw * (150 /1600));
    background-image: url('/wp-content/uploads/middle-striped-transition-red.png');
}
.page-section--premium-hvac::before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 897px;
    transform: translateY(-50%);
    mix-blend-mode: multiply;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/bg-texture-waves.png');
    z-index: -1;
}
.page-section--premium-hvac {
    padding-top: calc(100vw * (183 / 1600));
    padding-bottom: 100px;
    background: linear-gradient(to bottom, #F8B161 7.04%, #F08B1A 100%);
    z-index: 1;
}
@media (max-width: 991.99px) {
    .page-section--premium-hvac .section-header {
        max-width: 300px;
    }
    .page-section--premium-hvac .button-wrapper {
        justify-content: center;
    }
    .page-section--premium-hvac .row {
        flex-direction: column-reverse;
        gap: 40px 0;
    }
    .page-section--premium-hvac {
        padding-top: calc(100vw * (90 / 576));
        padding-bottom: 64px;
    }
}


.postscript-contact .btn:after {
    background-image: url('/wp-content/uploads/button-arrow-black.svg');
}
.postscript-contact .h2 {
    color: white;
    font-family: var(--home-heading-font);
    font-size: 57px;
    line-height: 100%;
}
.postscript-contact {
    padding: 100px 0;
    background: linear-gradient(to right, #60C4D3 0%, #196FB4 100%);
}
@media (min-width: 992px) {
	.postscript-contact .btn:hover::before {
		background: var(--tertiary-button-gradient);
	}	
    .postscript-contact .wpcf7 {
        max-width: 964px;
        margin: auto;
    }
}
@media (max-width: 576px) {
    .postscript-contact .h2 {
        font-size: 40px;
    }
    .postscript-contact .wpcf7 .input-fields-column .row {
        gap: 16px;
    }
    .postscript-contact {
        padding: 40px 0;
    }
}


.footer .company-phone-wrapper a {
    color: black;
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    line-height: 100%;
    margin-bottom: 28px;
}
.footer .company-phone-wrapper .phone-icon {
    display: none;
}
@media (min-width: 992px) {
    .footer .gmap-link:hover {
        color: var(--color-blue-6);
        cursor: pointer;
    }
    .social-icons__icon:hover a::before {
        width: 120%;
        height: 120%;
        background-color: var(--color-orange);
    }
    .social-icons__icon:hover a {
        color: black;
    }
}
.social-icons__icon a::before {
    display: block;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--color-blue-2);
    border-radius: 100%;
    z-index: -1;
}
.social-icons__icon a {
    --icon-size: 52px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: var(--icon-size);
    height: var(--icon-size);
    color: white;
    z-index: 1;
}
.social-icons {
    max-width: 206px;
    margin-top: 42px;
    flex-wrap: wrap;
    font-size: 30px;
    gap: 25px;
}
.footer .button-wrapper {
    flex-direction: column;
    gap: 34px;
}
.footer .footer-col--right .footer-box {
    align-items: center;
    width: min-content;
}
.footer .footer-col--right {
    display: flex;
    justify-content: flex-end;
}
.footer .footer-col--center .decoration {
    position: absolute;
    width: 359px;
    height: 368px;    
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}
.footer .footer-col--center {
    position: relative;
    display: flex;
    justify-content: center;
    text-align: center;
}
.footer .gmap-link {
    color: var(--color-blue-1);
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    text-decoration-line: underline;
}
.footer h6 {
    font-size: 18px;
}
.footer h5 {
    font-size: 22px;
}
.footer h6,
.footer h5 {
    margin-bottom: 0;
    line-height: normal;
}
.footer .footer-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
	z-index: 1;
}
.footer .container {
    padding: 48px;
    border-radius: 26px;
    background: linear-gradient(270deg, #FFF 0%, #D9D9D9 100%);
}
.footer {
    font-family: var(--home-heading-font);
    padding-top: 100px;
    padding-bottom: 100px;
    background: linear-gradient(90deg, #000 0%, #999 100%);
}
.copyright a,
.copyright p {
    color: white;
    font-size: 14px;
    line-height: normal;
    margin-bottom: 0px;
}
.copyright {
    padding: 11px 0;
    background-color: var(--color-blue-2);
}
.content-divider {
    max-width: 280px;
    height: 5px;
    flex-shrink: 0;
    background: #D9D9D9;
    margin: 9px 0;
}
@media (min-width: 992px) and (max-width: 1199px) {
    .footer-col--right .footer-box {
        max-width: 200px;
    }
}
@media (max-width: 991.98px) {
    .footer .footer-col--right {
        justify-content: center;
    }
    .footer .footer-col--center .decoration {
        top: -50px;
    }
    .footer .company-logo-wrapper,
    .footer .social-icons {
        margin-left: auto;
        margin-right: auto;
    }
    .footer .footer-col--center {
        margin: 80px 0 70px;
    }
    .footer .row {
        flex-direction: column;
    }
    .footer .container {
        padding-left: 10px;
        padding-right: 10px;
    }
    .footer {
        padding: 40px 10px;
    }
}


@media (min-width: 992px) {
    .cta:hover .cta-icon {
        top: -30px;
    }
}
.cta-icon {
    position: absolute;
    top: 0;
    transition: var(--cta-fx-speed);
    z-index: -1;
}
.cta {
    display: block;
    position: relative;
    width: 229.654px;
    height: 229.654px;
}
.cta-background {
    position: absolute;
    top: -10px;
    z-index: -1;
}
.cta-label span {
    position: relative;
    display: block;
    font-family: var(--home-heading-font);
    color: black;
    font-size: 26px;
    font-weight: 700;
    line-height: 100%;
    width: 160px;
    text-align: center;
    text-transform: uppercase;
}
.cta-label {
    display: flex;
    justify-content: center;
    position: relative;
    top: calc(50% + 15px);
    left: -15px;
    width: 261px;
}
.cta-slider {
    display: flex;
    justify-content: space-between;
}
.cta-slider .slick-disabled {
    opacity: 0.4;
}
.cta-slider-wrapper {
    --cta-fx-speed: 0.125s ease-out;
    margin-top: 60px;
}
@media (max-width: 991.98px) {
    .cta-slider {
        flex-direction: column;
        align-items: center;
        gap: 45px;
        margin-top: 86px;
        margin-bottom: 59px;
    }
    .cta-slider-wrapper {
        margin-top: 0px;
    }
}


.review .review-body {
    color: #282728;
    font-size: 18px;
    line-height: 24px;
}
.review .user-name span:last-child {
    color: #282728;
}
.review .user-name span:first-child {
    color: var(--color-blue-1);
    font-weight: 700;
}
.review .user-name {
    display: flex;
    flex-direction: column;
    font-size: 18px;
    font-style: normal;
    line-height: 28px;
}
.review .user-icon {
    --icon-size: 65px;
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: 100%;
    background-color: #A2A2A2;
}
.review .review-stars {
    width: 147.429px;
    height: 26px;
    margin-top: 9px;
    margin-bottom: 15px;
    background-image: url('/wp-content/uploads/stars.svg');
}
.review .review-name {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
}
.review {
    width: 359px;
    height: 273px;
    padding: 27px 24px;
    background: white;
    border-radius: 16px;
    box-shadow: 4px 4px 10px 5px rgba(0, 0, 0, 0.25);
}
.review-slider {
    display: flex;
    justify-content: space-between;
}
.review-slider-wrapper {
    margin: 30px 0;
}
@media (min-width: 992px) and (max-width: 1199px) {
    .review-slider .review {
        max-width: 300px;
    }
}
@media (max-width: 991.98px) {
    .review-slider .review-slide {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0px 10px;
    }
	.review-slider .review-slide {
		min-width: 350px;
	}
	.review-slider {
		width: 100vw;
		left: 50%;
		transform: translatex(-50%);
	}	
    .review .review-body {
        min-height: 150px;
    }
    .review {
        max-width: 296px;
        box-shadow: unset;
        margin: auto;
        height: unset;
    }
    .review-slider-wrapper {
        margin-bottom: 110px;
    }
}


.slick-prev::before,
.slick-next::before {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('/wp-content/uploads/slider-arrow.svg');
}
.slick-prev {
    transform: translate(0, -50%) scaleX(-1);
}
.slick-arrow {
    --icon-size: 64px;
    width: var(--icon-size);
    height: var(--icon-size);
}
@media (max-width: 991.98px) {
    .slick-next {
        left: calc(50% + 35px);
        top: 100%;
        transform: translateX(-50%);
    }
    .slick-prev {
        left: calc(50% - 35px);
        top: 100%;
        transform: translateX(-50%) scale(-1);
    }
    .slick-arrow {
        margin-top: 20px;
    }
}


.affiliate-slider .slick-arrow {
    --icon-size: 27px;
}
.affiliate-slider .slick-next::before,
.affiliate-slider .slick-prev::before {
    background-image: url('/wp-content/uploads/slider-arrow-blue.svg');
}
.affiliate-slider .affiliate-slide img {
    height: 100px;
    object-fit: contain;
}
.affiliate-slider .affiliate-slide {
    margin-right: 16.5px;
    margin-left: 16.5px;
}
.affiliation {
    display: flex;
    justify-content: center;
}
.page-section--affiliate-slider {
    padding: 40px;
    background-color: var(--color-blue-6);
}
@media (max-width: 991.98px) {
    .affiliate-slider .slick-arrow {
        margin-top: 20px;
    }
    .affiliate-slider .affiliate-slide {
        margin-right: 11px;
        margin-left: 11px;
    }
    .page-section--affiliate-slider {
        padding-left: 0px;
        padding-right: 0px;
        padding-bottom: 80px;
    }
}


.experience-icons .experience-icon-block div {
    font-family: var(--home-heading-font);
    font-size: 26px;
    line-height: 100%;
    margin-top: 30px;
    text-transform: uppercase;
}
.experience-icons .experience-icon-block {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.experience-icons {
    display: flex;
    justify-content: center;
    gap: 0 33px;
    margin-top: 42px;
}
@media (max-width: 991.98px) {
    .experience-icons .experience-icon-block span {
        font-size: 20px;
        margin-top: 20px;
    }    
    .experience-icons {
        gap: 40px 0;
        flex-direction: column-reverse;
    }
}


.our-work-cards-item h2 {
    color: white;
}
.our-work-cards-item::before {
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    width: 476px;
    height: 451px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/card-background-decoration.png');
    mix-blend-mode: luminosity;
    z-index: -1;
}
.our-work-cards-item {
    position: relative;
    text-align: center;
    color: white;
    max-width: 555px;
    border-radius: 13px;
    padding: 50px 40px;
    background: linear-gradient(180deg, #196FB4 0%, #60C4D3 100%);
    z-index: 1;
}
.our-work-cards {
    display: flex;
    gap: 0 30px;
}
@media (min-width: 992px) and (max-width: 1199px) {
    .our-work-cards-item::before {
        width: calc(1em * (476 / 18) * 933/1193);
        height: calc(1em * (451 / 18) * 933/1193);     
    }
}
@media (max-width: 991.98px)  {
    .our-work-cards-item::before {
        width: 290px;
        height: 281px;
    }
    .our-work-cards-item {
        padding: 30px 4px;
        margin: auto;
    }
    .our-work-cards {
        flex-direction: column;
        gap: 17px 0px;
    }
}

/* ABOUT US PAGE */
.post-2736 .col-lg-4 .gradient-box-light,
.post-2736 .col-lg-4 .gradient-box {
    margin-top: 0px;
    margin-bottom: 0px;
    min-height: 250px;
}
.post-2736 .col-lg-4 p {
    display: none;
}
.post-2736 .gradient-box-light {
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.post-2736 .gradient-box-light h4,
.post-2736 .gradient-box h4 {
    margin-bottom: 0px;
}
.post-2736 .gradient-box-light p {
    display: none;
}


/* FAQ PAGE */
#accordion-1 p {
    display: none;
}


/* UNDERLINE LINKS */
.home .callout-link {
    text-decoration: underline;
}
.home .our-work-cards .callout-link {
    color: white;
}
.content-area p > a {
    text-decoration: underline !important;
}


/* TEMP USER ICON - GOOGLE */
.user-icon {
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('/wp-content/uploads/google-icon.svg');
}