/*
Theme Name: NG Theme
Theme URI: https://ngtheme:8890/
Description: This is a custom child theme for NG Theme
Author: Never Gravity
Author URI: https://nevergravity.com/
Template: Divi
Version: 1.0.0
*/

/*--MAIN CSS--*/
h1, h2, h3, h4{
    margin-bottom:10px;
}
h1, h1.entry-title {
  font-size: clamp(2rem, 1.6711rem + 1.3158vw, 3.25rem);
}
h2, .et_pb_column_2_5 h2{
  font-size: clamp(2rem, 1.8355rem + 0.6579vw, 2.625rem);
}
h3, h2.sm-size{
  font-size: clamp(1.625rem, 1.5114rem + 0.3636vw, 1.875rem);
}
h4 {
  font-size: 1.2rem;
}
p.subheading{
    font-size:24px;
}
.vert-align{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/*--Globals--*/
.img-cover{
    height:100%;
}
.img-cover .et_pb_image_wrap{
    width:100%;
    height:100%;
}
.img-cover .et_pb_image_wrap img{
    width:100%!important;
    object-fit: cover;
}
/*-Cards-*/
.ng-card{
    display:flex;
    flex-direction:column;
}
/*Make card button stick to the bottom*/
.card-content{
    flex-grow:1;
}
/*-Horizintal Blurbs with icon-*/
.horizontal-blurb .et_pb_blurb_content{
    display:flex;
    flex-direction:row;
    align-items: center;
    gap:10px;
    max-width:none;
}
.horizontal-blurb .et_pb_blurb_content .et_pb_main_blurb_image{
    margin:0;
}
.horizontal-blurb .et_pb_blurb_content .et_pb_blurb_container{
    padding:0;
}
.horizontal-blurb.phone-blurb .et_pb_blurb_content .et_pb_blurb_container a{
    color:initial;
    text-decoration: underline;
}
/*-Icon Grid for 5 columns on desktop (adjst columns for your nuumber of icons)-*/
.icon-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 50px; /* adjust spacing between icons */
    row-gap:25px;
    margin: 0 auto;
    justify-items: center;
    align-items: center;
}
.icon-grid .et_pb_image{
    margin:0;
}
/*BC Divider*/
.bc-divider-container{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:20px;
}
.bc-divider-line{
    border: 1px solid #86AEE4;
    width:100%;
}

/*-SVG Underline-*/
.ng-underline{
    position:relative;
}
.ng-underline:after{
    content: "";
    width:100%;
    height:30px;
    background-image: url(https://ngtheme:8890/wp-content/uploads/2025/07/yellow-underline.svg);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    position:absolute;
    bottom:-15px;
    left:0;
}
.lg-price{
    font-size:64px;
    font-weight:600;
    line-height:0.75;
}
.dollar{
    font-size:30px;
    vertical-align:top;
}
/*Sticky CTA Section*/
.cta-column-flex{
    display:flex;
    flex-direction:row;
    gap:50px;
    justify-content:center;
}
.sticky-footer {
  position: relative; /* normal position by default */
  bottom: 0;
  width: 100%;
  transition: all 0.3s ease;
  z-index: 999;
}

.sticky-footer.fixed {
  position: fixed;
  bottom: 0;
  left: 0;
}
.sticky-footer.fixed {
  animation: fadeInUp 0.3s ease forwards;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(100%); }
  to { opacity: 1; transform: translateY(0); }
}
/*-FAQ Styles-*/
.et_pb_toggle_title:before{
    content:"\4c";
}
.et_pb_toggle_open, .et_pb_toggle_close{
    padding:30px 0;
}
.et_pb_accordion .et_pb_toggle{
    margin-bottom:0px !important;
}
/*--NAV--*/
#et-top-navigation .header-cta a, #menu-main-menu .header-cta a {
    color:white!important;
    background-color: #1458b3;
    padding: 15px 20px!important;
    border-radius: 7px;
    text-align: center;
    opacity:1!important;
}
.et-fixed-header #top-menu .header-cta a{
    color:white!important;
}
#et-top-navigation .header-cta a:hover, #menu-main-menu .header-cta a:hover {
    background-color:#153b6f;
    padding: 15px 20px!important;
    border-radius: 7px;
    text-align: center;
    opacity: 1!important;
}
#et-top-navigation .header-cta a:before{
    display:none;
}
/*--Add hover line under nav items--*/
#top-menu li a:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background: #1458b3;
    visibility: hidden;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}
#top-menu li a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#top-menu-nav>ul>li>a:hover:before{
    opacity:1;
}
body ul#top-menu > li.current-menu-item > a:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background-color: #1458b3;
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
/*--Sub Menus--*/
/*-Prevent dropdown from opening when cursor hovers over menu area-*/
#top-menu-nav ul.sub-menu{
    padding:10px 20px 20px 20px;
    display:none;
}
#top-menu-nav li:hover>ul.sub-menu{
    display:block;
}
#top-menu-nav ul.sub-menu li{
    padding:0; 
}
#top-menu-nav ul.sub-menu li a{
    padding:12px 0; 
}
/*-Change Sub Menu color if needed-*/
/*
#top-menu-nav ul.sub-menu li a{
    color:white;
}
#main-header .nav li ul.sub-menu{
    border-top:none;
}
*/
/*--Switch next and previous pagination--*/
.et_pb_posts_nav .nav-previous { float: right; }
.et_pb_posts_nav .nav-next { float: left; }
.et_pb_posts_nav .meta-nav { display: none; }
.et_pb_posts_nav .nav-next a:before { content: '← '; }
.et_pb_posts_nav .nav-previous a:after { content: ' →'; }

/*---START Collapsible Mobile Menu---*/
.mobile_menu_bar::before{
    color:#153B6F;
}
/*change hamburger icon to x when mobile menu is open*/

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}
.et_pb_menu .et_mobile_menu .menu-item-has-children > a,
#main-header .et_mobile_menu .menu-item-has-children > a {
    background-color: transparent;
    position: relative;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children > a:after, #main-header .et_mobile_menu .menu-item-has-children > a:after {
    font-family: 'ETmodules';
    text-align: center;
    speak: none;
    font-weight: 600;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    font-size: 30px;
    content: '\4c';
    top: 15px;
    right: 13px;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children.visible > a:after,
#main-header .et_mobile_menu .menu-item-has-children.visible > a:after {
    content: '\4b';
}
.et_pb_menu .et_mobile_menu ul.sub-menu,
#main-header .et_mobile_menu ul.sub-menu,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li ul.sub-menu {
    display: none !important;
    visibility: hidden !important;
    transition: all 1.5s ease-in-out;
}
.et_pb_menu .et_mobile_menu li.visible > ul.sub-menu,
#main-header .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l #main-header .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li.visible > ul.sub-menu {
    display: block !important;
    visibility: visible !important;
}
/*--FOOTER--*/
#footer-widgets .footer-widget li:before {
    display:none;
}
#footer-widgets .footer-widget li {
    padding-left: 0px;
}
/*-Reset widget margins-*/
#footer-widgets .footer-widget .fwidget{
    float:none;
    margin-bottom:0;
}
#footer-widgets .footer-widget .fwidget .wp-block-image.ng-footer-logo{
    margin-bottom:15px;
}
#footer-widgets .footer-widget .fwidget .ng-footer-contact{
    margin-bottom:30px;
}
#footer-widgets .footer-widget .fwidget .ng-fwidget-title{
    display:block;
    font-size:18px;
    margin-bottom:15px;
    font-weight:700;
}
#footer-widgets .footer-widget #menu-main-menu li a {
    color:#153b6f;
}
#footer-widgets .footer-widget #menu-main-menu .header-cta{
    margin-top:30px;
}
#footer-widgets .footer-widget #menu-main-menu .header-cta a{
    font-size:15px!important;
}
/*--Gravity Forms--*/
h2.gform_title{
    font-size:28px;
}
.gform_wrapper {
    --gf-ctrl-btn-font-family: 'Fraunces', Georgia, "Times New Roman", serif;
    --gf-ctrl-btn-font-size-md: 16px;
    --gf-ctrl-btn-font-weight: 600;
    --gf-ctrl-btn-text-transform: none;
    --gf-ctrl-btn-color-primary:#FFFFFF;
    --gf-ctrl-btn-bg-color-primary:#1458b3;
    --gf-ctrl-btn-color-hover-primary: #FFFFFF;
    --gf-ctrl-btn-bg-color-hover-primary: #153b6f;
    --gf-ctrl-btn-padding-y: 15px;
    --gf-ctrl-btn-padding-x-md: 25px;
}
.gform-theme--api, .gform-theme--framework{
    --gf-ctrl-btn-radius:5px;
}
.gform-theme--api, .gform-theme--foundation{
    --gf-form-gap-y:20px;
}

/*--MEDIA QUERIES--*/
/*Desktop breakpoint for header*/
@media only screen and (min-width: 1176px) {
    #et_mobile_nav_menu{
        display:none;
    }
    .et_header_style_left #et-top-navigation nav>ul>li>a{
        padding-bottom:37px;
    }
    .et_header_style_left #et-top-navigation{
        padding:23px 0 0 0;
    }
    .et_header_style_left .et-fixed-header #et-top-navigation{
        padding-top:10px;
    }
    .et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li>a{
        padding-bottom:25px;
    }
}
/*When header breaks on smaller desktop screens*/
@media only screen and (max-width: 1175px) {
    /*-Shrink mobile menu height-*/
    #top-menu{
        display:none;
    }
    #et_mobile_nav_menu{
        display:block;
    }
    .et_header_style_left #et-top-navigation .mobile_menu_bar{
        padding-bottom:15px;
    }
    .et_header_style_left .et-fixed-header #et-top-navigation, .et_header_style_left #et-top-navigation{
        padding-top:15px;
    }
    .et_fixed_nav #main-header{
        display: flex;
        position:fixed;
    }
    /*--Start Mobile Menu slide in--*/
    /*--Add box shadow to mobile menu--*/
    #et_mobile_nav_menu .mobile_nav.opened #mobile_menu{
        box-shadow: -15px 0px 10px 1px rgba(0, 0, 0, .5);
    }
    #mobile_menu{
        position:fixed;
        height:100vh!important;
        overflow:auto;
        right:0;
        left:auto;
        top:0;
        display:block!important;
        padding:60px 5% 5% 5%!important;
        background-color:#FFFFFF!important;
        border-top: none;
        -webkit-transition: -webkit-transform 0.4s 0s;
        -moz-transition: -moz-transform 0.4s 0s;
        transition: transform 0.4s 0s;
        -overflow-scrolling:touch!important;
        -webkit-overflow-scrolling:touch!important;
    }
    /* Move the mobile menu back onto the screen when open using translateX(0%) */
    .mobile_nav.opened #mobile_menu {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    /* Move the mobile menu fully off the screen when closed using translateX(100%) */
    .mobile_nav.closed #mobile_menu {
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%);
    }
    .mobile_menu_bar{
        z-index: 9999;
    }
    .et_mobile_menu{
        z-index: 9998;
    }
    #mobile_menu{
        display:flex;
        flex-direction:column;
    }
    #mobile_menu li a{
        font-size: 20px;
        padding-top:20px;
        padding-bottom:20px;
        color:#153b6f;
        border-bottom:1px solid #d6d6ee;  
    }
    #mobile_menu li.header-cta a{
        border-bottom:none;
        margin-top:15px;
        
    }
    /*--END Mobile Menu Slide In--*/
    
}
/*** Responsive Styles Desktop Only ***/
@media only screen and (min-width: 981px) {
    .list-grid{
        display:grid;
        grid-template-columns: repeat(2, 1fr);
    }
}
/*** Responsive Styles Tablet And Below ***/
@media all and (max-width: 980px) {
    .container.et_menu_container{
        width:90%;
    }
    #footer-widgets .footer-widget{
        float:none;
    }
    /*---CHANGE STACKING ORDER ON MOBILE---*/
    .custom_row, .custom_row_wide {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
            -webkit-flex-wrap: wrap; /* Safari 6.1+ */
        flex-wrap: wrap;
    }
    /*** custom classes that will designate the order of columns in the flex box row ***/
    .first-on-mobile {
        -webkit-order: 1;
        order: 1;
        padding-bottom:30px;
    }
    .custom_row_wide .first-on-mobile {
        -webkit-order: 1;
        order: 1;
        padding-bottom:0px;
    }
    .second-on-mobile {
        -webkit-order: 2;
        order: 2;
        margin-bottom:0px;
    }

    .third-on-mobile {
        -webkit-order: 3;
        order: 3;
    }

    .fourth-on-mobile {
        -webkit-order: 4;
        order: 4;
    }
    /*---END--CHANGE STACKING ORDER ON MOBILE---*/
    .cta-column-flex{
        flex-direction:column;
        gap:20px;
    }
}

/*** Responsive Styles Tablet Only ***/
@media all and (min-width: 768px) and (max-width: 1176px) {
    /*--Start mobile menu slide in--*/
    #mobile_menu{
        width: 60%;
    }
    /*--END mobile menu slide in--*/
}

/*** Responsive Styles Smartphone Only ***/
@media all and (max-width: 767px) {
    /*--Start mobile menu slide in--*/
    #mobile_menu{
        width: 80%;
    }
    /*--END mobie menu slide in--*/
    .icon-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/*** Responsive Styles Smartphone Portrait ***/
@media all and (max-width: 479px) {

}