/* ==========================================================
   BELCAN ARCHITECTS + ENGINEERS
   03 — WHY BELCAN
   ========================================================== */


/* ==========================================================
   WHY BELCAN
   ========================================================== */

/*
Outer Row:
belcan-why-section belcan-constrained-section

Left 3/12 Column:
belcan-why-intro

Right 9/12 Column:
belcan-why-features-wrap

Inner Row:
belcan-why-features-row

Each 1/4 Column:
belcan-why-feature belcan-divider
*/


.belcan-why-section{
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding: 58px 28px !important;

    background-color: #f7f7f7 !important;
    background-image: none !important;

    box-sizing: border-box !important;
    overflow: hidden;
}


.belcan-why-section .upb_row_bg{
    display: none !important;
}


.belcan-why-section .wpb_column,
.belcan-why-section .vc_column-inner,
.belcan-why-section .wpb_wrapper{
    background-color: transparent !important;
    background-image: none !important;
}


/* Intro column */

.belcan-why-intro{
    display: flex !important;
}


.belcan-why-intro > .vc_column-inner{
    display: flex !important;

    width: 100%;

    padding: 0 30px 0 0 !important;

    box-sizing: border-box !important;
}


.belcan-why-intro > .vc_column-inner > .wpb_wrapper{
    display: flex !important;
    flex-direction: column;
    justify-content: flex-start;

    width: 100%;
}


.belcan-why-intro .wpb_content_element,
.belcan-why-intro .uvc-heading{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* Eyebrow */

.belcan-why-eyebrow{
    margin: 0 0 11px !important;
}


.belcan-why-eyebrow h1,
.belcan-why-eyebrow h2,
.belcan-why-eyebrow h3,
.belcan-why-eyebrow h4,
.belcan-why-eyebrow p,
.belcan-why-eyebrow .uvc-main-heading h1,
.belcan-why-eyebrow .uvc-main-heading h2,
.belcan-why-eyebrow .uvc-main-heading h3,
.belcan-why-eyebrow .uvc-main-heading h4,
.belcan-why-eyebrow .uvc-sub-heading{
    margin: 0 !important;
    padding: 0 !important;

    color: var(--belcan-blue) !important;

    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.14em !important;

    text-transform: uppercase !important;
}


/* Intro heading */

.belcan-why-heading{
    position: relative;

    margin: 0 0 18px !important;
    padding: 0 0 20px !important;
}


.belcan-why-heading h1,
.belcan-why-heading h2,
.belcan-why-heading h3,
.belcan-why-heading h4,
.belcan-why-heading p,
.belcan-why-heading .uvc-main-heading h1,
.belcan-why-heading .uvc-main-heading h2,
.belcan-why-heading .uvc-main-heading h3,
.belcan-why-heading .uvc-main-heading h4,
.belcan-why-heading .uvc-sub-heading{
    margin: 0 !important;
    padding: 0 !important;

    color: var(--belcan-blue) !important;

    font-size: 27px !important;
    font-weight: 400 !important;
    line-height: 1.17 !important;

    text-align: left !important;
    text-transform: none !important;
}


.belcan-why-heading::after{
    content: "";

    display: block;

    width: 48px;
    height: 2px;

    margin-top: 15px;

    background: var(--belcan-divider);
}


/* Intro paragraph */

.belcan-why-intro-copy,
.belcan-why-intro-copy p{
    margin: 0 !important;
    padding: 0 !important;

    color: var(--belcan-text) !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;

    text-align: left !important;
}


/* Feature wrapper */

.belcan-why-features-wrap{
    display: flex !important;
}


.belcan-why-features-wrap > .vc_column-inner{
    display: flex !important;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;
}


.belcan-why-features-wrap > .vc_column-inner > .wpb_wrapper{
    display: flex !important;
    align-items: flex-start;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;
}


/* Inner feature row */

.belcan-why-features-row{
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


.belcan-why-features-row.vc_row,
.belcan-why-features-row.vc_inner{
    margin-left: 0 !important;
    margin-right: 0 !important;
}


.belcan-why-features-row > .wpb_column{
    display: flex !important;
    float: none !important;

    flex: 0 0 25% !important;
    width: 25% !important;
    max-width: 25% !important;
}


/* Feature columns */

.belcan-why-feature > .vc_column-inner{
    width: 100%;
    height: 100%;

    padding: 0 18px !important;

    border-left: 2px solid var(--belcan-line);

    box-sizing: border-box !important;
}


.belcan-why-feature > .vc_column-inner > .wpb_wrapper{
    display: grid !important;

    grid-template-rows:
        76px
        34px
        68px
        auto;

    justify-items: center;
    align-items: start;

    width: 100%;
    height: 100%;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
}


.belcan-why-feature .wpb_content_element,
.belcan-why-feature .uvc-heading,
.belcan-why-feature .wpb_single_image{
    width: 100% !important;

    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* Feature icons */

.belcan-why-icon{
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;

    width: 100% !important;
    height: 76px;

    margin: 0 !important;
}


.belcan-why-icon .vc_single_image-wrapper,
.belcan-why-icon figure{
    display: flex !important;
    justify-content: center !important;

    width: 100% !important;

    margin: 0 auto !important;
}


.belcan-why-icon img{
    display: block;

    width: 54px !important;
    max-width: 54px !important;
    height: 54px !important;

    margin: 0 auto !important;

    object-fit: contain;
}


/* Feature titles */

.belcan-why-title,
.belcan-why-title .uvc-heading,
.belcan-why-title .uvc-main-heading,
.belcan-why-title .uvc-sub-heading{
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
}


.belcan-why-title h1,
.belcan-why-title h2,
.belcan-why-title h3,
.belcan-why-title h4,
.belcan-why-title p,
.belcan-why-title .uvc-main-heading h1,
.belcan-why-title .uvc-main-heading h2,
.belcan-why-title .uvc-main-heading h3,
.belcan-why-title .uvc-main-heading h4,
.belcan-why-title .uvc-sub-heading{
    margin: 0 !important;
    padding: 0 !important;

    color: var(--belcan-text) !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;

    text-align: center !important;
    text-transform: none !important;
    white-space: nowrap;
}


/* Feature subtitles */

.belcan-why-subtitle,
.belcan-why-subtitle .uvc-heading,
.belcan-why-subtitle .uvc-main-heading,
.belcan-why-subtitle .uvc-sub-heading{
    width: 100% !important;

    margin: 0 !important;
    padding: 3px 0 0 !important;

    text-align: center !important;
}


.belcan-why-subtitle h1,
.belcan-why-subtitle h2,
.belcan-why-subtitle h3,
.belcan-why-subtitle h4,
.belcan-why-subtitle p,
.belcan-why-subtitle .uvc-main-heading h1,
.belcan-why-subtitle .uvc-main-heading h2,
.belcan-why-subtitle .uvc-main-heading h3,
.belcan-why-subtitle .uvc-main-heading h4,
.belcan-why-subtitle .uvc-sub-heading{
    margin: 0 !important;
    padding: 0 !important;

    color: var(--belcan-blue) !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;

    text-align: center !important;
}


/* Feature descriptions */

.belcan-why-copy,
.belcan-why-copy p{
    width: 100% !important;

    margin: 0 !important;
    padding: 8px 0 0 !important;

    color: var(--belcan-text) !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;

    text-align: center !important;
}


/* ==========================================================
   TABLET AND NARROW DESKTOP
   ========================================================== */

@media (max-width: 1100px){

    .belcan-why-section{
        padding: 46px 20px !important;
    }


    .belcan-why-intro > .vc_column-inner{
        padding-right: 20px !important;
    }


    .belcan-why-heading h1,
    .belcan-why-heading h2,
    .belcan-why-heading h3,
    .belcan-why-heading h4,
    .belcan-why-heading p,
    .belcan-why-heading .uvc-main-heading h1,
    .belcan-why-heading .uvc-main-heading h2,
    .belcan-why-heading .uvc-main-heading h3,
    .belcan-why-heading .uvc-main-heading h4,
    .belcan-why-heading .uvc-sub-heading{
        font-size: 25px !important;
    }


    .belcan-why-intro-copy,
    .belcan-why-intro-copy p,
    .belcan-why-subtitle,
    .belcan-why-subtitle h1,
    .belcan-why-subtitle h2,
    .belcan-why-subtitle h3,
    .belcan-why-subtitle h4,
    .belcan-why-subtitle p,
    .belcan-why-subtitle .uvc-main-heading,
    .belcan-why-subtitle .uvc-sub-heading,
    .belcan-why-copy,
    .belcan-why-copy p{
        font-size: 12px !important;
        line-height: 1.5 !important;
    }


    .belcan-why-feature > .vc_column-inner{
        padding-left: 12px !important;
        padding-right: 12px !important;
    }


    .belcan-why-feature > .vc_column-inner > .wpb_wrapper{
        grid-template-rows:
            70px
            40px
            72px
            auto;
    }


    .belcan-why-icon{
        height: 70px;
    }


    .belcan-why-icon img{
        width: 48px !important;
        max-width: 48px !important;
        height: 48px !important;
    }


    .belcan-why-title h1,
    .belcan-why-title h2,
    .belcan-why-title h3,
    .belcan-why-title h4,
    .belcan-why-title p,
    .belcan-why-title .uvc-main-heading,
    .belcan-why-title .uvc-sub-heading{
        font-size: 13px !important;
        white-space: normal;
    }
}


/* ==========================================================
   MOBILE — 767px AND BELOW
   ========================================================== */

@media (max-width: 767px){

    .belcan-why-section{
        padding: 38px 22px 44px !important;
    }


    .belcan-why-intro,
    .belcan-why-features-wrap{
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
    }


    .belcan-why-intro{
        margin-bottom: 48px;

        text-align: center !important;
    }


    .belcan-why-intro > .vc_column-inner{
        padding: 0 !important;
    }


    .belcan-why-intro > .vc_column-inner > .wpb_wrapper{
        display: block !important;

        width: 100%;

        margin: 0 auto !important;

        text-align: center !important;
    }


    .belcan-why-eyebrow,
    .belcan-why-heading,
    .belcan-why-intro-copy,
    .belcan-why-eyebrow *,
    .belcan-why-heading *,
    .belcan-why-intro-copy *{
        text-align: center !important;
    }


    .belcan-why-heading h1,
    .belcan-why-heading h2,
    .belcan-why-heading h3,
    .belcan-why-heading h4,
    .belcan-why-heading p,
    .belcan-why-heading .uvc-main-heading h1,
    .belcan-why-heading .uvc-main-heading h2,
    .belcan-why-heading .uvc-main-heading h3,
    .belcan-why-heading .uvc-main-heading h4,
    .belcan-why-heading .uvc-sub-heading{
        font-size: 28px !important;
        text-align: center !important;
    }


    .belcan-why-heading::after{
        margin-left: auto;
        margin-right: auto;
    }


    .belcan-why-intro-copy,
    .belcan-why-intro-copy p,
    .belcan-why-subtitle,
    .belcan-why-subtitle *,
    .belcan-why-copy,
    .belcan-why-copy p{
        font-size: 14px !important;
        line-height: 1.5 !important;
    }


    .belcan-why-features-row{
        display: block !important;
    }


    .belcan-why-features-row > .wpb_column{
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-bottom: 48px;
    }


    .belcan-why-features-row > .wpb_column:last-child{
        margin-bottom: 0;
    }


    .belcan-why-feature > .vc_column-inner{
        padding: 0 !important;
        border-left: none;
    }


    .belcan-why-feature > .vc_column-inner > .wpb_wrapper{
        grid-template-rows:
            70px
            auto
            auto
            auto;

        row-gap: 10px;

        max-width: 420px;

        margin: 0 auto !important;
    }


    .belcan-why-title h1,
    .belcan-why-title h2,
    .belcan-why-title h3,
    .belcan-why-title h4,
    .belcan-why-title p,
    .belcan-why-title .uvc-main-heading,
    .belcan-why-title .uvc-sub-heading{
        font-size: 16px !important;
        white-space: normal;
    }
}