
.urc-header-widget,.urc-header-widget *{box-sizing:border-box}
.urc-header-wrap{width:calc(100% - 48px);max-width:1400px;margin:0 auto}
.urc-header-top{background:#0b0b0b;color:#fff;font-size:11px;padding:7px 0}
.urc-top-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
.urc-top-right{display:flex;align-items:center;gap:10px}
.urc-top-phone{display:inline-flex;align-items:center;gap:6px}
.urc-top-phone strong{color:#f7941d}
.urc-top-phone-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.urc-main-header{background:#fff;min-height:84px;border-bottom:1px solid #eee}
.urc-header-grid{min-height:inherit;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}
.urc-header-logo img{width:150px;height:auto;display:block}
.urc-nav{display:flex;align-items:center;justify-content:center;min-width:0}
.urc-nav .urc-menu{display:flex;align-items:center;justify-content:center;gap:24px;list-style:none;margin:0;padding:0}
.urc-nav .urc-menu>li{position:relative}
.urc-nav a{display:flex;align-items:center;gap:7px;text-decoration:none}
.urc-nav>.urc-menu>li>a{color:#111;text-transform:uppercase;font-size:12px;font-weight:700;white-space:nowrap;padding:30px 0}
.urc-dropdown-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;position:relative;top:1px}
.urc-dropdown-icon i{font-size:9px;line-height:1}
.urc-dropdown-icon svg{width:9px;height:9px;display:block}
.urc-nav .sub-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:220px;background:#fff;list-style:none;margin:0;padding:10px 0;border:1px solid #e8e8e8;box-shadow:0 12px 25px rgba(0,0,0,.08);z-index:9999}
.urc-nav li:hover>.sub-menu{display:block}
.urc-nav .sub-menu a{padding:11px 16px;color:#111;font-size:13px;white-space:nowrap}
.urc-header-actions{display:flex;justify-content:flex-end}
.urc-header-btn{display:inline-flex;align-items:center;justify-content:center;background:#f7941d;color:#fff!important;text-decoration:none;padding:14px 20px;border-radius:3px;font-size:12px;font-weight:800;text-transform:uppercase;white-space:nowrap}
.urc-header-btn:hover{background:#df7e00}
@media(max-width:1100px){.urc-header-grid{grid-template-columns:auto auto}.urc-nav{display:none}}
@media(max-width:767px){.urc-header-wrap{width:calc(100% - 28px)}.urc-top-inner{justify-content:center;text-align:center}.urc-top-inner>span:first-child{display:none}}


/* ===== URCovered Header v5.1 safe mobile patch ===== */

.urc-mobile-menu-toggle{
    display:none;
    width:44px;
    height:44px;
    padding:10px;
    border:0;
    background:transparent;
    cursor:pointer;
    flex-direction:column;
    justify-content:center;
    gap:5px;
}
.urc-mobile-menu-toggle span{
    display:block;
    width:24px;
    height:2px;
    background:#111;
    transition:transform .2s ease, opacity .2s ease;
}
.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
}
.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(2){
    opacity:0;
}
.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
}
.urc-mobile-submenu-toggle{display:none}

/* Tablet/mobile navigation */
@media(max-width:1100px){
    .urc-main-header{
        position:relative;
        z-index:9998;
    }

    .urc-header-grid{
        grid-template-columns:auto 1fr auto !important;
        gap:14px;
    }

    .urc-mobile-menu-toggle{
        display:flex;
    }

    .urc-nav{
        display:none !important;
        position:absolute !important;
        top:100%;
        left:0;
        right:0;
        width:100%;
        padding:8px 22px 18px;
        background:#fff;
        border-top:1px solid #eee;
        box-shadow:0 12px 22px rgba(0,0,0,.12);
        z-index:9999;
    }

    .urc-mobile-menu-open .urc-nav{
        display:block !important;
    }

    .urc-nav .urc-menu{
        display:block !important;
        width:100%;
    }

    .urc-nav .urc-menu > li{
        display:block;
        width:100%;
        position:relative;
        border-bottom:1px solid #eee;
    }

    .urc-nav .urc-menu > li > a{
        display:flex;
        width:100%;
        justify-content:flex-start;
        padding:14px 42px 14px 0;
    }

    .urc-nav .sub-menu{
        display:none !important;
        position:static !important;
        width:100%;
        min-width:0;
        transform:none !important;
        box-shadow:none !important;
        border:0 !important;
        border-top:1px solid #eee !important;
        padding:4px 0 10px 16px !important;
    }

    .urc-nav .menu-item-has-children.urc-mobile-submenu-open > .sub-menu{
        display:block !important;
    }

    .urc-mobile-submenu-toggle{
        display:flex;
        position:absolute;
        right:0;
        top:3px;
        width:42px;
        height:42px;
        border:0;
        background:transparent;
        color:#f7941d;
        font-size:23px;
        align-items:center;
        justify-content:center;
        cursor:pointer;
    }
}

/* Phone layout */
@media(max-width:767px){
    .urc-header-wrap{
        width:calc(100% - 28px) !important;
    }

    .urc-header-top{
        padding:8px 0 !important;
    }

    .urc-top-inner{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        align-items:center !important;
        gap:10px !important;
        text-align:left !important;
    }

    /* Hide "Building Quality..." on phone. */
    .urc-top-inner > span:first-child{
        display:none !important;
    }

    .urc-top-right{
        grid-column:1 / -1;
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        align-items:center !important;
        gap:10px !important;
        width:100% !important;
        text-align:left !important;
        white-space:normal !important;
    }

    .urc-top-phone{
        justify-self:end !important;
        white-space:nowrap !important;
    }

    .urc-top-phone strong{
        white-space:nowrap !important;
    }

    .urc-header-grid{
        grid-template-columns:auto 1fr auto !important;
        gap:8px !important;
    }

    /* No estimate CTA in mobile header. */
    .urc-header-btn{
        display:none !important;
    }

    .urc-header-actions{
        justify-self:end;
    }

    .urc-mobile-menu-toggle{
        display:flex !important;
    }
}


/* ===== URCovered Header v5.2 fixes ===== */

/* Force brand styling so Elementor/global button styles cannot turn this pink. */
.urc-header-widget .urc-mobile-menu-toggle,
.urc-header-widget .urc-mobile-menu-toggle:hover,
.urc-header-widget .urc-mobile-menu-toggle:focus,
.urc-header-widget .urc-mobile-menu-toggle:active{
    background:#F7941D !important;
    background-color:#F7941D !important;
    border:0 !important;
    border-radius:3px !important;
    box-shadow:none !important;
    outline:0 !important;
    color:#111 !important;
}

.urc-header-widget .urc-mobile-menu-toggle span{
    background:#111 !important;
}

/* Ensure the opened navigation belongs to this exact header widget. */
@media(max-width:1100px){
    .urc-header-widget.urc-mobile-menu-open .urc-nav{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }

    .urc-header-widget .urc-nav{
        visibility:visible;
        opacity:1;
    }
}


/* ===== URCovered Header v5.3 submenu button color fix ===== */

/* Prevent Elementor/global button styles from affecting mobile submenu toggles. */
.urc-header-widget .urc-mobile-submenu-toggle,
.urc-header-widget .urc-mobile-submenu-toggle:hover,
.urc-header-widget .urc-mobile-submenu-toggle:focus,
.urc-header-widget .urc-mobile-submenu-toggle:active{
    appearance:none !important;
    -webkit-appearance:none !important;
    background:transparent !important;
    background-color:transparent !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    color:#F7941D !important;
    padding:0 !important;
}

.urc-header-widget .urc-mobile-submenu-toggle span{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#F7941D !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    font-family:Arial,sans-serif !important;
    font-size:28px !important;
    font-weight:400 !important;
    line-height:1 !important;
}

/* Keep expanded minus identical to collapsed plus. */
.urc-header-widget .menu-item-has-children.urc-mobile-submenu-open > .urc-mobile-submenu-toggle,
.urc-header-widget .menu-item-has-children.urc-mobile-submenu-open > .urc-mobile-submenu-toggle:hover,
.urc-header-widget .menu-item-has-children.urc-mobile-submenu-open > .urc-mobile-submenu-toggle:focus{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#F7941D !important;
}

/* Remove focus ring/outline being injected by theme button styles, while retaining keyboard focus visibility. */
.urc-header-widget .urc-mobile-submenu-toggle:focus-visible{
    outline:1px solid #F7941D !important;
    outline-offset:2px !important;
}


/* ===== URCovered Header v5.4 tablet header spacing + hamburger styling ===== */

/* Tablet hamburger: black square with white bars. */
.urc-header-widget .urc-mobile-menu-toggle,
.urc-header-widget .urc-mobile-menu-toggle:hover,
.urc-header-widget .urc-mobile-menu-toggle:focus,
.urc-header-widget .urc-mobile-menu-toggle:active{
    background:#111111 !important;
    background-color:#111111 !important;
    color:#FFFFFF !important;
    border:0 !important;
    box-shadow:none !important;
}

.urc-header-widget .urc-mobile-menu-toggle span{
    background:#FFFFFF !important;
}

/* Give the Estimate CTA and hamburger breathing room on tablet widths. */
@media(min-width:768px) and (max-width:1100px){
    .urc-header-widget .urc-header-actions{
        display:flex !important;
        align-items:center !important;
        gap:20px !important;
    }

    .urc-header-widget .urc-header-btn{
        margin:0 !important;
    }

    .urc-header-widget .urc-mobile-menu-toggle{
        margin:0 !important;
        flex:0 0 52px !important;
        width:52px !important;
        height:52px !important;
    }

    .urc-header-widget .urc-mobile-menu-toggle span{
        width:25px !important;
        height:2px !important;
    }
}

/* Phone still has no Estimate CTA; keep a compact black/white hamburger. */
@media(max-width:767px){
    .urc-header-widget .urc-header-actions{
        gap:0 !important;
    }

    .urc-header-widget .urc-mobile-menu-toggle{
        width:46px !important;
        height:46px !important;
    }
}


/* ===== URCovered Header v5.5 hamburger centering ===== */

.urc-header-widget .urc-mobile-menu-toggle{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    line-height:1 !important;
}

.urc-header-widget .urc-mobile-menu-toggle span{
    display:block !important;
    flex:0 0 auto !important;
    margin-left:auto !important;
    margin-right:auto !important;
    transform-origin:center center !important;
}

/* Keep the open / close X centered in the same button */
.urc-header-widget.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg) !important;
}
.urc-header-widget.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(2){
    opacity:0 !important;
}
.urc-header-widget.urc-mobile-menu-open .urc-mobile-menu-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg) !important;
}


/* ===== URCovered Header v5.6 responsive hamburger visibility ===== */

/* Desktop: hamburger must not appear while the full nav is visible. */
.urc-header-widget .urc-mobile-menu-toggle{
    display:none !important;
}

/* Only show hamburger once the desktop navigation collapses. */
@media(max-width:1100px){
    .urc-header-widget .urc-mobile-menu-toggle{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        padding:0 !important;
        line-height:1 !important;
    }

    .urc-header-widget .urc-header-actions{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        gap:24px !important;
    }
}

/* Tablet: keep estimate button and hamburger clearly separated. */
@media(min-width:768px) and (max-width:1100px){
    .urc-header-widget .urc-header-btn{
        margin-right:0 !important;
    }

    .urc-header-widget .urc-mobile-menu-toggle{
        margin-left:0 !important;
        flex:0 0 52px !important;
        width:52px !important;
        height:52px !important;
    }
}

/* Phone: estimate CTA remains hidden; hamburger stays visible. */
@media(max-width:767px){
    .urc-header-widget .urc-header-actions{
        gap:0 !important;
    }

    .urc-header-widget .urc-mobile-menu-toggle{
        display:flex !important;
    }
}

/* ===== URCovered Header v5.7 nested dropdown fix ===== */
/* First-level dropdown stays centered beneath the main navigation item. */
@media(min-width:1101px){
    .urc-header-widget .urc-nav > .urc-menu > li > .sub-menu{
        top:100% !important;
        left:50% !important;
        right:auto !important;
        transform:translateX(-50%) !important;
    }

    /* Every dropdown item becomes the positioning context for its own child menu. */
    .urc-header-widget .urc-nav .sub-menu > li{
        position:relative !important;
    }

    /* Grandchild menus fly out neatly to the right of their parent item. */
    .urc-header-widget .urc-nav .sub-menu .sub-menu{
        top:-1px !important;
        left:100% !important;
        right:auto !important;
        transform:none !important;
        margin-left:0 !important;
        min-width:240px !important;
        z-index:10001 !important;
    }

    /* Keep nested dropdowns hidden until their direct parent is hovered/focused. */
    .urc-header-widget .urc-nav .sub-menu .sub-menu{
        display:none !important;
    }
    .urc-header-widget .urc-nav .sub-menu li:hover > .sub-menu,
    .urc-header-widget .urc-nav .sub-menu li:focus-within > .sub-menu{
        display:block !important;
    }

    /* Give parent links room for the fly-out indicator. */
    .urc-header-widget .urc-nav .sub-menu .menu-item-has-children > a{
        position:relative !important;
        padding-right:38px !important;
    }

    /* Simple brand-neutral chevron for items that contain a third level. */
    .urc-header-widget .urc-nav .sub-menu .menu-item-has-children > a::after{
        content:'›';
        position:absolute;
        right:16px;
        top:50%;
        transform:translateY(-50%);
        font-size:18px;
        line-height:1;
        color:#F7941D;
        font-weight:600;
    }

    /* Prevent the second menu from visually overlapping the first menu border. */
    .urc-header-widget .urc-nav .sub-menu .sub-menu::before{
        content:'';
        position:absolute;
        top:0;
        left:-2px;
        width:2px;
        height:100%;
        background:transparent;
    }
}


/* ===== URCovered Header v5.8 mobile third-level navigation ===== */
@media(max-width:1100px){
    /* Every submenu row must be its own positioning context so nested arrows
       stay attached to the correct child link. */
    .urc-header-widget .urc-nav .sub-menu > li{
        position:relative !important;
        display:block !important;
        width:100% !important;
    }

    /* Child links that own grandchildren get room for their arrow button. */
    .urc-header-widget .urc-nav .sub-menu > li.menu-item-has-children > a{
        display:flex !important;
        align-items:center !important;
        width:100% !important;
        padding-right:44px !important;
    }

    /* Keep the normal top-level +/- control exactly where it belongs. */
    .urc-header-widget .urc-mobile-submenu-toggle--top{
        right:0 !important;
        top:3px !important;
    }

    /* Nested items use a dedicated arrow beside the CHILD row. */
    .urc-header-widget .urc-mobile-submenu-toggle--nested,
    .urc-header-widget .urc-mobile-submenu-toggle--nested:hover,
    .urc-header-widget .urc-mobile-submenu-toggle--nested:focus,
    .urc-header-widget .urc-mobile-submenu-toggle--nested:active{
        display:flex !important;
        position:absolute !important;
        right:2px !important;
        top:5px !important;
        width:38px !important;
        height:38px !important;
        padding:0 !important;
        align-items:center !important;
        justify-content:center !important;
        background:transparent !important;
        background-color:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        outline:0 !important;
        color:#F7941D !important;
        cursor:pointer !important;
        z-index:2 !important;
    }

    .urc-header-widget .urc-mobile-submenu-toggle--nested .urc-mobile-child-arrow{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:auto !important;
        height:auto !important;
        margin:0 !important;
        padding:0 !important;
        background:transparent !important;
        color:#F7941D !important;
        font-family:Arial,sans-serif !important;
        font-size:26px !important;
        font-weight:400 !important;
        line-height:1 !important;
        transform:rotate(0deg) !important;
        transform-origin:center !important;
        transition:transform .2s ease !important;
    }

    /* Right-pointing arrow turns down when its grandchildren are open. */
    .urc-header-widget .urc-has-mobile-children--nested.urc-mobile-submenu-open > .urc-mobile-submenu-toggle--nested .urc-mobile-child-arrow{
        transform:rotate(90deg) !important;
    }

    /* Third-level menu is visually grouped beneath its child item. */
    .urc-header-widget .urc-nav .sub-menu .sub-menu{
        position:static !important;
        display:none !important;
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
        padding:4px 0 8px 18px !important;
        transform:none !important;
        border:0 !important;
        border-left:2px solid #F7941D !important;
        box-shadow:none !important;
        background:#fafafa !important;
    }

    .urc-header-widget .urc-nav .sub-menu .menu-item-has-children.urc-mobile-submenu-open > .sub-menu{
        display:block !important;
    }

    .urc-header-widget .urc-nav .sub-menu .sub-menu > li > a{
        padding:10px 12px !important;
        font-size:.95em !important;
        white-space:normal !important;
    }

    /* Desktop-style generated chevrons should never appear in mobile rows. */
    .urc-header-widget .urc-nav .sub-menu .menu-item-has-children > a::after{
        display:none !important;
        content:none !important;
    }
}

/* Native GoHighLevel estimate popup */
.urc-native-ghl-modal{display:none!important;position:fixed;inset:0;z-index:9999999;align-items:center;justify-content:center;padding:30px}
.urc-native-ghl-modal.is-open{display:flex!important}
.urc-native-ghl-overlay{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:pointer}
.urc-native-ghl-dialog{position:relative;z-index:2;width:100%;max-width:700px;max-height:calc(100vh - 60px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.35)}
.urc-native-ghl-form{width:100%;min-height:1017px;background:#fff}
.urc-native-ghl-form iframe{display:block;width:100%!important;height:1017px!important;min-height:1017px!important;border:0!important;background:#fff}
.urc-native-ghl-close{position:sticky;top:14px;float:right;z-index:100;width:42px;height:42px;margin:14px 14px -56px 0;padding:0!important;display:flex;align-items:center;justify-content:center;border:0!important;border-radius:50%!important;background:#000!important;color:#fff!important;font:300 29px/1 Arial,sans-serif!important;cursor:pointer;box-shadow:0 4px 15px rgba(0,0,0,.2)}
.urc-native-ghl-close:hover,.urc-native-ghl-close:focus{background:#222!important;color:#fff!important}
body.urc-native-ghl-open{overflow:hidden!important}
@media(max-width:767px){.urc-native-ghl-modal{padding:10px}.urc-native-ghl-dialog{max-height:calc(100dvh - 20px)}.urc-native-ghl-close{top:10px;width:40px;height:40px;margin:10px 10px -50px 0;font-size:27px!important}}
