/* ===============================
   GLOBAL FIXES + GENERAL
================================= */

#upperfooter { z-index: 10; }

.par-20 p { font-size: 20px !important; }

#pos-col { border: 10px solid #f6f7fd !important; }

#hero .btn .icon { margin-right: 0px !important; }

.btn-circle.btn { padding: 15px 17px !important; }

.location-text p { font-size: 18px; font-family: 'Barlow'; }

.col-car {
    border-left: solid white 1px;
    border-bottom: solid white 1px;
}

.page-container.without-breadcrumbs {
    margin-top: 0px !important;
}

#hero { min-height: 0px !important; }

.box-servtwo { padding: 20px !important; }

.icon-box img { width: 47px !important; }

#mod_ico_up { padding: 20px 40px 10px 40px !important; }

#bot_sec { margin-top: -100px !important; }


/* ===============================
   ROW MOD
================================= */

#row_mod {
    padding: 40px 40px 60px 40px !important;
    margin: -80px 10px 0px 10px !important;
}

/* ===============================
   PAGE CONTAINER FIX
================================= */

.page-container.bottom-offset {
    margin-bottom: 0px !important;
}

/* ===============================
   CUSTOM SECTION SPACING
================================= */

#mod_big.vc_section,
#row_consulting.vc_section,
#empty_row.vc_row {
    margin-left: -30px !important;
    margin-right: -30px !important;
}

.row_bg { background: no-repeat !important; }

/* ===============================
   HOME / BIG BLOCKS
================================= */

#row_mod_add {
    margin: 0px 10px !important;
    padding: 40px 40px 80px 40px !important;
}

#mod_ico_up .icon-box,
#mod_ico_down .icon-box {
    padding: 0px 20px !important;
}

#mod_big .title {
    padding-top: 20px;
    padding-bottom: 20px !important;
}

.icon-box h3 { font-size: 18px !important; }

h4#contact { color: #ADADAD !important; }

.banner-box .image-wrap { margin-bottom: 0px !important; }

/* Remove default WPBakery spacing */
.entry-content > *:not(.vc_row):not(.vc_clearfix) {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

/* ===============================
   BUTTONS + HEADER
================================= */

.btn-outline { border: 2px solid; }

.btn-outline:hover {
    background-color: rgba(255,255,255,0.08) !important;
    border-color: white !important;
}

span.Subline { border-bottom: 4px solid white; }

#masthead { border-bottom: 1px solid #ffffff35 !important; }

.nor-hero-title:after { display: none; }

/* ===============================
   IMAGES
================================= */

.pic-mod img,
.pic-mod.wpb_single_image img { max-width: 120%; }

.pic-mod-l img,
.pic-mod-l.wpb_single_image img { max-width: 140%; }

/* ===============================
   FOOTER TEXT COLORS
================================= */

.site-footer .widget p { color: white; }

h3.widget-title,
h3#about-graaho {
    font-size: 18px !important;
    color: #ADADAD !important;
    font-weight: 400;
}

.site-footer a { color: white !important; }

.menu-other { display: none; }

.banner-box .image-wrap img { transition: none !important; }

.site-footer img {
    max-width: 30px;
    height: auto;
}

.wp-image-13739 {
    padding: 20px;        /* inner breathing room */
    margin: 0 0px;           /* space from neighboring logos/text */
    display: inline-block;    /* important — makes margin/padding behave nicely on inline images */
    vertical-align: middle;   /* aligns better vertically with text or other logos if needed */
}

.wp-image-13741{
    padding: 20px;        /* inner breathing room */
    margin: 0 0px;           /* space from neighboring logos/text */
    display: inline-block;    /* important — makes margin/padding behave nicely on inline images */
    vertical-align: middle;   /* aligns better vertically with text or other logos if needed */
}

.wp-image-13919{
    padding: 15px;        /* inner breathing room */
    margin: 0 0px;           /* space from neighboring logos/text */
    display: inline-block;    /* important — makes margin/padding behave nicely on inline images */
    vertical-align: middle;   /* aligns better vertically with text or other logos if needed */
}

/* ===========================================
   MOBILE — max-width 766px
=========================================== */

@media screen and (max-width: 766px) {

    .norebro-phone-space { height: 40px !important; }

    #hero .text-right, p.text-right {
        text-align: center;
        margin-top: 15px;
    }

    #process { padding: 0px !important; }

    .row-cal {
        margin-left: -50px !important;
        margin-right: -50px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .mobilenot { display: none !important; }

    #mod_big { margin-top: 40px !important; }

    .vc_col-sm-6 { min-height: 0px !important; }

    #mid_bot .icon-box.box-left .content-wrap { padding: 0 !important; }

    #mid_bot .vc_row.vc_column-gap-20 {
        margin-left: -85px !important;
        margin-right: -65px !important;
    }

    #bot_sec {
        margin-top: 0px !important;
        padding: 0px !important;
    }

    .col-rev {
        display: flex;
        flex-direction: column-reverse;
    }

    #row_mod_add {
        padding: 0px;
        padding-bottom: 20px;
    }

    #mod_ico_up, #mod_ico_down {
        padding: 20px 0px !important;
    }

    #hero_h { padding-top: 120px !important; }

    .pic-mod-l { display: none; }

    .btn-outline { width: 100%; }

    .services-banner-box.overlay,
    .overlay { padding: 40px !important; }

    .section-customer { padding-top: 20px; padding-bottom: 20px; }

    .wpb_animate_when_almost_visible {
        opacity: 1 !important;
        animation: none !important;
    }

    #masthead { padding-bottom: 10px; }

    .hamburger-menu a { margin: 35px 0 0 20px !important; }

    .banner-box { margin-bottom: 0px !important; }
}

/* ===========================================
   Tablet corrections
=========================================== */

@media screen and (max-width: 992px) {
    #bot_sec { margin-top: 70px; }
    .mobilenot { display: none; }
}

/* ===========================================
   Large iPad
=========================================== */

@media only screen and (min-width: 1024px) and (max-height: 1366px) {
    #bot_sec { margin-top: 70px !important; }
}

/* ===========================================
   Small Device Typography Fixes
=========================================== */

@media only screen and (min-width: 320px) and (max-width: 600px) {

    #home .wpb_wrapper .norebro-dynamic-text-sc,
    #home .wpb_wrapper .norebro-dynamic-text-sc .dynamic,
    #home .wpb_wrapper .norebro-dynamic-text-sc .typed-cursor {
        font-size: 35px;
        line-height: 1.4;
    }

    #home .wpb_wrapper .norebro-heading-sc p.subtitle {
        font-size: 20px;
        line-height: 1.5;
    }

    .norebro-heading-sc h3.title { font-size: 30px !important; }

    #main .norebro-heading-sc p.subtitle {
        font-size: 18px;
        text-align: justify;
        line-height: 28px;
    }

    .testimonials blockquote {
        font-size: 18px !important;
        line-height: 1.4;
        text-align: justify;
    }

    .norebro-cta-sc .content-center .wrap .btn {
        margin-top: 50px;
    }
}

/* ===========================================
   Portfolio Fix
=========================================== */

.portfolio-item { margin: 10px !important; }

.widget_nav_menu,
.widget_pages { font-size: 18px; }

.portfolio-gallery .gallery-content {
    overflow-y: scroll !important;
}

.portfolio-gallery .gallery-content .description p {
    text-align: justify;
}
