.elementor-1572 .elementor-element.elementor-element-17a6eab{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-1572 .elementor-element.elementor-element-3b84210 img{width:42%;}.elementor-1572 .elementor-element.elementor-element-eb3aeb2{--display:flex;}.elementor-1572 .elementor-element.elementor-element-7abbf3e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-1572 .elementor-element.elementor-element-3b84210 img{width:100%;}}/* Start custom CSS for html, class: .elementor-element-e8e89dd */<style>

/* =====================================================
   HENEGHAN SERVICES
   FRENCH DRAIN — GREENWICH CT
   ===================================================== */

.geo-drain-page{
    --green:#23483d;
    --dark-green:#17362e;
    --coral:#d67168;
    --coral-hover:#bd5f58;
    --cream:#f5f3ed;
    --cream-dark:#ebe8df;
    --white:#ffffff;
    --text:#242c29;
    --muted:#626d69;
    --border:#d7dcd9;

    width:100%;
    color:var(--text) !important;
    font-family:inherit;
    overflow:hidden;
}

.geo-drain-page *,
.geo-drain-page *::before,
.geo-drain-page *::after{
    box-sizing:border-box;
}


/* =====================================================
   GLOBAL WIDTH
   ===================================================== */

.geo-drain-page .geo-container,
.geo-drain-page .geo-content{
    width:calc(100% - 48px);
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
}

.geo-drain-page .geo-content{
    max-width:1000px;
}


/* =====================================================
   TYPOGRAPHY
   ===================================================== */

.geo-drain-page h1{
    color:var(--green) !important;
    font-size:clamp(44px,5vw,68px) !important;
    line-height:1.03 !important;
    letter-spacing:-2px !important;
    font-weight:700 !important;
    margin:0 0 28px !important;
    max-width:800px;
}

.geo-drain-page h2{
    color:var(--green) !important;
    font-size:clamp(32px,3.6vw,46px) !important;
    line-height:1.12 !important;
    letter-spacing:-1px !important;
    font-weight:700 !important;
    margin:0 0 24px !important;
}

.geo-drain-page h3{
    color:var(--green) !important;
    font-size:21px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
    margin:0 0 9px !important;
}

.geo-drain-page p{
    color:var(--text) !important;
    font-size:18px !important;
    line-height:1.72 !important;
    margin:0 0 20px !important;
}

.geo-drain-page .geo-large,
.geo-drain-page .geo-hero-lead{
    font-size:22px !important;
    line-height:1.55 !important;
    font-weight:600 !important;
    color:var(--text) !important;
}


/* =====================================================
   LABELS
   ===================================================== */

.geo-drain-page .geo-kicker{
    display:block;
    color:#b84f48 !important;
    font-size:13px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
    letter-spacing:2px !important;
    text-transform:uppercase;
    margin-bottom:18px !important;
}

.geo-drain-page .geo-kicker-light{
    color:#f3aaa4 !important;
}


/* =====================================================
   HERO
   ===================================================== */

.geo-drain-page .geo-hero{
    background:var(--cream) !important;
    padding:90px 0 !important;
}

.geo-drain-page .geo-hero-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr) !important;
    gap:70px !important;
    align-items:center !important;
}


/* HERO RIGHT CARD */

.geo-drain-page .geo-hero-box{
    display:block !important;
    background:var(--green) !important;
    background-color:var(--green) !important;
    color:var(--white) !important;
    opacity:1 !important;

    padding:42px 38px !important;

    border:none !important;
    border-radius:0 !important;

    box-shadow:
        0 20px 45px rgba(23,54,46,.16) !important;
}

.geo-drain-page .geo-hero-box .geo-box-label{
    color:#f4aaa4 !important;
    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
    letter-spacing:1.7px !important;
    text-transform:uppercase;
    margin:0 0 17px !important;
}

.geo-drain-page .geo-hero-box h2{
    color:var(--white) !important;
    font-size:30px !important;
    line-height:1.18 !important;
    letter-spacing:-.5px !important;
    font-weight:700 !important;
    margin:0 0 19px !important;
}

.geo-drain-page .geo-hero-box p{
    color:var(--white) !important;
    font-size:17px !important;
    line-height:1.7 !important;
    margin:0 !important;
}


/* =====================================================
   BUTTONS
   ===================================================== */

.geo-drain-page .geo-actions{
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:22px !important;
    margin-top:34px !important;
}

.geo-drain-page a.geo-button,
.geo-drain-page a.geo-button:link,
.geo-drain-page a.geo-button:visited{
    display:inline-block !important;

    background:var(--coral) !important;
    background-color:var(--coral) !important;

    color:var(--white) !important;

    padding:16px 25px !important;

    border:2px solid var(--coral) !important;
    border-radius:3px !important;

    font-size:16px !important;
    line-height:1.2 !important;
    font-weight:800 !important;

    text-decoration:none !important;

    opacity:1 !important;

    box-shadow:none !important;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease !important;
}

.geo-drain-page a.geo-button:hover,
.geo-drain-page a.geo-button:focus{
    background:var(--coral-hover) !important;
    background-color:var(--coral-hover) !important;
    border-color:var(--coral-hover) !important;
    color:var(--white) !important;
    transform:translateY(-2px);
}

.geo-drain-page a.geo-phone,
.geo-drain-page a.geo-phone:link,
.geo-drain-page a.geo-phone:visited{
    color:var(--green) !important;
    font-size:17px !important;
    font-weight:800 !important;
    text-decoration:none !important;
    border-bottom:2px solid var(--green) !important;
    padding-bottom:3px !important;
}


/* =====================================================
   STANDARD SECTIONS
   ===================================================== */

.geo-drain-page .geo-section{
    background:var(--white) !important;
    padding:82px 0 !important;
}

.geo-drain-page .geo-section.geo-soft{
    background:var(--cream) !important;
}


/* =====================================================
   QUICK ANSWER CALLOUT
   ===================================================== */

.geo-drain-page .geo-callout{
    display:block !important;
    margin:34px 0 0 !important;
    padding:26px 30px !important;

    background:var(--cream) !important;
    color:var(--text) !important;

    border-left:5px solid var(--coral) !important;

    font-size:18px !important;
    line-height:1.65 !important;
}

.geo-drain-page .geo-callout strong{
    color:var(--green) !important;
}


/* =====================================================
   PROBLEM / SIGN GRID
   ===================================================== */

.geo-drain-page .geo-sign-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    margin:35px 0 !important;
}

.geo-drain-page .geo-sign-grid div{
    background:var(--white) !important;
    color:var(--text) !important;

    border:1px solid var(--border) !important;

    padding:20px 22px !important;

    font-size:17px !important;
    line-height:1.45 !important;
    font-weight:650 !important;
}

.geo-drain-page .geo-sign-grid div::before{
    content:"✓";
    color:#b84f48 !important;
    font-weight:900 !important;
    margin-right:11px !important;
}

.geo-drain-page .geo-note{
    color:var(--muted) !important;
    font-size:16px !important;
    max-width:850px;
}


/* =====================================================
   PROCESS
   ===================================================== */

.geo-drain-page .geo-process{
    margin-top:45px !important;
}

.geo-drain-page .geo-process-row{
    display:grid !important;
    grid-template-columns:70px 1fr !important;
    gap:22px !important;

    padding:28px 0 !important;

    border-top:1px solid var(--border) !important;
}

.geo-drain-page .geo-process-row:last-child{
    border-bottom:1px solid var(--border) !important;
}

.geo-drain-page .geo-number{
    color:#b84f48 !important;
    font-size:23px !important;
    line-height:1.2 !important;
    font-weight:900 !important;
}

.geo-drain-page .geo-process-row p{
    color:var(--text) !important;
    font-size:16px !important;
    margin:0 !important;
}


/* =====================================================
   FRENCH DRAIN VS DRY WELL
   ===================================================== */

.geo-drain-page .geo-comparison{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:20px !important;

    margin:38px 0 30px !important;
}

.geo-drain-page .geo-compare-card{
    background:var(--white) !important;

    border:1px solid var(--border) !important;
    border-top:4px solid var(--green) !important;

    padding:35px !important;
}

.geo-drain-page .geo-compare-title{
    color:#b84f48 !important;
    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:900 !important;
    letter-spacing:1.7px !important;

    margin-bottom:14px !important;
}

.geo-drain-page .geo-compare-card p{
    color:var(--text) !important;
    font-size:16px !important;
    margin:0 !important;
}


/* =====================================================
   CULTEC DARK SECTION
   ===================================================== */

.geo-drain-page .geo-cultec{
    background:var(--dark-green) !important;
    background-color:var(--dark-green) !important;
    color:var(--white) !important;

    padding:88px 0 !important;
}

.geo-drain-page .geo-cultec h2,
.geo-drain-page .geo-cultec h3{
    color:var(--white) !important;
}

.geo-drain-page .geo-cultec p,
.geo-drain-page .geo-cultec .geo-large{
    color:var(--white) !important;
}

.geo-drain-page a.geo-dark-link,
.geo-drain-page a.geo-dark-link:link,
.geo-drain-page a.geo-dark-link:visited{
    display:inline-block !important;

    color:var(--white) !important;

    font-size:17px !important;
    font-weight:800 !important;

    text-decoration:none !important;

    border-bottom:3px solid var(--coral) !important;

    padding-bottom:4px !important;
    margin-top:15px !important;
}


/* =====================================================
   "OBJECTIVE" QUOTE
   ===================================================== */

.geo-drain-page .geo-quote{
    margin:42px 0 0 !important;
    padding:30px 0 5px 30px !important;

    border-left:5px solid var(--coral) !important;

    color:var(--green) !important;

    font-size:25px !important;
    line-height:1.5 !important;

    font-style:normal !important;
}

.geo-drain-page .geo-quote span,
.geo-drain-page .geo-quote strong{
    display:block !important;
    color:var(--green) !important;
}


/* =====================================================
   GREENWICH LOCATIONS
   ===================================================== */

.geo-drain-page .geo-locations{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;

    margin:30px 0 35px !important;
}

.geo-drain-page .geo-locations span{
    display:inline-block !important;

    background:var(--cream) !important;
    color:var(--green) !important;

    border:1px solid var(--border) !important;

    padding:11px 17px !important;

    font-size:15px !important;
    line-height:1.2 !important;
    font-weight:750 !important;
}


/* =====================================================
   FAQ
   ===================================================== */

.geo-drain-page .geo-faq{
    margin-top:35px !important;
}

.geo-drain-page .geo-faq details{
    display:block !important;

    background:var(--white) !important;

    border-top:1px solid var(--border) !important;

    padding:23px 5px !important;
}

.geo-drain-page .geo-faq details:last-child{
    border-bottom:1px solid var(--border) !important;
}

.geo-drain-page .geo-faq summary{
    color:var(--green) !important;

    cursor:pointer !important;

    font-size:19px !important;
    line-height:1.4 !important;
    font-weight:800 !important;

    padding-right:25px !important;
}

.geo-drain-page .geo-faq details p{
    color:var(--text) !important;

    font-size:16px !important;
    line-height:1.7 !important;

    max-width:850px;

    margin:18px 0 2px !important;
}


/* =====================================================
   FINAL CTA
   ===================================================== */

.geo-drain-page .geo-final{
    background:var(--green) !important;
    background-color:var(--green) !important;

    color:var(--white) !important;

    text-align:center !important;

    padding:80px 0 !important;
}

.geo-drain-page .geo-final .geo-content{
    max-width:800px;
}

.geo-drain-page .geo-final h2{
    color:var(--white) !important;
}

.geo-drain-page .geo-final p{
    color:var(--white) !important;

    font-size:20px !important;
    line-height:1.65 !important;
}

.geo-drain-page .geo-actions-center{
    justify-content:center !important;
}

.geo-drain-page a.geo-phone-light,
.geo-drain-page a.geo-phone-light:link,
.geo-drain-page a.geo-phone-light:visited{
    color:var(--white) !important;

    font-size:17px !important;
    font-weight:800 !important;

    text-decoration:none !important;

    border-bottom:2px solid rgba(255,255,255,.8) !important;

    padding-bottom:3px !important;
}


/* =====================================================
   TABLET
   ===================================================== */

@media(max-width:1024px){

    .geo-drain-page .geo-hero-grid{
        grid-template-columns:1.15fr .85fr !important;
        gap:40px !important;
    }

    .geo-drain-page .geo-hero-box{
        padding:35px 30px !important;
    }

}


/* =====================================================
   MOBILE
   ===================================================== */

@media(max-width:767px){

    .geo-drain-page .geo-container,
    .geo-drain-page .geo-content{
        width:calc(100% - 34px) !important;
    }

    .geo-drain-page .geo-hero{
        padding:58px 0 !important;
    }

    .geo-drain-page .geo-hero-grid,
    .geo-drain-page .geo-sign-grid,
    .geo-drain-page .geo-comparison{
        grid-template-columns:1fr !important;
    }

    .geo-drain-page .geo-hero-grid{
        gap:38px !important;
    }

    .geo-drain-page h1{
        font-size:42px !important;
        line-height:1.06 !important;
        letter-spacing:-1.3px !important;
    }

    .geo-drain-page h2{
        font-size:32px !important;
        line-height:1.15 !important;
    }

    .geo-drain-page .geo-hero-lead,
    .geo-drain-page .geo-large{
        font-size:19px !important;
    }

    .geo-drain-page p{
        font-size:17px !important;
    }

    .geo-drain-page .geo-section,
    .geo-drain-page .geo-cultec,
    .geo-drain-page .geo-final{
        padding:58px 0 !important;
    }

    .geo-drain-page .geo-hero-box{
        padding:32px 27px !important;
    }

    .geo-drain-page .geo-hero-box h2{
        font-size:27px !important;
    }

    .geo-drain-page .geo-process-row{
        grid-template-columns:43px 1fr !important;
        gap:15px !important;
    }

    .geo-drain-page .geo-actions{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:18px !important;
    }

    .geo-drain-page .geo-actions-center{
        align-items:center !important;
    }

    .geo-drain-page a.geo-button{
        width:100% !important;
        text-align:center !important;
    }

    .geo-drain-page .geo-quote{
        font-size:21px !important;
        padding-left:22px !important;
    }

}


/* =====================================================
   SMALL PHONE
   ===================================================== */

@media(max-width:420px){

    .geo-drain-page h1{
        font-size:37px !important;
    }

    .geo-drain-page h2{
        font-size:29px !important;
    }

    .geo-drain-page .geo-hero-box{
        padding:28px 23px !important;
    }

}

</style>/* End custom CSS */