
/*

 * Direct Home Comfort

 * Mobile Responsive Override Layer

 * Loaded after all theme/plugin CSS.

 * Desktop styles remain untouched.

 */



/* =========================================================

   TABLET / MOBILE FOUNDATION

   ========================================================= */

@media (max-width: 991px) {



    html,

    body {

        width: 100%;

        max-width: 100%;

        overflow-x: hidden;

    }



    *,

    *::before,

    *::after {

        box-sizing: border-box;

    }



    img,

    picture,

    video,

    canvas,

    svg,

    iframe {

        max-width: 100%;

    }



    img,

    video {

        height: auto;

    }



    .container,

    .container-fluid,

    .wp-block-group__inner-container,

    .wp-block-uagb-container,

    .wp-bootstrap-blocks-container.container {

        width: 100%;

        max-width: 100%;

    }



    .wp-block-columns {

        max-width: 100%;

    }



    .wp-block-column {

        min-width: 0;

    }



    .row > * {

        min-width: 0;

    }

}





/* =========================================================

   PHONE LAYOUT

   ========================================================= */

@media (max-width: 767px) {



    body {

        min-width: 0;

    }



    .container,

    .container-fluid,

    .wp-block-group__inner-container,

    .wp-block-uagb-container.uagb-is-root-container {

        padding-left: 16px !important;

        padding-right: 16px !important;

    }



    .wp-bootstrap-blocks-container.container {

        padding-left: 16px !important;

        padding-right: 16px !important;

    }



    .wp-block-columns {

        flex-direction: column !important;

        flex-wrap: nowrap !important;

        gap: 24px;

    }



    .wp-block-column {

        flex-basis: 100% !important;

        width: 100% !important;

        max-width: 100% !important;

        margin-left: 0 !important;

        margin-right: 0 !important;

    }



    figure,

    .wp-block-image {

        max-width: 100%;

    }



    .wp-block-image img {

        max-width: 100%;

        height: auto;

    }



    input,

    select,

    textarea,

    button {

        max-width: 100%;

    }



    h1,

    h2,

    h3,

    h4,

    p {

        overflow-wrap: break-word;

    }

}





/* =========================================================

   SMALL PHONES

   ========================================================= */

@media (max-width: 575px) {



    .container,

    .container-fluid,

    .wp-block-group__inner-container,

    .wp-block-uagb-container.uagb-is-root-container,

    .wp-bootstrap-blocks-container.container {

        padding-left: 14px !important;

        padding-right: 14px !important;

    }

}





/* =========================================================

   DHC MOBILE HEADER SYSTEM

   ========================================================= */

.dhc-mobile-header,.dhc-mobile-nav{display:none}



@media (max-width:991px){

.dhc-mobile-header{position:sticky;top:0;z-index:10001;height:72px;background:#fff;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid #e7e7e7;box-shadow:0 4px 15px rgba(0,0,0,.08)}

.dhc-mobile-header__logo{display:flex;max-width:185px}

.dhc-mobile-header__logo img{width:100%;height:auto;max-height:50px}

.dhc-mobile-header__actions{display:flex;align-items:center;gap:8px}

.dhc-mobile-header__call{display:flex;align-items:center;height:42px;padding:0 14px;border-radius:8px;background:#f57920;color:#fff!important;font-weight:700;text-decoration:none!important}

.dhc-mobile-header__toggle{height:42px;min-width:56px;border:0;border-radius:8px;background:#102a43;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}

.dhc-mobile-header__toggle>span{width:21px;height:2px;background:#fff}

.dhc-mobile-header__toggle b{font-size:9px;line-height:9px;text-transform:uppercase}



.dhc-mobile-nav{position:fixed;inset:0;z-index:10002;background:rgba(0,0,0,.42);transform:translateX(-100%);transition:transform .28s ease;overflow:auto}

.dhc-mobile-nav.is-open{transform:translateX(0)}

.dhc-mobile-nav__inner{width:min(88vw,390px);min-height:100%;background:#fff;box-shadow:12px 0 35px rgba(0,0,0,.2)}

.dhc-mobile-nav__top{height:68px;padding:0 18px;background:#102a43;color:#fff;display:flex;align-items:center;justify-content:space-between}

.dhc-mobile-nav__close{border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:7px;padding:8px 11px}

.dhc-mobile-nav ul{list-style:none!important;margin:0!important;padding:0!important;width:100%!important}

.dhc-mobile-nav li{display:block!important;width:100%!important;margin:0!important;border-bottom:1px solid #eee}

.dhc-mobile-nav li a{display:block!important;padding:15px 18px!important;color:#172b3a!important;background:#fff!important;font-size:16px!important;font-weight:700!important;text-decoration:none!important;height:auto!important}

.dhc-mobile-nav li li a{padding:12px 18px 12px 34px!important;font-size:14px!important;font-weight:500!important;background:#f7f9fb!important}

.dhc-mobile-nav__actions{display:grid;gap:10px;padding:20px 18px}

.dhc-mobile-nav__actions a{display:flex!important;align-items:center;justify-content:center;min-height:48px;border-radius:8px;background:#f57920!important;color:#fff!important;font-weight:800!important;text-decoration:none!important}

.dhc-mobile-nav__actions a:last-child{background:#102a43!important}

body.dhc-mobile-nav-open{overflow:hidden!important}

}


@media (max-width:991px){.top-header{display:none!important}.dhc-mobile-header{display:flex!important}.dhc-mobile-nav{display:block!important}}

@media (max-width:991px){.dhc-mobile-nav .sub-menu{display:none!important}.dhc-mobile-nav li.menu-item-has-children{position:relative}.dhc-mobile-nav li.menu-item-has-children>a{padding-right:58px!important}.dhc-mobile-nav li.menu-item-has-children:after{content:"›";position:absolute;right:20px;top:14px;font-size:28px;line-height:22px;color:#f57920;font-weight:400;pointer-events:none}}




/* =========================================================

   DHC PREMIUM MOBILE NAV V2

   ========================================================= */

@media (max-width:991px){



.dhc-mobile-header{

height:74px!important;

padding:0 18px!important;

background:#fff!important;

display:flex!important;

justify-content:center!important;

border-bottom:1px solid #e7ebef!important;

box-shadow:0 6px 22px rgba(15,42,67,.10)!important;

}



.dhc-mobile-header__logo{

position:absolute!important;

left:50%!important;

transform:translateX(-50%)!important;

width:175px!important;

max-width:42vw!important;

}



.dhc-mobile-header__actions{

position:static!important;

width:100%!important;

display:flex!important;

justify-content:space-between!important;

align-items:center!important;

}



.dhc-mobile-header__toggle{

order:1!important;

width:46px!important;

min-width:46px!important;

height:46px!important;

padding:0!important;

border-radius:50%!important;

background:#fff!important;

box-shadow:none!important;

}



.dhc-mobile-header__toggle>span{

width:25px!important;

height:3px!important;

background:#102f4f!important;

border-radius:99px!important;

}



.dhc-mobile-header__toggle b{

display:none!important;

}



.dhc-mobile-header__call{

order:2!important;

width:46px!important;

height:46px!important;

padding:0!important;

border-radius:50%!important;

font-size:0!important;

background:#f57920!important;

position:relative!important;

box-shadow:0 5px 14px rgba(245,121,32,.25)!important;

}



.dhc-mobile-header__call:after{

content:"☎"!important;

font-size:23px!important;

line-height:1!important;

color:#fff!important;

}



.dhc-mobile-nav{

background:rgba(8,27,44,.50)!important;

backdrop-filter:blur(4px);

}



.dhc-mobile-nav__inner{

width:min(94vw,430px)!important;

background:#fff!important;

box-shadow:18px 0 55px rgba(0,0,0,.24)!important;

padding-bottom:110px!important;

}



.dhc-mobile-nav__top{

height:82px!important;

background:#fff!important;

border-bottom:1px solid #e7ebef!important;

padding:0 20px!important;

position:relative!important;

justify-content:flex-start!important;

}



.dhc-mobile-nav__top strong{

font-size:0!important;

position:absolute!important;

left:50%!important;

transform:translateX(-50%)!important;

width:170px!important;

height:52px!important;

background:url("/wp-content/themes/dhc-theme/images/direct-home-logo.svg") center/contain no-repeat!important;

}



.dhc-mobile-nav__close{

width:46px!important;

height:46px!important;

padding:0!important;

border:0!important;

font-size:0!important;

background:transparent!important;

position:relative!important;

}



.dhc-mobile-nav__close:before,

.dhc-mobile-nav__close:after{

content:""!important;

position:absolute!important;

left:10px!important;

top:22px!important;

width:27px!important;

height:3px!important;

background:#102f4f!important;

border-radius:99px!important;

}



.dhc-mobile-nav__close:before{transform:rotate(45deg)!important}

.dhc-mobile-nav__close:after{transform:rotate(-45deg)!important}



.dhc-mobile-nav__list{

padding:10px 0 0!important;

}



.dhc-mobile-nav li{

border-bottom:1px solid #edf0f3!important;

background:#fff!important;

}



.dhc-mobile-nav li>a{

min-height:58px!important;

display:flex!important;

align-items:center!important;

padding:0 56px 0 24px!important;

font-size:17px!important;

font-weight:700!important;

letter-spacing:-.15px!important;

color:#07355d!important;

background:#fff!important;

}



.dhc-mobile-nav li.menu-item-has-children:after{

right:24px!important;

top:18px!important;

font-size:28px!important;

color:#f57920!important;

transition:transform .2s ease!important;

}



.dhc-mobile-nav li.menu-item-has-children.is-open:after{

transform:rotate(90deg)!important;

}



.dhc-mobile-nav li li{

border-bottom:1px solid #e9edf1!important;

}



.dhc-mobile-nav li li>a{

min-height:50px!important;

padding:0 24px 0 38px!important;

font-size:15px!important;

font-weight:600!important;

color:#31485c!important;

background:#f7f9fb!important;

}



.dhc-mobile-nav__actions{

position:sticky!important;

bottom:0!important;

background:#f5f8fa!important;

border-top:1px solid #dfe5ea!important;

padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;

display:grid!important;

grid-template-columns:1fr 1fr!important;

gap:10px!important;

}



.dhc-mobile-nav__actions a{

min-height:52px!important;

border-radius:9px!important;

font-size:14px!important;

padding:8px 10px!important;

box-shadow:none!important;

}



}


@media (max-width:991px){.dhc-mobile-nav li.menu-item-has-children.is-open>.sub-menu{display:block!important}.dhc-mobile-nav li.menu-item-has-children.is-open>a{background:#f8fafc!important;color:#f57920!important}.dhc-mobile-nav li.menu-item-has-children.is-open:after{transform:rotate(90deg)!important}.dhc-mobile-nav .sub-menu{border-top:1px solid #edf0f3!important}}



@media (max-width:991px){

.dhc-mobile-nav__phone{position:absolute!important;right:20px!important;top:18px!important;width:46px!important;height:46px!important;border-radius:50%!important;background:#f57920 url("/wp-content/uploads/2026/01/top-call.svg") center/22px no-repeat!important;box-shadow:0 5px 14px rgba(245,121,32,.22)!important}

.dhc-mobile-nav__secondary{border-top:8px solid #f4f6f8!important;border-bottom:1px solid #e6ebef!important}

.dhc-mobile-nav__secondary a{display:flex!important;align-items:center!important;min-height:54px!important;padding:0 24px!important;border-bottom:1px solid #edf0f3!important;color:#102f4f!important;font-size:16px!important;font-weight:700!important;text-decoration:none!important;background:#fff!important}

.dhc-mobile-nav__secondary a:last-child{border-bottom:0!important}

}





/* =========================================================

   DHC MOBILE DRILLDOWN NAV

   ========================================================= */

@media (max-width:991px){



.dhc-mobile-nav__inner{

position:relative!important;

overflow:hidden!important;

}



.dhc-mobile-nav li{

position:static!important;

}



.dhc-mobile-nav .sub-menu{

display:block!important;

position:absolute!important;

top:82px!important;

left:0!important;

right:0!important;

bottom:78px!important;

width:100%!important;

overflow-y:auto!important;

background:#fff!important;

z-index:50!important;

transform:translateX(102%)!important;

transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;

border:0!important;

}



.dhc-mobile-nav li.dhc-drill-open>.sub-menu{

transform:translateX(0)!important;

}



.dhc-mobile-nav .dhc-mobile-back{

min-height:68px!important;

border-bottom:1px solid #e6ebef!important;

background:#fff!important;

}



.dhc-mobile-nav .dhc-mobile-back button{

width:100%!important;

height:68px!important;

border:0!important;

background:#fff!important;

color:#0b3558!important;

text-align:left!important;

padding:0 24px!important;

font-size:20px!important;

font-weight:800!important;

}



.dhc-mobile-nav .dhc-mobile-back button span{

display:inline-block!important;

margin-right:14px!important;

color:#f57920!important;

font-size:32px!important;

vertical-align:-2px!important;

}



.dhc-mobile-nav .sub-menu>li>a{

min-height:58px!important;

padding:0 54px 0 26px!important;

background:#fff!important;

color:#183b56!important;

font-size:16px!important;

font-weight:650!important;

border-bottom:1px solid #edf1f4!important;

}



}





/* DHC NAV PHONE REFINEMENT */

@media (max-width:991px){

.dhc-mobile-nav__phone{

right:20px!important;

top:18px!important;

width:46px!important;

height:46px!important;

border-radius:50%!important;

background:#fff!important;

box-shadow:none!important;

border:0!important;

position:absolute!important;

}



.dhc-mobile-nav__phone:before{

content:""!important;

position:absolute!important;

inset:10px!important;

background-color:#102f4f!important;

-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath fill=%27black%27 d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath fill=%27black%27 d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

}



.dhc-mobile-nav__phone:active{

transform:scale(.94)!important;

}

}





/* =========================================================

   DHC ENTERPRISE MOBILE NAV V3

   ========================================================= */

@media (max-width:991px){



.dhc-mobile-nav{

position:fixed!important;

inset:0!important;

width:100vw!important;

height:100dvh!important;

background:#fff!important;

overflow:hidden!important;

transform:translateX(-100%)!important;

transition:transform .24s cubic-bezier(.2,.8,.2,1)!important;

}



.dhc-mobile-nav.is-open{

transform:translateX(0)!important;

}



.dhc-mobile-nav__inner{

width:100%!important;

max-width:none!important;

height:100dvh!important;

min-height:0!important;

display:grid!important;

grid-template-rows:78px minmax(0,1fr) auto!important;

background:#fff!important;

overflow:hidden!important;

box-shadow:none!important;

padding:0!important;

}



.dhc-mobile-nav__top{

grid-row:1!important;

height:78px!important;

min-height:78px!important;

padding:0 22px!important;

background:#fff!important;

border-bottom:1px solid #e7ebef!important;

position:relative!important;

display:flex!important;

align-items:center!important;

z-index:100!important;

}



.dhc-mobile-nav__top strong{

position:absolute!important;

left:50%!important;

top:50%!important;

transform:translate(-50%,-50%)!important;

width:176px!important;

height:54px!important;

background:url("/wp-content/themes/dhc-theme/images/direct-home-logo.svg") center/contain no-repeat!important;

font-size:0!important;

}



.dhc-mobile-nav__close{

position:relative!important;

left:auto!important;

top:auto!important;

width:44px!important;

height:44px!important;

flex:0 0 44px!important;

}



.dhc-mobile-nav__phone{

right:22px!important;

top:17px!important;

width:44px!important;

height:44px!important;

}



.dhc-mobile-nav__viewport{

grid-row:2!important;

position:relative!important;

min-height:0!important;

height:100%!important;

overflow-y:auto!important;

overflow-x:hidden!important;

overscroll-behavior:contain!important;

-webkit-overflow-scrolling:touch!important;

scrollbar-width:none!important;

background:#fff!important;

}



.dhc-mobile-nav__viewport::-webkit-scrollbar{

display:none!important;

}



.dhc-mobile-nav__list{

margin:0!important;

padding:8px 0 0!important;

background:#fff!important;

}



.dhc-mobile-nav li{

position:static!important;

border-bottom:1px solid #e9edf1!important;

background:#fff!important;

}



.dhc-mobile-nav li.menu-item-has-children:after{

content:none!important;

}



.dhc-mobile-nav__list>li>a{

position:relative!important;

display:flex!important;

align-items:center!important;

min-height:56px!important;

padding:0 58px 0 24px!important;

font-size:17px!important;

line-height:1.2!important;

font-weight:600!important;

letter-spacing:-.15px!important;

color:#07365f!important;

background:#fff!important;

}



.dhc-mobile-nav .menu-item-has-children>a:after{

content:""!important;

position:absolute!important;

right:27px!important;

top:50%!important;

width:8px!important;

height:8px!important;

border-top:2px solid #f47721!important;

border-right:2px solid #f47721!important;

transform:translateY(-50%) rotate(45deg)!important;

}



.dhc-mobile-nav__secondary{

margin-top:8px!important;

border-top:8px solid #f4f6f8!important;

border-bottom:0!important;

background:#fff!important;

}



.dhc-mobile-nav__secondary a{

min-height:51px!important;

padding:0 24px!important;

display:flex!important;

align-items:center!important;

font-size:15.5px!important;

font-weight:550!important;

color:#223f58!important;

border-bottom:1px solid #edf0f3!important;

background:#fff!important;

}



.dhc-mobile-nav__actions{

grid-row:3!important;

position:relative!important;

bottom:auto!important;

z-index:100!important;

display:grid!important;

grid-template-columns:1fr 1fr!important;

gap:10px!important;

padding:10px 16px calc(10px + env(safe-area-inset-bottom))!important;

margin:0!important;

background:#f1f5f8!important;

border-top:1px solid #dae2e8!important;

}



.dhc-mobile-nav__actions a{

min-height:50px!important;

border-radius:6px!important;

font-size:14px!important;

font-weight:750!important;

margin:0!important;

}



.dhc-mobile-nav .sub-menu{

display:block!important;

position:absolute!important;

inset:0!important;

width:100%!important;

height:100%!important;

min-height:100%!important;

padding:0!important;

margin:0!important;

overflow-y:auto!important;

overflow-x:hidden!important;

overscroll-behavior:contain!important;

-webkit-overflow-scrolling:touch!important;

background:#fff!important;

z-index:50!important;

transform:translateX(101%)!important;

transition:transform .24s cubic-bezier(.2,.8,.2,1)!important;

border:0!important;

scrollbar-width:none!important;

}



.dhc-mobile-nav .sub-menu::-webkit-scrollbar{

display:none!important;

}



.dhc-mobile-nav li.dhc-drill-open>.sub-menu{

transform:translateX(0)!important;

}



.dhc-mobile-back{

display:grid!important;

grid-template-columns:auto 1fr!important;

grid-template-rows:46px auto!important;

align-items:center!important;

min-height:0!important;

padding:13px 24px 18px!important;

border-bottom:1px solid #e4e9ed!important;

background:#fff!important;

}



.dhc-mobile-back button{

grid-column:1 / -1!important;

width:max-content!important;

height:40px!important;

padding:0!important;

border:0!important;

background:transparent!important;

color:#425b70!important;

font-size:14px!important;

font-weight:600!important;

text-align:left!important;

}



.dhc-mobile-back button span{

font-size:24px!important;

color:#f47721!important;

margin-right:7px!important;

vertical-align:-2px!important;

}



.dhc-mobile-screen-title{

grid-column:1 / -1!important;

font-size:27px!important;

line-height:1.15!important;

font-weight:750!important;

letter-spacing:-.5px!important;

color:#082f52!important;

padding-top:2px!important;

}



.dhc-mobile-overview>a{

position:relative!important;

min-height:55px!important;

display:flex!important;

align-items:center!important;

padding:0 56px 0 24px!important;

font-size:15px!important;

font-weight:700!important;

color:#f47721!important;

background:#fff!important;

}



.dhc-mobile-overview>a:after{

content:""!important;

position:absolute!important;

right:27px!important;

width:8px!important;

height:8px!important;

border-top:2px solid #f47721!important;

border-right:2px solid #f47721!important;

transform:rotate(45deg)!important;

}



.dhc-mobile-nav .sub-menu>li:not(.dhc-mobile-back)>a{

position:relative!important;

min-height:55px!important;

display:flex!important;

align-items:center!important;

padding:0 56px 0 24px!important;

font-size:16px!important;

line-height:1.2!important;

font-weight:550!important;

color:#173b59!important;

background:#fff!important;

border-bottom:0!important;

}



.dhc-mobile-nav .sub-menu>li{

border-bottom:1px solid #edf0f3!important;

}



body.dhc-mobile-nav-open{

overflow:hidden!important;

touch-action:none!important;

}



}





/* DHC ENTERPRISE ACTION DOCK */

@media (max-width:991px){



.dhc-mobile-nav__actions{

padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important;

gap:10px!important;

background:#f4f7f9!important;

border-top:1px solid #dce4ea!important;

}



.dhc-mobile-nav__actions a{

position:relative!important;

min-height:52px!important;

border-radius:8px!important;

display:flex!important;

align-items:center!important;

justify-content:center!important;

gap:9px!important;

font-size:15px!important;

font-weight:700!important;

letter-spacing:-.1px!important;

}



.dhc-mobile-nav__actions a:first-child{

background:#102f4f!important;

}



.dhc-mobile-nav__actions a:last-child{

background:#f47721!important;

}



.dhc-mobile-nav__actions a:before{

content:""!important;

display:block!important;

width:20px!important;

height:20px!important;

background:#fff!important;

flex:0 0 20px!important;

}



.dhc-mobile-nav__actions a:first-child:before{

-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 002 2h14a2 2 0 002-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 002 2h14a2 2 0 002-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

}



.dhc-mobile-nav__actions a:last-child:before{

-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

}



}





/* DHC PREMIUM HOME ROW */

@media (max-width:991px){



.dhc-mobile-home-item{

border-bottom:1px solid #e9edf1!important;

}



.dhc-mobile-home-link{

position:relative!important;

display:flex!important;

align-items:center!important;

min-height:56px!important;

padding:0 24px 0 54px!important;

font-size:17px!important;

font-weight:650!important;

color:#07365f!important;

background:#fff!important;

text-decoration:none!important;

}



.dhc-mobile-home-link:before{

content:""!important;

position:absolute!important;

left:24px!important;

width:18px!important;

height:18px!important;

background:#f47721!important;

-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M12 3l9 8h-3v9h-5v-6h-2v6H6v-9H3l9-8z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M12 3l9 8h-3v9h-5v-6h-2v6H6v-9H3l9-8z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

}



}





/* DHC HOME REVIEW POLISH */

@media (max-width:991px){



.dhc-mobile-home-link{

padding-left:24px!important;

font-weight:600!important;

}



.dhc-mobile-home-link:before{

content:none!important;

display:none!important;

}



.dhc-mobile-review-link{

display:flex!important;

flex-direction:column!important;

align-items:flex-start!important;

justify-content:center!important;

min-height:68px!important;

padding:10px 24px!important;

background:#fff!important;

border-top:1px solid #edf0f3!important;

text-decoration:none!important;

}



.dhc-mobile-review-link span{

font-size:15.5px!important;

line-height:1.2!important;

font-weight:700!important;

color:#07365f!important;

}



.dhc-mobile-review-link small{

display:block!important;

margin-top:4px!important;

font-size:12px!important;

line-height:1.3!important;

font-weight:500!important;

color:#718295!important;

}



}





/* =========================================================

   DHC MOBILE HOT WATER HERO V1

   ========================================================= */



.dhc-mobile-hotwater-v1 {

    display: none;

}



@media (max-width: 767px) {



    body.home section.banner-new {

        display: none !important;

    }



    body.home .dhc-mobile-hotwater-v1 {

        display: block !important;

        background: #f4f7f9;

        padding: 30px 14px 34px;

    }



    .dhc-mhero-intro {

        text-align: center;

        max-width: 440px;

        margin: 0 auto 22px;

    }



    .dhc-mhero-kicker {

        margin: 0 0 7px;

        color: #f47721;

        font-size: 12px;

        line-height: 1.2;

        font-weight: 800;

        letter-spacing: 1.4px;

        text-transform: uppercase;

    }



    .dhc-mhero-intro h2 {

        margin: 0;

        color: #0b3152;

        font-size: clamp(29px, 8vw, 38px);

        line-height: 1.03;

        letter-spacing: -1.1px;

        font-weight: 800;

    }



    .dhc-mhero-intro > p:last-child {

        margin: 12px auto 0;

        max-width: 360px;

        color: #536b7e;

        font-size: 15px;

        line-height: 1.55;

        font-weight: 500;

    }



    .dhc-mhero-card {

        overflow: hidden;

        max-width: 460px;

        margin: 0 auto 18px;

        background: #fff;

        border: 1px solid #e1e7ec;

        border-radius: 18px;

        box-shadow: 0 10px 32px rgba(9, 45, 76, .08);

    }



    .dhc-mhero-image {

        height: 245px;

        display: flex;

        align-items: center;

        justify-content: center;

        padding: 18px 24px 6px;

        background: #eef3f6;

        border-bottom: 1px solid #e3e9ee;

    }



    .dhc-mhero-image img {

        display: block;

        width: auto !important;

        max-width: 82% !important;

        height: 225px !important;

        object-fit: contain !important;

        margin: 0 auto !important;

    }



    .dhc-mhero-content {

        padding: 22px 20px 20px;

        text-align: center;

    }



    .dhc-mhero-label {

        margin: 0 0 7px;

        color: #f47721;

        font-size: 12px;

        line-height: 1.2;

        font-weight: 800;

        letter-spacing: .9px;

        text-transform: uppercase;

    }



    .dhc-mhero-content h3 {

        margin: 0 auto;

        max-width: 360px;

        color: #0b3152;

        font-size: 22px;

        line-height: 1.18;

        letter-spacing: -.45px;

        font-weight: 800;

    }



    .dhc-mhero-price {

        margin: 18px 0 17px;

        display: flex;

        flex-direction: column;

        align-items: center;

    }



    .dhc-mhero-price > span {

        color: #8796a3;

        font-size: 16px;

        line-height: 1;

        font-weight: 600;

        text-decoration: line-through;

        text-decoration-thickness: 1.5px;

    }



    .dhc-mhero-price > strong {

        margin-top: 5px;

        color: #0b3152;

        font-size: 43px;

        line-height: .98;

        letter-spacing: -1.7px;

        font-weight: 900;

    }



    .dhc-mhero-price small {

        margin-left: 3px;

        color: #597083;

        font-size: 15px;

        letter-spacing: 0;

        font-weight: 700;

    }



    .dhc-mhero-cta {

        min-height: 52px;

        width: 100%;

        display: flex;

        align-items: center;

        justify-content: center;

        padding: 10px 18px;

        border-radius: 9px;

        background: #f47721;

        color: #fff !important;

        font-size: 16px;

        line-height: 1.15;

        font-weight: 800;

        text-decoration: none !important;

        box-shadow: 0 6px 15px rgba(244, 119, 33, .18);

    }



    .dhc-mhero-benefits {

        margin-top: 18px;

        display: grid;

        grid-template-columns: repeat(3, 1fr);

        border-top: 1px solid #e8edf1;

        padding-top: 16px;

    }



    .dhc-mhero-benefits span {

        min-width: 0;

        padding: 0 7px;

        color: #486176;

        font-size: 11.5px;

        line-height: 1.3;

        font-weight: 700;

        text-align: center;

    }



    .dhc-mhero-benefits span + span {

        border-left: 1px solid #e8edf1;

    }



    .dhc-mhero-card--tankless {

        margin-bottom: 0;

    }



    .dhc-mhero-card--tankless .dhc-mhero-image {

        background: #edf4f8;

    }

}





/* =========================================================

   DHC MOBILE HOME PREMIUM V2

   ========================================================= */

@media (max-width:767px){



/* ---------- Premium Promo Strip ---------- */



.top-bar{

    min-height:42px!important;

    padding:8px 14px!important;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    background:#0b3152!important;

    border-bottom:3px solid #f47721!important;

}



.top-bar p{

    margin:0!important;

    padding:0!important;

    font-size:13px!important;

    line-height:1.28!important;

    font-weight:700!important;

    letter-spacing:0!important;

}



.top-bar p a{

    color:#fff!important;

    text-decoration:none!important;

}





/* ---------- Main Mobile Header ---------- */



.dhc-mobile-header{

    height:72px!important;

    padding:0 18px!important;

    box-shadow:0 2px 10px rgba(8,47,82,.07)!important;

}



.dhc-mobile-header__logo{

    width:178px!important;

    max-width:46vw!important;

}



.dhc-mobile-header__call{

    width:44px!important;

    min-width:44px!important;

    height:44px!important;

    padding:0!important;

    background:transparent!important;

    box-shadow:none!important;

    border-radius:0!important;

    position:relative!important;

}



.dhc-mobile-header__call:after{

    content:none!important;

}



.dhc-mobile-header__call:before{

    content:""!important;

    width:24px!important;

    height:24px!important;

    position:absolute!important;

    left:10px!important;

    top:10px!important;

    background:#0b3152!important;

    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

    mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.01-.24c1.11.37 2.31.57 3.58.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.27.2 2.47.57 3.58a1 1 0 01-.25 1.02l-2.2 2.19z%27/%3E%3C/svg%3E") center/contain no-repeat!important;

}





/* ---------- Hero ---------- */



body.home .dhc-mobile-hotwater-v1{

    padding:26px 14px 32px!important;

    background:#f3f6f8!important;

}



.dhc-mhero-intro{

    margin-bottom:18px!important;

}



.dhc-mhero-kicker{

    margin-bottom:6px!important;

    font-size:11px!important;

    letter-spacing:1.7px!important;

}



.dhc-mhero-intro h2{

    font-size:32px!important;

    line-height:1.02!important;

    letter-spacing:-1px!important;

}



.dhc-mhero-intro > p:last-child{

    max-width:350px!important;

    margin-top:10px!important;

    font-size:14.5px!important;

    line-height:1.48!important;

}





/* ---------- Offer Cards ---------- */



.dhc-mhero-card{

    position:relative!important;

    border-radius:14px!important;

    border:1px solid #dde5eb!important;

    box-shadow:0 8px 24px rgba(8,47,82,.055)!important;

}



.dhc-mhero-card:before{

    content:""!important;

    display:block!important;

    height:3px!important;

    background:#f47721!important;

}



.dhc-mhero-image{

    height:180px!important;

    padding:5px 18px!important;

    overflow:hidden!important;

    background:#edf2f5!important;

}



.dhc-mhero-image img{

    width:auto!important;

    height:175px!important;

    max-width:none!important;

    object-fit:contain!important;

}



.dhc-mhero-card:not(.dhc-mhero-card--tankless) .dhc-mhero-image img{

    transform:scale(1.20)!important;

}



.dhc-mhero-card--tankless .dhc-mhero-image img{

    transform:scale(1.10)!important;

}



.dhc-mhero-content{

    padding:18px 18px 18px!important;

}



.dhc-mhero-label{

    margin-bottom:6px!important;

    font-size:11px!important;

    letter-spacing:1px!important;

}



.dhc-mhero-content h3{

    max-width:340px!important;

    font-size:21px!important;

    line-height:1.17!important;

    letter-spacing:-.4px!important;

}



.dhc-mhero-price{

    margin:14px 0 15px!important;

}



.dhc-mhero-price > span{

    font-size:14px!important;

}



.dhc-mhero-price > strong{

    margin-top:4px!important;

    font-size:40px!important;

    letter-spacing:-1.5px!important;

}



.dhc-mhero-price small{

    font-size:14px!important;

}



.dhc-mhero-cta{

    min-height:50px!important;

    border-radius:7px!important;

    font-size:15.5px!important;

    box-shadow:none!important;

}



.dhc-mhero-benefits{

    margin-top:15px!important;

    padding-top:14px!important;

}



.dhc-mhero-benefits span{

    font-size:11px!important;

    line-height:1.25!important;

}





/* ---------- Next Homepage Section ---------- */



body.home .intro-sec{

    padding-top:34px!important;

    padding-bottom:34px!important;

}



body.home .intro-sec h1,

body.home .intro-sec .dhc-special-h1{

    margin:0 auto 18px!important;

    padding:0 6px!important;

    max-width:420px!important;

    font-size:28px!important;

    line-height:1.13!important;

    letter-spacing:-.7px!important;

    font-weight:800!important;

}



}





/* =========================================================

   DHC PREMIUM PRODUCT STAGE V3

   ========================================================= */

@media (max-width:767px){



.dhc-mhero-card{

    border-radius:15px!important;

    border:1px solid #e3e8ed!important;

    box-shadow:0 5px 18px rgba(8,47,82,.045)!important;

    background:#fff!important;

}



.dhc-mhero-card:before{

    display:none!important;

    content:none!important;

}



.dhc-mhero-image{

    height:245px!important;

    padding:20px 22px 16px!important;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    overflow:hidden!important;

    background:#f7f9fb!important;

    border-bottom:1px solid #e8edf1!important;

}



.dhc-mhero-image img{

    display:block!important;

    width:auto!important;

    height:auto!important;

    max-width:78%!important;

    max-height:205px!important;

    object-fit:contain!important;

    object-position:center!important;

    transform:none!important;

    margin:0 auto!important;

}



.dhc-mhero-card:not(.dhc-mhero-card--tankless) .dhc-mhero-image img,

.dhc-mhero-card--tankless .dhc-mhero-image img{

    transform:none!important;

}



.dhc-mhero-card--tankless .dhc-mhero-image{

    background:#f7f9fb!important;

}



.dhc-mhero-content{

    padding:20px 20px 20px!important;

    background:#fff!important;

}



.dhc-mhero-label{

    color:#f47721!important;

    font-size:11px!important;

    letter-spacing:1.15px!important;

    margin-bottom:7px!important;

}



.dhc-mhero-content h3{

    font-size:21px!important;

    line-height:1.16!important;

    max-width:350px!important;

    margin-left:auto!important;

    margin-right:auto!important;

}



.dhc-mhero-price{

    margin:15px 0 16px!important;

}



.dhc-mhero-cta{

    min-height:50px!important;

    border-radius:7px!important;

}



.dhc-mhero-benefits{

    margin-top:16px!important;

    padding-top:15px!important;

}



}





/* =========================================================

   DHC VISUAL HARMONY V4

   ========================================================= */

@media (max-width:767px){



.dhc-mhero-intro h2,

.dhc-mhero-content h3{

    text-wrap:balance!important;

}



.dhc-mhero-intro > p:last-child{

    text-wrap:pretty!important;

}



.dhc-mhero-card{

    margin-bottom:20px!important;

    border-color:#e2e8ed!important;

    box-shadow:0 4px 16px rgba(10,44,72,.04)!important;

}



.dhc-mhero-image{

    height:238px!important;

    padding:16px 22px!important;

    background:linear-gradient(180deg,#fbfcfd 0%,#f3f6f8 100%)!important;

}



.dhc-mhero-image img{

    max-height:216px!important;

    max-width:82%!important;

}



.dhc-mhero-content{

    padding:21px 20px 19px!important;

}



.dhc-mhero-price > strong{

    font-variant-numeric:tabular-nums!important;

}



.dhc-mhero-benefits{

    grid-template-columns:repeat(3,minmax(0,1fr))!important;

    align-items:stretch!important;

    gap:0!important;

    padding-top:15px!important;

}



.dhc-mhero-benefits span{

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    min-width:0!important;

    min-height:2.65em!important;

    padding:0 8px!important;

    margin:0 auto!important;

    color:#405b73!important;

    font-size:11px!important;

    line-height:1.28!important;

    font-weight:700!important;

    letter-spacing:-.08px!important;

    text-align:center!important;

    text-wrap:balance!important;

    overflow-wrap:normal!important;

    word-break:normal!important;

}



.dhc-mhero-benefits span + span{

    border-left:1px solid #e4eaef!important;

}



}





/* =========================================================

   DHC COMPLETE MOBILE HOMEPAGE V1

   Premium Responsive Homepage System

   ========================================================= */

@media (max-width:767px){



/* =========================================================

   GLOBAL HOMEPAGE RHYTHM

   ========================================================= */



body.home{

    --dhc-navy:#0b3152;

    --dhc-navy-2:#123e62;

    --dhc-orange:#f47721;

    --dhc-blue:#168db5;

    --dhc-text:#243f55;

    --dhc-muted:#687d8e;

    --dhc-line:#e3e9ee;

    --dhc-soft:#f4f7f9;

    --dhc-soft-blue:#edf5f8;



    padding-bottom:76px!important;

}



body.home h1,

body.home h2,

body.home h3{

    text-wrap:balance!important;

}



body.home p{

    text-wrap:pretty!important;

}



body.home .wp-block-spacer{

    max-height:24px!important;

}



body.home section,

body.home .wp-block-group{

    scroll-margin-top:90px;

}





/* =========================================================

   INTRO / SEO CONTENT

   ========================================================= */



body.home .intro-sec{

    padding:46px 16px!important;

    background:#fff!important;

}



body.home .intro-sec .dhc-special-h1{

    max-width:430px!important;

    margin:0 auto 13px!important;

    padding:0!important;

    color:var(--dhc-navy)!important;

    font-size:29px!important;

    line-height:1.12!important;

    letter-spacing:-.8px!important;

    font-weight:800!important;

    text-align:center!important;

}



body.home .intro-sec > p,

body.home .intro-sec .text-center{

    max-width:420px!important;

    margin-left:auto!important;

    margin-right:auto!important;

    color:var(--dhc-text)!important;

    font-size:15px!important;

    line-height:1.62!important;

}



body.home .intro-sec h3{

    margin:30px 0 12px!important;

    padding-top:24px!important;

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

    color:var(--dhc-navy)!important;

    font-size:21px!important;

    line-height:1.22!important;

    letter-spacing:-.3px!important;

    font-weight:750!important;

}



body.home .intro-sec h3:first-of-type{

    border-top:0!important;

    padding-top:0!important;

}



body.home .intro-sec ul{

    padding-left:20px!important;

    margin:12px 0 18px!important;

}



body.home .intro-sec li{

    margin-bottom:8px!important;

    color:var(--dhc-text)!important;

    font-size:14.5px!important;

    line-height:1.5!important;

}





/* =========================================================

   CONNECT WITH OUR EXPERTS / APPOINTMENT SELECTOR

   ========================================================= */



body.home .bookappoint-bx{

    margin:34px auto!important;

    padding:26px 16px 24px!important;

    max-width:480px!important;

    background:#f3f7fa!important;

    border:1px solid #dfe7ed!important;

    border-radius:18px!important;

    box-shadow:0 8px 30px rgba(8,47,82,.055)!important;

}



body.home .bookappoint-bx h2,

body.home .bookappoint-bx h3{

    margin:0 0 10px!important;

    color:var(--dhc-navy)!important;

    font-size:26px!important;

    line-height:1.12!important;

    letter-spacing:-.5px!important;

    text-align:center!important;

}



body.home .bookappoint-bx > p,

body.home .product-select > p{

    color:#4e677a!important;

    font-size:14px!important;

    line-height:1.5!important;

    text-align:center!important;

}



body.home .product-select span.wpcf7-form-control.wpcf7-checkbox{

    display:grid!important;

    grid-template-columns:repeat(2,minmax(0,1fr))!important;

    gap:12px!important;

    width:100%!important;

}



body.home .product-select span.wpcf7-form-control.wpcf7-checkbox > span{

    width:100%!important;

    min-width:0!important;

    max-width:none!important;

    margin:0!important;

    padding:0!important;

    flex:none!important;

}



body.home .product-select span.wpcf7-list-item label{

    position:relative!important;

    width:100%!important;

    min-height:146px!important;

    margin:0!important;

    padding:14px 9px!important;

    display:flex!important;

    flex-direction:column!important;

    align-items:center!important;

    justify-content:center!important;

    gap:10px!important;

    background:#fff!important;

    border:1.5px solid #d8e1e7!important;

    border-radius:13px!important;

    box-shadow:0 2px 8px rgba(8,47,82,.035)!important;

    cursor:pointer!important;

    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;

}



body.home .product-select span.wpcf7-list-item label:active{

    transform:scale(.985)!important;

}



body.home .product-select span.wpcf7-list-item label:has(input:checked){

    border-color:var(--dhc-orange)!important;

    box-shadow:0 0 0 3px rgba(244,119,33,.10)!important;

}



body.home .product-select span.wpcf7-list-item label > span{

    width:100%!important;

    min-height:2.5em!important;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    padding:0 3px!important;

    color:var(--dhc-navy)!important;

    font-size:13.5px!important;

    line-height:1.25!important;

    font-weight:700!important;

    text-align:center!important;

    text-wrap:balance!important;

}



body.home .bookappoint-bx input:not([type=checkbox]):not([type=radio]),

body.home .bookappoint-bx select,

body.home .bookappoint-bx textarea{

    width:100%!important;

    min-height:52px!important;

    padding:11px 13px!important;

    background:#fff!important;

    border:1px solid #cfd9e0!important;

    border-radius:8px!important;

    color:#243f55!important;

    font-size:16px!important;

    box-shadow:none!important;

}



body.home .bookappoint-bx textarea{

    min-height:110px!important;

}



body.home .bookappoint-bx input:focus,

body.home .bookappoint-bx select:focus,

body.home .bookappoint-bx textarea:focus{

    outline:0!important;

    border-color:var(--dhc-blue)!important;

    box-shadow:0 0 0 3px rgba(22,141,181,.10)!important;

}



body.home .bookappoint-bx input[type=submit],

body.home .bookappoint-bx button,

body.home .bookappoint-bx .wpcf7-submit{

    min-height:52px!important;

    border:0!important;

    border-radius:8px!important;

    background:var(--dhc-navy)!important;

    color:#fff!important;

    font-size:15px!important;

    font-weight:750!important;

}





/* =========================================================

   CERTIFIED EXPERT / SOLUTION SECTIONS

   ========================================================= */



body.home .expert-bx,

body.home .heater-expert-sec,

body.home .expert-cool,

body.home .expert-water{

    margin:18px 14px!important;

    padding:22px 16px!important;

    background:#fff!important;

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

    border-radius:16px!important;

    box-shadow:0 6px 22px rgba(8,47,82,.045)!important;

}



body.home .expert-bx h2,

body.home .heater-expert-sec h2,

body.home .expert-cool h2,

body.home .expert-water h2{

    margin:0 0 16px!important;

    color:var(--dhc-navy)!important;

    font-size:24px!important;

    line-height:1.15!important;

    letter-spacing:-.4px!important;

    text-align:left!important;

}



body.home .ex-bar,

body.home .ex-bar-link{

    position:relative!important;

    min-height:70px!important;

    margin:10px 0!important;

    padding:10px 46px 10px 12px!important;

    display:flex!important;

    align-items:center!important;

    gap:12px!important;

    background:#f7fafb!important;

    border:1px solid #e2e8ed!important;

    border-radius:11px!important;

}



body.home .ex-bar p,

body.home .ex-bar-link p{

    margin:0!important;

    color:var(--dhc-navy)!important;

    font-size:14px!important;

    line-height:1.3!important;

    font-weight:700!important;

    text-wrap:balance!important;

}



body.home .ex-sym-icon{

    width:46px!important;

    min-width:46px!important;

    height:46px!important;

    margin:0!important;

    display:grid!important;

    place-items:center!important;

    border-radius:50%!important;

    background:#168db5!important;

}



body.home .ex-sym-icon img{

    width:27px!important;

    height:27px!important;

    object-fit:contain!important;

}



body.home .ex-arrow-icon{

    position:absolute!important;

    right:15px!important;

    top:50%!important;

    transform:translateY(-50%)!important;

    width:18px!important;

    height:18px!important;

}



body.home .heater-expert-sec .wp-block-image:not(.ex-sym-icon):not(.ex-arrow-icon) img,

body.home .expert-img img{

    display:block!important;

    width:100%!important;

    height:auto!important;

    max-height:240px!important;

    object-fit:contain!important;

    margin:12px auto 0!important;

}





/* =========================================================

   HOME COMFORT SOLUTIONS GRID

   ========================================================= */



body.home .com-bx{

    width:100%!important;

    min-height:138px!important;

    height:100%!important;

    margin:0 0 12px!important;

    padding:15px 8px!important;

    display:flex!important;

    flex-direction:column!important;

    align-items:center!important;

    justify-content:center!important;

    gap:10px!important;

    background:#fff!important;

    border:1px solid #dfe6eb!important;

    border-radius:14px!important;

    box-shadow:0 3px 12px rgba(8,47,82,.035)!important;

}



body.home .com-img{

    width:56px!important;

    height:56px!important;

    margin:0 auto!important;

    padding:9px!important;

    display:grid!important;

    place-items:center!important;

    background:#edf6f9!important;

    border-radius:50%!important;

}



body.home .com-img figure{

    margin:0!important;

}



body.home .com-img img{

    display:block!important;

    width:38px!important;

    height:38px!important;

    object-fit:contain!important;

}



body.home .com-bx p{

    min-height:2.55em!important;

    margin:0!important;

    padding:0 4px!important;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    color:var(--dhc-navy)!important;

    font-size:13px!important;

    line-height:1.27!important;

    font-weight:700!important;

    text-align:center!important;

    text-wrap:balance!important;

}





/* =========================================================

   PROUDLY CANADIAN TRUST SECTION

   ========================================================= */



body.home .proudly-sec{

    margin:38px 0!important;

    padding:38px 18px!important;

    background:var(--dhc-navy)!important;

    color:#fff!important;

}



body.home .proudly-sec h2,

body.home .proudly-sec h3,

body.home .proudly-sec p{

    color:#fff!important;

}



body.home .proudly-sec h2{

    margin:0 auto 12px!important;

    max-width:420px!important;

    font-size:28px!important;

    line-height:1.08!important;

    letter-spacing:-.65px!important;

    text-align:center!important;

}



body.home .proudly-sec p,

body.home .proud-text{

    max-width:400px!important;

    margin:0 auto!important;

    color:#dbe7ef!important;

    font-size:14.5px!important;

    line-height:1.55!important;

    text-align:center!important;

}





/* =========================================================

   OFFERS

   ========================================================= */



body.home .offer-bx{

    min-height:0!important;

    height:auto!important;

    margin:0 0 18px!important;

    padding:0!important;

    overflow:hidden!important;

    background:#fff!important;

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

    border-radius:16px!important;

    box-shadow:0 5px 20px rgba(8,47,82,.05)!important;

}



body.home .offer-image{

    margin:0!important;

}



body.home .offer-image img{

    display:block!important;

    width:100%!important;

    height:190px!important;

    object-fit:cover!important;

    margin:0!important;

}



body.home .offer-title{

    padding:19px 18px 10px!important;

}



body.home .offer-title h3,

body.home .offer-bx h3{

    margin:0!important;

    color:var(--dhc-navy)!important;

    font-size:19px!important;

    line-height:1.24!important;

    letter-spacing:-.25px!important;

    font-weight:750!important;

    text-wrap:balance!important;

}



body.home .offer-bottom{

    padding:0 18px 20px!important;

}



body.home .offer-bx .theme-btn a,

body.home .offer-bottom a{

    min-height:48px!important;

    display:flex!important;

    align-items:center!important;

    justify-content:center!important;

    border-radius:7px!important;

    background:var(--dhc-orange)!important;

    color:#fff!important;

    font-size:14px!important;

    font-weight:750!important;

    text-decoration:none!important;

}





/* =========================================================

   WHY DHC

   ========================================================= */



body.home .why-bx{

    overflow:hidden!important;

    margin:0 0 18px!important;

    padding:0!important;

    background:#fff!important;

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

    border-radius:16px!important;

    box-shadow:0 4px 18px rgba(8,47,82,.045)!important;

}



body.home .why-bx-img{

    margin:0!important;

}



body.home .why-bx-img img{

    display:block!important;

    width:100%!important;

    height:175px!important;

    object-fit:cover!important;

    margin:0!important;

}



body.home .why-bx h3{

    margin:18px 18px 9px!important;

    color:var(--dhc-navy)!important;

    font-size:20px!important;

    line-height:1.2!important;

    letter-spacing:-.25px!important;

}



body.home .why-bx p{

    margin:0 18px 14px!important;

    color:#526a7d!important;

    font-size:14px!important;

    line-height:1.55!important;

    display:-webkit-box!important;

    -webkit-box-orient:vertical!important;

    -webkit-line-clamp:5!important;

    overflow:hidden!important;

}



body.home .why-bx a{

    margin:0 18px 20px!important;

    display:inline-flex!important;

    align-items:center!important;

    color:var(--dhc-orange)!important;

    font-size:13.5px!important;

    font-weight:750!important;

    text-decoration:none!important;

}





/* =========================================================

   PLAYBOOK / ARTICLE CARDS

   ========================================================= */



body.home .wp-block-post-template{

    display:grid!important;

    grid-template-columns:1fr!important;

    gap:16px!important;

}



body.home .wp-block-post{

    overflow:hidden!important;

    background:#fff!important;

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

    border-radius:14px!important;

    box-shadow:0 3px 14px rgba(8,47,82,.04)!important;

}



body.home .wp-block-post-featured-image{

    margin:0!important;

}



body.home .wp-block-post-featured-image img{

    width:100%!important;

    aspect-ratio:16/10!important;

    object-fit:cover!important;

}



body.home .wp-block-post-title{

    padding:16px 16px 6px!important;

    color:var(--dhc-navy)!important;

    font-size:18px!important;

    line-height:1.25!important;

}



body.home .wp-block-post-excerpt{

    padding:0 16px 16px!important;

    color:#586f81!important;

    font-size:13.5px!important;

    line-height:1.5!important;

}





/* =========================================================

   EMERGENCY SECTION

   ========================================================= */



body.home .emergency-sec{

    margin:40px 0 0!important;

    padding:40px 18px!important;

    background:var(--dhc-navy)!important;

    color:#fff!important;

}



body.home .emergency-sec h2,

body.home .emergency-sec h3{

    margin-top:0!important;

    color:#fff!important;

    font-size:27px!important;

    line-height:1.12!important;

    letter-spacing:-.55px!important;

}



body.home .emergency-sec p{

    color:#d9e5ed!important;

    font-size:14.5px!important;

    line-height:1.6!important;

}



body.home .emergency-sec .theme-btn a,

body.home .emergency-sec a{

    min-height:50px!important;

    display:inline-flex!important;

    align-items:center!important;

    justify-content:center!important;

    padding:10px 20px!important;

    border-radius:7px!important;

    background:var(--dhc-orange)!important;

    color:#fff!important;

    font-size:14.5px!important;

    font-weight:750!important;

    text-decoration:none!important;

}





/* =========================================================

   CONTACT

   ========================================================= */



body.home .contact-sec{

    padding:42px 16px!important;

    background:#f3f6f8!important;

}



body.home .contact-sec h2{

    margin:0 0 10px!important;

    color:var(--dhc-navy)!important;

    font-size:28px!important;

    line-height:1.1!important;

    letter-spacing:-.55px!important;

}



body.home .contact-sec p{

    color:#526a7d!important;

    font-size:14px!important;

    line-height:1.55!important;

}



body.home .contact-right-cr{

    padding:22px 16px!important;

    background:#fff!important;

    border:1px solid #dfe6eb!important;

    border-radius:15px!important;

    box-shadow:0 6px 22px rgba(8,47,82,.045)!important;

}



body.home .contact-sec input:not([type=checkbox]):not([type=radio]),

body.home .contact-sec select,

body.home .contact-sec textarea{

    width:100%!important;

    min-height:52px!important;

    margin-bottom:11px!important;

    padding:11px 13px!important;

    border:1px solid #ccd7df!important;

    border-radius:8px!important;

    background:#fff!important;

    color:#203e55!important;

    font-size:16px!important;

}



body.home .contact-sec textarea{

    min-height:110px!important;

}



body.home .contact-sec input:focus,

body.home .contact-sec select:focus,

body.home .contact-sec textarea:focus{

    outline:0!important;

    border-color:var(--dhc-blue)!important;

    box-shadow:0 0 0 3px rgba(22,141,181,.10)!important;

}



body.home .contact-sec input[type=submit],

body.home .contact-sec button{

    min-height:52px!important;

    width:100%!important;

    border:0!important;

    border-radius:8px!important;

    background:var(--dhc-orange)!important;

    color:#fff!important;

    font-size:15px!important;

    font-weight:750!important;

}





/* =========================================================

   FOOTER

   ========================================================= */



body.home footer{

    padding-bottom:86px!important;

    background:#071f34!important;

}



body.home footer .links-row{

    padding-top:30px!important;

}



body.home footer .links-row > div{

    margin-bottom:24px!important;

}



body.home footer .links-row .col-lg-3:after{

    display:none!important;

}



body.home footer h2,

body.home footer h3,

body.home footer h4{

    color:#fff!important;

    font-size:16px!important;

    line-height:1.25!important;

}



body.home footer p,

body.home footer li,

body.home footer a{

    color:#d6e2ea!important;

    font-size:13.5px!important;

    line-height:1.55!important;

}



body.home footer a{

    text-decoration:none!important;

}



body.home footer .logo-ft img{

    width:auto!important;

    max-width:190px!important;

    height:auto!important;

}



body.home footer .ft-btm-right p{

    justify-content:flex-start!important;

    text-align:left!important;

}



}

