/*
* Description: Custom CSS Additions Go Here
* Template: twentyseventeen
* Version: 1.0
* Author: VDS
*/

/* vars vars vars vars vars vars vars vars vars vars vars vars vars vars  */

:root {

/* These vars do not require values as they get set automatically in options-page-stylesheet.php
 * They are mainly here so they show up as autocomplete suggestions in code editors if desired.
*/

    /* color scheme vars */
    --accent1: #354A62;            /* denim blue */
    --accent1_40: #354A6266;       /* accent1 @ 40% */
    --accent2: #EC935E;            /* goldenrod */
    --accent2_40: #EC935E66;       /* accent2 @ 40% */
    /*--accent3:;*/

    --light1: #FFFFFF;             /* white */
    --light1_50: #FFFFFF80;        /* white @ 50% opacity */
    --light2: #F0EFE7;             /* mid gray */
    --light3: #D7D6CE;

    --dark1: #1F2B39;              /* deep denim blue */
    --dark2: #343234;              /* charcoal */
    --dark3: #000000;              /* black  */

    --uihover: #EC935E66;          /* goldenrod (accent2) UI opacity */

    /* font family vars */
    --DunbarMed: 'DunbarTall-Medium', sans-serif;;
    --MontReg: 'Montserrat-Regular', sans-serif;
    --MontB: 'Montserrat-Bold', sans-serif;;
}

/* /vars /vars /vars /vars /vars /vars /vars /vars /vars /vars /vars  */

/* quick vars quick vars quick vars quick vars quick vars quick vars  */

body h1, body h2, body h3, body h4, body h5, body h6 {
    font-family:  "Playfair Display", serif;
    font-weight: 500;
}
ul#left-menu li a, ul#right-menu li a, nav ul#top-menu li a, nav div#top-menu ul li a {
    font-family: var(--MontB);
    letter-spacing: 2px !important;
}

body button#primary-mobile-menu span {
    transition: all 0.3s ease-in-out;
    color: var(--accent1);
}
body button#primary-mobile-menu:hover span {
    transition: all 0.3s ease-in-out;
    color: var(--accent2);
}
body p, body li, body span:not(.display-name):not(.vc_tta-title-text):not(.single-post-publish-date):not(.single-post-author) {
    font-family: var(--MontReg);
    color: var(--dark1);
}
body h1 {
    text-shadow: 1px 1px 8px var(--dark3);
    color: var(--light1);
}
h2, h3, h4, h5, h6 {
    color: var(--dark1);
}
div.accent1 h2,
div.accent1 h3,
div.accent1 h4,
div.accent1 h5,
div.accent1 h6,
body #content div.accent1 a:not(.btn-bt),
div.accent1 p,
div.accent1 li,
div.accent1 span,
.wpb_row.accent1 h2,
.wpb_row.accent1 h3,
.wpb_row.accent1 h4,
.wpb_row.accent1 h5,
.wpb_row.accent1 h6,
body #content .accent1 a:not(.btn-bt),
.wpb_row.accent1 p,
.wpb_row.accent1 li,
.wpb_row.accent1 span,
.wpb_row.dark1 h2,
.wpb_row.dark1 h3,
.wpb_row.dark1 h4,
.wpb_row.dark1 h5,
.wpb_row.dark1 h6,
body #content .dark1 a:not(.btn-bt),
.wpb_row.dark1 p,
.wpb_row.dark1 li,
.wpb_row.dark1 span,
.wpb_row.dark2 h2,
.wpb_row.dark2 h3,
.wpb_row.dark2 h4,
.wpb_row.dark2 h5,
.wpb_row.dark2 h6,
body #content .dark2 a:not(.btn-bt),
.wpb_row.dark2 p,
.wpb_row.dark2 li,
.wpb_row.dark2 span,
.wpb_row.dark3 h2,
.wpb_row.dark3 h3,
.wpb_row.dark3 h4,
.wpb_row.dark3 h5,
.wpb_row.dark3 h6,
body #content .dark3 a:not(.btn-bt),
.wpb_row.dark3 p,
.wpb_row.dark3 li,
.wpb_row.dark3 span {
    color: var(--light1);
}
.wpb_row.accent1 hr,
.wpb_row.dark1 hr,
.wpb_row.dark2 hr,
.wpb_row.dark3 hr {
    border-color: var(--light1);
}
.wpb_row.light1 h2,
.wpb_row.light1 h3,
.wpb_row.light1 h4,
.wpb_row.light1 h5,
.wpb_row.light1 h6 {
    color: var(--dark1);
}
body #content .light1 a:not(.btn-bt),
.wpb_row.light1 p,
.wpb_row.light1 li,
.wpb_row.light1 span {
    color: var(--dark3);
}
div#wpadminbar {
    z-index: 99999999999999999;
}
.default-header h1 {
    text-align: center;
}

/* /quick vars /quick vars /quick vars /quick vars /quick vars /quic  */

/* General */

@media (max-width: 979px) {
    .wpb_row.reverse .container {
        flex-direction: column-reverse;
        display: flex;
    }
}

/* /General */

/* Top Anchor + Recaptcha */

a.topbutton {
    background-color: var(--accent1);
    transition: all 0.3s ease-in-out;
    border: 2px solid var(--light1);
    text-decoration: none;
    border-radius: 7px;
    bottom: 148px;
    right: 10px;
}
a.topbutton:hover {
    border-color: var(--accent2);
}
a.topbutton i.icon-angle-up {
    justify-content: center;
    align-items: center;
    display: flex;
}
a.topbutton i.icon-angle-up:before {
    transition: all 0.3s ease-in-out;
    margin: 0 !important;
    color: var(--light1);
    position: relative;
    font-size: 48px;
    line-height: 1;
    top: -4.5px;
}
a.topbutton:hover i:before {
    transition: all 0.3s ease-in-out;
    color: var(--accent2);
}
div.grecaptcha-badge {
    bottom: 70px !important;
}

/* END Top Anchor + Recaptcha */

/* Buttons */

body.search-results a.more-link {
    text-transform: uppercase;
    font-family: var(--MontB);
    text-decoration: none;
    letter-spacing: 1px;
    border-radius: 3px;
    text-align: center;
    padding: 21.5px 10px;
    margin-top: 12px;
    min-width: 280px;
    font-size: 21px;
    line-height: 1;
    display: block;
}
body.search-results a.more-link,
body #content .gform_footer input[type="submit"],
body .header-button a.btn-bt,
body #content a.btn-bt {
    letter-spacing: 1px;
    border-radius: 3px;
    padding: 21.5px 10px;
    min-width: 280px;
    font-size: 21px;
    line-height: 1;

}
body .header-button a.btn-bt {
	min-width: 200px;
}
body.search-results #content a.more-link,
body #content .gform_footer input[type="submit"],
body .header-button a.btn-bt,
body #content a.btn-bt.default {
    transition: all 0.3s ease-in-out;
    border: 3px solid var(--accent2);
    background: var(--accent2);
    color: var(--dark2);
}

body.search-results #content a.more-link:hover,
body #content .gform_footer input[type="submit"]:hover,
body .header-button a.btn-bt:hover,
body #content a.btn-bt.default:hover {
    box-shadow: 2px 2px 24px 0 rgba(0, 0, 0, 0.24);
    transition: all 0.3s ease-in-out;
    background: var(--accent2_40);
    color: var(--light1);
}
body #content a.btn-bt.alternate {
    transition: all 0.3s ease-in-out;
    border: 3px solid var(--accent1);
    background: transparent;
    color: var(--dark3);
}
body #content a.btn-bt.alternate:hover {
    box-shadow: 4px 4px 24px 0 rgba(0, 0, 0, 0.24);
    transition: all 0.3s ease-in-out;
    background: var(--accent1_40);
}

input[type="submit"]:hover {
    transition: all 0.3s ease-in-out;
    color: var(--light1);
}

@media (max-width: 979px) {
    div.header-button {
        display: none;
    }
}

@media (max-width: 480px) {
    body #content a.btn-bt {
        min-width: 280px;
        font-size: 21px;
    }
}

/* END Buttons */

/* Header, Top Widget & Top Header */

header .top-widget {
    background-color: var(--accent1);
}
header .top-header {
    background-color: var(--light1);
}
header .top-header {
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

@media (min-width: 980px) {
    header.scrolling .top-widget {
        transition: all 0.3s ease-in-out;
        pointer-events: none;
        opacity: 0;
        height: 0;
    }
    header.scrolling {
        z-index: 99999999 !important;
        position: fixed;
        width: 100%;
        top: 0;
    }
    body.logged-in header.scrolling {
        top: 32px;
    }
    body.scrolling #content {
        padding-top: 155px;
    }
    /*body.single #content {
        padding-top: 140px;
    }*/
}

@media (max-width: 979px) {
    /*header .top-widget .span6.left {
        width: 30%;
    }
     header .top-widget .span6.right {
        width: 70%;
    }*/
}
.top-widget a.icon-btn {
    align-items: center;
    display: flex;
}

.site-header .top-widget p.phone span.icon-btn-text {
    font-family: 'Montserrat-Bold';
    color: var(--light1);
    font-weight: 700;
    line-height: 0px;
}
body .site-header .top-widget p a.icon-btn i {
    color: var(--accent2);
    font-size: 18px;
}
.site-header .top-widget p.phone a:hover span.icon-btn-text {
    color: var(--accent2);
}
.site-header .top-widget ul.social {
    text-align: right;
}
header nav.primary-navigation a:link,
header nav.primary-navigation a:visited {
    color: var(--dark3);
}
header nav.primary-navigation .sub-menu a:link,
header nav.primary-navigation .sub-menu a:visited {
    color: var(--light1);
}
header nav.primary-navigation ul#top-menu li a:hover,
header nav.primary-navigation ul#top-menu li a:focus,
header nav.primary-navigation ul#top-menu li a:focus-within {
    color: var(--accent2);
}
header .left-right-header nav ul#top-menu li {
    padding: 12px 14px;
}
nav.primary-navigation ul.sub-menu {
    background: var(--dark1);
}

/* END Header, Top Widget & Top Header */

/* Footer & Copyright */

footer .widget ul.menu {
    list-style: none;
}
footer .footer-logo,
footer .footer-badge {
    max-width: 100%;
    display: block;
    margin: 0 auto;
    height: auto;
}
footer .footer-badge {
    margin-top: 24px;
    max-width: 235px;
}
footer#footer {
    background: var(--dark2);
}
footer#footer h2,
footer#footer p,
footer#footer a,
footer#footer li,
footer#footer span {
    color: var(--light1);
}
footer .widget .widget-title,
footer .widget h2 {
    border-bottom: 1px solid var(--accent2);
    padding-bottom: 24px;
    margin-bottom: 16px;
    max-width: 150px;
    font-size: 24px;
    line-height: 1;
    width: 100%;
}
footer#footer a,
.copyright a {
    text-decoration: none;
}
footer#footer p.footer-directions a {
    text-decoration: underline;
}
footer div.textwidget,
footer .widget-content nav {
    margin-top: 0;
}
/*p.footer-address,
p.footer-directions,
p.footer-phone {
    line-height: 1.9;
}*/
footer p.footer-address {
    margin-bottom: 0;
}
footer p.footer-directions {
    margin-bottom: 32px;
}
p.footer-hours {
    line-height: 2;
}
div.row.copyright {
    background: var(--accent1);
}
p#copyright-p {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
}
body ul.social li {
    margin-right: 0px;
    font-size: unset;
}
.row.copyright ul.social li a i {
    font-size:  24px;
}
.row.copyright ul.social.top-widget-socials {
    display: none;
}
footer ul.social {
    text-align: center;
}
footer ul.social li a i {
    font-size: 34px;
    margin-top: 15px;
}
/* END Footer & Copyright */

/* Accordions */

body .bakery .wpb_row.accordion .vc_tta-panel:not(.vc_active) {
    margin-bottom: 12px;
}
body .bakery .wpb_row.accordion .vc_tta-panel-title a {
    justify-content: flex-start;
    padding-left: 54px;
}
body span.vc_tta-title-text {
    transition: all 0.3s ease-in-out;
    coloR: var(--dark3);
}
body #content .accordion div.vc_tta-panel:not(.vc_active) .vc_tta-panel-heading:hover span.vc_tta-title-text {
    transition: all 0.3s ease-in-out;
    coloR: var(--accent1);
}
body #content .bakery div.vc_tta-panel.vc_active .vc_tta-panel-heading h4.vc_tta-panel-title a span.vc_tta-title-text {
    transition: all 0.3s ease-in-out;
    coloR: var(--dark3);
}
body #content .accordion div.vc_tta-panel-heading {
    border-bottom: 1px solid transparent;
    transition: all 0.3s ease-in-out;
    border-top: 4px solid #5A5B5D;
    background: var(--light1);
    font-family: Montserrat;
    letter-spacing: 3px;
    border-right: none;
    border-left: none;
    border-radius: 0;
    font-weight: 700;
    font-size: 18px;
    color: #000;

}
body #content .accordion div.vc_tta-panel .vc_tta-panel-heading:hover,
body #content .accordion div.vc_tta-panel.vc_active .vc_tta-panel-heading {
    border-top: 4px solid var(--accent2);
    transition: all 0.3s ease-in-out;
    background-color: transparent;
}
body #content .bakery .wpb_row.accordion .vc_tta-panel.vc_active .vc_tta-panel-heading {
    border-bottom: 1px solid var(--accent2);
    background: transparent;
}
body .bakery .wpb_row.accordion .vc_tta.vc_tta-accordion .vc_tta-panel .vc_tta-controls-icon-position-left .vc_tta-controls-icon {
    top: 24%;
}
body .bakery .wpb_row.accordion .vc_tta.vc_tta-accordion .vc_tta-panel.vc_active .vc_tta-controls-icon-position-left .vc_tta-controls-icon {
    top: 23%;
}
body .bakery .wpb_row.accordion .vc_tta .vc_tta-panel.vc_active .vc_tta-controls-icon.vc_tta-controls-icon-plus::before,
body .bakery .wpb_row.accordion .vc_tta .vc_tta-panel .vc_tta-controls-icon.vc_tta-controls-icon-plus::before {
    font-size: 25px;
    color: #5A5B5D;
}
body #content .wpb_row.accordion div.vc_tta-panel:not(.vc_active):hover .vc_tta-controls-icon.vc_tta-controls-icon-plus::before {
    color: var(--accent2);
}

/* END Accordions */

/* Tabs */

body .bakery .wpb_row.tabs .vc_tta-panels-container {
    padding: 0;
}
body .bakery .wpb_row.tabs ul.vc_tta-tabs-list {
    justify-content: space-between;
    max-width: 1200px;
    width: 95%;
}
body #content .tabs li.vc_tta-tab.vc_active a,
body #content .tabs li.vc_tta-tab.vc_active a:hover,
body #content .tabs div.vc_tta-panel.vc_active .vc_tta-panel-heading,
body #content .tabs div.vc_tta-panel.vc_active .vc_tta-panel-heading:hover {
    background: var(--accent2);
}
body #content .tabs li.vc_tta-tab.vc_active a span.vc_tta-title-text {
    color: var(--dark3);
}
body #content li.vc_tta-tab a,
body #content div.vc_tta-panel-heading {
    background: transparent;
}
body #content li.vc_tta-tab a:hover,
body #content div.vc_tta-panel-heading:hover {
    background: var(--accent2_40);
}
body .bakery .wpb_row.tabs ul.vc_tta-tabs-list li.vc_tta-tab a {
    border: 2px solid var(--accent2);
    border-radius: 2px;
    position: initial;
}
body #content .tabs li.vc_tta-tab a span.vc_tta-title-text {
    color: var(--light1);
}
body #content .tabs .menu-row h3 {
    padding-bottom: 12px;
    margin-bottom: 18px;
    position: relative;
    font-size: 24px;
}
.tabs .menu-row h3::after {
    background-color: var(--light2);
    position: absolute;
    max-width: 275px;
    margin: 0 auto;
    content: "";
    height: 2px;
    width: 70%;
    bottom: 0;
    right: 0;
    left: 0;
}
body #content .tabs .menu-row h5 {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 16px;
}

@media (max-width: 979px) {
    body .bakery .tabs.wpb_row {
        padding-bottom: 40px !important;
    }
    .bakery .tabs .menu-row.vc_inner {
        padding-top: 0;
    }
}

/* END Tabs */

/* Homepage */
section#HomeHero {
    /*padding: clamp(18px, 1.172vw, 32px) !important;*/
    /*padding: 22.5px !important;*/
    padding: 0 !important;
    display: flex;
    height: 600px;
}
div#DefaultHeader {
    /*padding: clamp(18px, 1.172vw, 32px) !important;*/
    padding: 0 !important;
}
section#HomeHero .wpb_row.home-banner,
div#DefaultHeader .default-header {
    /*border-radius: 36px;*/
    border-radius: 0;
    height: 100%;
    width: 100%;
}

@media (min-width: 1441px) {
    .home-banner {
        height: 900px;
    }
}

@media (max-width: 1440px) {
    .home-banner {
        height: 780px;
    }
}

.bakery .cta-row.wpb_row {
    padding: 24px 0;
}

@media (min-width: 980px) and (max-width: 1440px) {
    .cta-row h2 {
        font-size: 2.2vw;
    }
}

@media (min-width: 1441px) {
    .cta-row h2 {
        font-size: 28px;
    }
}

@media (min-width: 980px) {
    .bakery .cta-row .wpb_text_column .wpb_wrapper {
        justify-content: center;
        align-items: center;
        display: flex;
    }
    .cta-row h2 {
        margin-right: 28px;
    }
    .featured-posts {
        justify-content: space-between;
        align-items: flex-start;
        display: flex;
    }
    .feat-post {
        width: 32%;
    }
}

@media (max-width: 979px) {
    .cta-row h2 {
        text-align: center;
        line-height: 30px;
        font-size: 24px;
    }
    .cta-row p {
        text-align: center;
    }
}

@media (max-width: 480px) {
    .cta-row h2 {
        line-height: 28px;
        font-size: 22px;
    }
}
.featured-posts .feat-post h5.cats {
    display: none;
}
.featured-posts .feat-post h2.feat-post-title {
    line-height: 40px;
    font-size: 30px;
}

.blurb-row h3 {
    margin-bottom: 0;
}
.blurb-row hr.line {
    border-width: 2px;
    margin: 35px auto;
    max-width: 620px;
}
.bakery .blurb-row a.btn-bt {
    margin-top: 24px;
}
.cta-row i.icon-download {
    color: var(--dark2);
    font-size: 14px;
}
.cta-row a.btn-bt.default:hover i.icon-download {
    transition: all 0.3s ease-in-out;
    color: var(--light1);
}
.featured-posts-row h3 {
    margin-bottom: 35px;
}
.featured-posts-row h3,
.testimonials-row h3 {
    line-height: 58px;
    font-size: 48px;
}
.feat-post-left {
    margin-bottom: 28px;
}
.featured-posts-row a.archive-post-image-link {
    transition: all 0.3s ease-in-out;
    background-blend-mode: overlay;
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 36px;
    display: block;
    height: 308px;
    width: 100%;
}
.featured-posts-row a.archive-post-image-link:hover {
    background-color: var(--accent2_40);
    transition: all 0.3s ease-in-out;
}
.featured-posts-row p.feat-post-date-author {
    margin-bottom: 10px !important;
    font-family: var(--MontB);
    text-transform: uppercase;
    color: var(--accent1);
    font-size: 14px;
    line-height: 1;
}
.featured-posts-row h3.feat-post-title.tt-none {
    margin-bottom: 16px;
    line-height: 1.3;
    font-size: 20px;
}
.featured-posts-row .featured-posts hr.line.fw-line {
    background: var(--accent1);
    border-width: 1px;
    margin: 12px 0;
    border: none;
    height: 2px;
}
.featured-posts-row p.feat-post-content {
    margin-bottom: 20px !important;
    line-height: 30px;
    font-size: 20px;
}
.featured-posts-row .feat-post-read-more a {
    text-transform: uppercase;
}
/*.testimonials-row .wpb_text_column {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 30px;
}*/
.testimonials-row hr.line {
    border-color: var(--light2);
    border-width: 2px;
    margin: 35px auto;
    max-width: 300px;
}
.testimonial-content {
    text-align: center;
}
.testimonial-content p {
    font-size: 14px;
}
body #content .bakery .testimonials-row .strong-view.nav-position-outside .wpmslider-controls {
    margin: 24px 0;
    padding: 0;
}
body #content .bakery .testimonials-row .strong-view.controls-style-buttons:not(.rtl) a {
    transition: all 0.3s ease-in-out;
    background:  var(--accent1);
    justify-content: center;
    align-items: center;
    display: flex;
    margin: 0 7px;
    height: 32px;
    width: 32px;
}
body #content .bakery .testimonials-row .strong-view.controls-style-buttons:not(.rtl) a:before {
    background: var(--light1);
    height: 20px;
    width: 20px;
    right: 0;
    left: 0;
    top: 0;
}
body #content .bakery .testimonials-row .strong-view.controls-style-buttons:not(.rtl) a:hover {
    transition: all 0.3s ease-in-out;
    background: var(--accent2_40);
}
.bakery section.fifty-and-gallery .gallery-row .container {
    max-width: 1520px !important;
    width: 92% !important;
}
.bakery section.fifty-and-gallery .gallery-row {
    padding-bottom: 32px;
    padding-top: 0;
}
.bakery .gallery-row .container {
    max-width: 94%;
    margin: 0 auto;
}
.bakery .gallery-row .sa_hover_fullslide {
    width: 94% !important;
}
.gallery-row .swiper-wrapper,
.gallery-row .swiper-slide,
.gallery-row .swiper-slide .wpcp-single-item,
.gallery-row .swiper-slide .wpcp-single-item .wpcp-slide-image,
.gallery-row .swiper-slide .wpcp-single-item .wpcp-slide-image .wcp-light-box,
.gallery-row .swiper-slide .wpcp-single-item .wpcp-slide-image .wcp-light-box figure,
.gallery-row .swiper-slide .wpcp-single-item .wpcp-slide-image .wcp-light-box figure .wpcp_icon_overlay {
    border-radius: 36px !important;
}
.bakery .sponsors-row {
    padding: 30px 0;
}
.bottom-cta h2 {
    color: var(--light1);
    line-height: 72px;
    font-size: 52px;
}
.form-bottom-cta .gform_wrapper.gravity-theme .gform_footer {
    margin-top: 24px !important;
}
.gform_heading {
    display: none;
}
body .gform_wrapper.gravity-theme {
    padding: 20px 32px 32px 32px;
    background: var(--dark1);
    border-radius: 36px;
    max-width: 720px;
    margin: 0 auto;
    width: 100%;
}
.gform_wrapper.gravity-theme h2,
.gform_wrapper.gravity-theme h4 {
    color: var(--light1);
    text-align: center;
}
.gform_wrapper.gravity-theme h2 {
    line-height: 64px;
    font-size: 58px;
}
.gform_wrapper.gravity-theme h4 {
    margin-bottom: 24px;
}
span.gform-field-label__text {
    color: #ffffff !important;
}
.gform_button.button {
	background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    color: var(--dark1) !important;
	font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 20px !important;
    text-transform: uppercase !important;
	border-radius: 3px;
    padding: 21.5px 10px;
    min-width: 280px;
	display: block;
	width: 100%;
}
.gform_button.button:hover {
	background: transparent !important;
    color: var(--white) !important;
	cursor: pointer;
}
@media  (max-width: 480px) {
.gform_wrapper.gravity-theme h2 {
    line-height: 36px;
    font-size: 32px;
}
}
@media  (max-width: 480px) {
.gform_wrapper.gravity-theme h2 {
    line-height: 36px;
    font-size: 32px;
}
}

@media  (min-width: 1px) {
    body .gform_wrapper.gravity-theme li.gfield {
        padding-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 14px;
    }
}

body .gform_wrapper.gravity-theme label.gfield_label {
    font-family: var(--MontReg);
    margin: 0 0 0 0 !important;
    text-transform: uppercase;
    color: var(--light1);
    padding-left: 7px;
    font-size: 12px;
    line-height: 1;
}
body .gform_wrapper.gravity-theme span.gfield_required {
    display: none;
}
body .gform_wrapper.gravity-theme .ginput_container {
    margin-top: 0 !important;
}
body .gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 0;
}
body .gform_wrapper.gravity-theme input:not(.gform_button),
body .gform_wrapper.gravity-theme textarea,
body .gform_wrapper.gravity-theme select {
    border-bottom: 2px solid var(--light3);
    border-right: 2px solid var(--accent1);
    border-left: 2px solid var(--accent1);
    border-top: 2px solid var(--accent1);
    padding: 5px 12px 5px 8px !important;
    transition: all 0.2s ease-in-out;
    font-size: 14px !important;
    background: var(--light1);
    margin: 0 !important;
    color: var(--dark3);
    border-radius: 2px;
    height: 40px;
}
body .gform_wrapper.gravity-theme input:not(.gform_button)::placeholder,
body .gform_wrapper.gravity-theme textarea::placeholder,
body .gform_wrapper.gravity-theme select::placeholder {
    transition: all 0.2s ease-in-out;
    color: #999;
}
body .gform_wrapper.gravity-theme input:not(.gform_button):hover::placeholder,
body .gform_wrapper.gravity-theme textarea:hover::placeholder,
body .gform_wrapper.gravity-theme select:hover::placeholder,
body .gform_wrapper.gravity-theme input:not(.gform_button):focus::placeholder,
body .gform_wrapper.gravity-theme textarea:focus::placeholder,
body .gform_wrapper.gravity-theme select:focus::placeholder {
    transition: all 0.2s ease-in-out;
    color: var(--accent2);
}
body .gform_wrapper.gravity-theme input:not(.gform_button):hover,
body .gform_wrapper.gravity-theme textarea:hover,
body .gform_wrapper.gravity-theme select:hover,
body .gform_wrapper.gravity-theme input:not(.gform_button):focus,
body .gform_wrapper.gravity-theme textarea:focus,
body .gform_wrapper.gravity-theme select:focus {
    transition: all 0.2s ease-in-out;
    border-color: var(--accent2);
    color: var(--accent2);
}
body #content .gform_footer {
    padding: 0;
}
body #content .gform_footer input[type="submit"] {
    width: 100%;
    margin: 0;
}

@media (max-width: 768px) {
    body .gform_wrapper.gravity-theme {
        max-width: unset;
    }
}
.bakery .promo-cards {
    padding: 32px 0;
}
.promo-cards .vc_column-inner {
    padding: 0 !important;
}
.promo-cards .swiper-wrapper,
.promo-cards .swiper-slide,
.promo-cards .swiper-slide .wpcp-single-item {
    border-radius: 36px !important;
}
.promo-cards .wpcp-single-content {
    background-color: rgba(0, 0, 0, 0.35);
    justify-content: center;
    flex-direction: column;
    align-items: center;
    row-gap: 24px;
    display: flex;
}
body .wpb_row.promo-cards .wpcp-carousel-wrapper h2 {
    color: var(--light1);
}

/* END Homepage */

/* Fifty Fifty */

.bakery .fifty-fifty.wpb_row:not(.inline-image) {
    padding: 0;
}

.fifty-fifty:not(.inline-image) .container {
    max-width: unset;
    width: 100%;
}
.fifty-fifty.inline-image .container {
    max-width: unset;
    width: 90%;
}
.fifty-fifty .vc_column-inner {
    height: 100%;
}
.fifty-fifty.image-right:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(1),
.fifty-fifty.image-left:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(2) {
    align-items: center;
    min-height: 500px;
    padding: 60px 5%;
    display: flex;
}
.fifty-fifty.image-right .wpb_column:not(.vc_col-has-fill):nth-child(1) {
    justify-content: flex-end;
}
.fifty-fifty.image-left .wpb_column:not(.vc_col-has-fill):nth-child(2) {
    justify-content: flex-start;
}
.fifty-fifty.image-right .wpb_column:not(.vc_col-has-fill):nth-child(1) .vc_column-inner,
.fifty-fifty.image-left .wpb_column:not(.vc_col-has-fill):nth-child(2) .vc_column-inner {
    align-items: center;
    /*max-width: 550px;*/
    max-width: 740px;
    display: flex;
}
.fifty-fifty.image-left.blend .wpb_column:nth-child(1) .vc_column-inner {
    background-position: top right !important;
}
.fifty-fifty.image-right.blend .wpb_column:nth-child(2) .vc_column-inner {
    background-position: top left !important;
}

@media (min-width: 980px) {
    .fifty-fifty.image-right.inline-image .wpb_column:nth-child(1),
    .fifty-fifty.image-left.inline-image .wpb_column:nth-child(1) {
        padding: 0 3.5% 0 0;
    }
    .fifty-fifty.image-left.inline-image .wpb_column:nth-child(2),
    .fifty-fifty.image-right.inline-image .wpb_column:nth-child(2) {
        padding: 0 0 0 3.5%;
    }
    .fifty-fifty.blend .wpb_column:not(.vc_col-has-fill):nth-child(2) {
        padding-left: 0 !important;
    }
}

.fifty-fifty.image-left.inline-image .wpb_column:nth-child(1) .vc_column-inner,
.fifty-fifty.image-right.inline-image .wpb_column:nth-child(2) .vc_column-inner {
    padding-top: 0;
}

.fifty-fifty h3,
.fifty-fifty h2,
.blurb-row h2 {
    margin-bottom: 24px;
}
.fifty-fifty a.btn-bt {
    margin-top: 12px;
}
.vc_row.wpb_row.bottom-0padding {
    padding-bottom: 0px;
}

@media (max-width: 979px) {
    .other-services .vc_inner .vc_col-sm-3,
    .other-services .vc_inner .vc_col-sm-4 {
        width: 100% !important;
    }
    .bakery .other-services .vc_inner .vc_col-sm-3 .wpb_text_column,
    .bakery .other-services .vc_inner .vc_col-sm-4 .wpb_text_column {
        height: 685px;
    }
    .bakery .contained-fw-bottom-background-row {
        padding-bottom: 240px !important;
        padding-top:  40px !important;
    }
    .fifty-fifty.flip-mobile .container {
        flex-direction: column-reverse;
        display: flex;
    }
    .fifty-fifty.image-right .wpb_column:not(.vc_col-has-fill):nth-child(1) {
        justify-content: flex-start;
    }
    .fifty-fifty.image-right h3,
    .fifty-fifty.image-right h2,
    .fifty-fifty.image-right p {
        justify-content: flex-start;
        text-align: left !important;
    }
    .fifty-fifty.image-right:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(1),
    .fifty-fifty.image-left:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(2) {
        min-height: unset;
    }
    .fifty-fifty.image-right .wpb_column:not(.vc_col-has-fill):nth-child(1) .vc_column-inner,
    .fifty-fifty.image-left .wpb_column:not(.vc_col-has-fill):nth-child(2) .vc_column-inner {
        max-width: unset;
    }
}

@media (max-width: 979px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 663px; }
}

@media (max-width: 768px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 515px; }
}

@media (max-width: 480px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 319px; }
}

@media (max-width: 414px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 274px; }
}

@media (max-width: 375px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 247px; }
}

@media (max-width: 360px) {
    .fifty-fifty.image-right:not(.inline-image) .vc_col-has-fill .vc_column-inner,
    .fifty-fifty.image-left:not(.inline-image) .vc_col-has-fill .vc_column-inner { height: 237px; }
}

.fifty-fifty.inline-image {
    padding: 32px 0;
}
.fifty-fifty.inline-image .container {
    max-width: 1520px;
}
.fifty-fifty.inline-image .vc_column-inner {
    align-items: center;
    padding-top: 0;
    display: flex;
}
.inline-image img {
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.25);
    border-radius: 36px;
}

@media (min-width: 980px) {
    .fifty-fifty.inline-image .wpb_column:nth-child(1):not(.image-col) {
        padding-right: 2.5%;
    }
    .fifty-fifty.inline-image .wpb_column:nth-child(2):not(.image-col) {
        padding-left: 2.5%;
    }
}


/* Fifty Fifty */


/* Promo Row */

.promo-row .wpb_column {
    height: 300px;
}
.promo-row .wpb_column .vc_column-inner {
    justify-content: center;
    align-items: center;
    display: flex;
}
.promo-row h2 {
    text-shadow: 1px 1px 8px var(--dark3);
    color: var(--light1);
    margin-bottom: 7px;
    line-height: 56px;
    font-size: 48px;
}
.icon-promos img {
    height: 80px;
    width: auto;
}
body .icon-promos h4 {
    letter-spacing: 3px;
    margin-bottom: 7px;
    font-size: 20px;
}
.icon-promos a.btn-bt {
    margin-top: 5px;
}

/* END Promo Row */

/* Subpage Global */

.fifty-fifty hr.line {
    margin: 24px 0;
}
body .fifty-fifty.team-fifty h3 {
    margin-bottom: 12px;
    line-height: 40px;
    font-size: 36px;
}
body .fifty-fifty.team-fifty h4 {
    letter-spacing: 3px;
    line-height: 39px;
    font-size: 30px;
}
body .wpb_row.subpage-banner.large {
    padding-bottom: 100px;
    padding-top: 100px;
}

@media (min-width: 1441px) {
    body .subpage-banner.large {
        height: 776px;
    }
}

@media (max-width: 1440px) {
    body .subpage-banner.large {
        height: 582px;
    }
}
/*.sub-promos h2 {
    margin-bottom: 35px !important;
}*/

/* END Subpage Global */

/* Single Service */

.reasons-row h4 {
    letter-spacing: 3px;
    font-size: 20px;
}
.reasons-row hr {
    border-width: 2px;
    margin: 20px 0;
}
.bakery .contained-fw-bottom-background-row {
    background-position: center bottom !important;
}
h3.faux-hr {
    border-bottom: 2px solid var(--light2);
    padding: 0 12px 25px 12px;
    width: fit-content;
    margin: 0 auto;
}
.other-services .container {
    max-width: unset;
    width: 96%;
}

@media (min-width: 980px) {
    .other-services .container .vc_inner {
        justify-content: space-between;
        align-items: flex-start;
        display: flex;
    }
}

.other-services .vc_inner .vc_col-sm-3 {
    width: 23.5%;
}
.other-services .vc_inner .vc_col-sm-4 {
    width: 32%;
}
.other-services .vc_inner .wpb_column .wpb_text_column {
    justify-content: center;
    align-items: center;
    display: flex;
}
.other-services .vc_inner .vc_col-sm-3 .wpb_text_column {
    height: 244px;
}
.other-services .vc_inner .vc_col-sm-4 .wpb_text_column {
    height: 250px;
}
.other-services .vc_inner h3 {
    text-shadow: 1px 1px 8px var(--dark3);
    color: var(--light1);
    margin-bottom: 16px;
}
.other-services:not(.multi-row) .vc_inner {
    padding-bottom: 32px;
}
.other-services .vc_inner {
    padding-bottom: 0;
    padding-top: 32px;
}
.other-services .mt32px {
    margin-top: 32px;
}
body:not(.home) .vc_col-sm-12 h3,
body:not(.home):not(.search-results) .vc_col-sm-12 h4 {
    margin-bottom: 12px;
}
body:not(.home) .vc_col-sm-12 h5 {
    margin-bottom: 10px;
}

/* END Single Service */

/* Products Index (Non-Woocommerce) */

body:not(.home) .manual-products-grid .vc_inner h3 {
    text-shadow: 1px 1px 8px var(--dark3);
    margin-bottom: 2px;
}
body:not(.home) .manual-products-grid .vc_inner h4 {
    text-shadow: 1px 1px 8px var(--dark3);
    margin-bottom: 7px;
}
.light1.manual-products-grid .vc_inner h4 {
    color: var(--light1);
    letter-spacing: 3px;
    font-size: 22px;
}

@media (max-width: 979px) {
    .wpb_row.thirds.inline-image .wpb_content_element,
    .bakery .other-services .vc_inner .vc_col-sm-4 .wpb_text_column,
    .wpb_row.other-services.multi-row.manual-products-grid .wpb_content_element {
        margin-bottom: 20px;
    }
}

/* END Products Index (Non-Woocommerce) */

/* Single Product (Non-Woocommerce) */

.prod-desc-row h3,
.prod-desc-row h2 {
    margin-bottom: 8px;
}
.prod-desc-row h4 {
    letter-spacing: 3px;
    font-size: 20px;
    margin: 0;
}
.prod-desc-row hr {
    margin: 16px 0 20px 0;
    border-width: 2px;
}

@media (min-width: 980px) {
    .product-gallery .container {
        justify-content: space-between;
        align-items: center;
        display: flex;
    }
    .product-gallery .vc_col-sm-4 {
        width: 30%;
    }
    .product-gallery .vc_col-sm-3 {
        width: 21%;
    }
}

/* END Single Product (Non-Woocommerce) */

/* Gallery Page */

.bottom-cta.no-form {
    height: 520px;
}
body .bottom-cta.no-form h2 {
    margin-bottom: 28px;
}
body .bottom-cta.no-form p {
    font-family: var(--MontB);
    color: var(--light1);
}
body #content .bottom-cta.no-form p a:not(.btn-bt) {
    color: var(--light1);
}
body #content .bottom-cta.no-form p a:not(.btn-bt):hover {
    color: var(--accent2);
}
body .bottom-cta.no-form a.btn-bt {
    margin-top: 18px;
}

/* END Gallery Page */

/* Contact */

.bakery .fifty-fifty .map-col .vc_column-inner .wpb_wrapper,
.bakery .fifty-fifty .wpb_gmaps_widget.wpb_content_element,
.bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper,
.bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper iframe {
    height: 100% !important;
    border-radius: 36px;
    width: 100%;
    padding: 0;
}
p.nap-address {
    line-height: 1;
}
p.nap-address strong {
    font-family: var(--MontB);
}
.nap-address a:not(.dir-link) {
    text-decoration: none;
}
body .nap-col p.nap-address,
body .nap-col p.nap-phone {
    margin-bottom: 24px !important;
}
body .nap-col p.nap-hours {
    margin-bottom: 0 !important;
}
body .fifty-fifty .nap-col a.btn-bt {
    margin-top: 24px;
}

.fifty-fifty .nap-col .vc_column-inner > .wpb_wrapper {
    width: 100%;
}
.wpb_row.accent1 .nap-col hr {
    border-color: var(--light2);
    border-width: 2px;
    margin: 20px 0;

}
.nap-col h4 {
    letter-spacing: 0px;
    margin-bottom: 8px;
    line-height: 24px;
    font-size: 20px;
}
.nap-col a.phone-link {
    text-decoration: none;
}
body .nap-col p {
    line-height: 1.6;
}
/*body .nap-col p:not(:last-child) {
    margin-bottom: 20px !important;
}*/
body .nap-col a.shrtcde-lnk {
    text-decoration: none;
}
body #content .accent1 .vc_col-sm-6.nap-col a:not(.btn-bt):hover {
    color: var(--accent2);
}

/* END Contact */

/* Our Team */

.staff-row img {
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.25);
    border-radius: 36px;
}
.staff-row h4 {
    margin-bottom: 8px;
    line-height: 40px;
    font-size: 30px;
}
.staff-row h5 {
    letter-spacing: 2px;
    margin-bottom: 16px;
    line-height: 32px;
    font-size: 24px;
}
body .staff-row p {
    line-height: 30px;
    font-size: 20px;
}

@media (min-width: 980px) {
    .staff-row.thirds .container{
        justify-content: space-between;
        align-items: flex-start;
        display: flex;
    }
    .staff-row.thirds .vc_col-sm-4{
        width: 31%;
        padding: 0px;
    }
}

/* END Our Team */

/* Service Index */

@media (min-width: 980px) {
	.service-row.thirds .container{
        justify-content: space-between;
        align-items: flex-start;
        display: flex;
    }
	.service-row.thirds .vc_col-sm-4 {
        width: 31%;
    }
	.service-row .vc_col-sm-6 {
    	padding-right: 0px !important;
    	padding-left: 2.5%;
	}
}

.service-row img {
    border-radius: 36px 36px 0px 0px;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.25);
}
.service-area-text {
    background-color: #f0efe7;
    margin-top: -10px;
    padding: 20px;
}

.service-area-text hr {
	margin: 10px 0px;
}

h4.service-link:after {
    content: '\f08e';
    font-family: 'fontello';
    position: absolute;
    right: 20px;
}

.service-area-text {
    border-radius: 0px 0px 36px 36px;
}

/* Reviews */

.reviews-wall .testimonial {
    padding: 60px 0 60px 0px;
}
.reviews-wall .testimonial:nth-child(odd) {
    background: var(--light1);
}
.reviews-wall .testimonial:nth-child(even) {
    background: var(--accent1);
}
.reviews-wall .testimonial .testimonial-inner {
    text-align: center;
    max-width: 1100px;
    margin: 0 auto;
    width: 90%;
}
body #content .reviews-wall .testimonial:nth-child(even) .testimonial-inner h3,
body #content .reviews-wall .testimonial:nth-child(even) .testimonial-inner p {
    color: var(--light1);
}
body #content .reviews-wall .testimonial h3 {
    border-bottom: 2px solid var(--light2);
    padding: 0 12px 28px 12px;
    margin: 0 auto 24px auto;
    width: fit-content;
}

/* END Reviews */

/* Deals Page */

.feat-special h3,
.feat-special h2 {
    margin-bottom: 10px;
}
.feat-special h4  {
    margin-bottom: 12px;
    font-size: 20px;
}
.feat-special hr.line.fw-line {
    border-color: var(--light2);
    margin-bottom: 16px;
    border-width: 2px;
}
.feat-special h5,
.fw-special h5 {
    letter-spacing: 2px;
    font-size: 18px;
}
.fw-special h5 {
    margin-bottom: 16px;
}
.fw-special h3 {
    margin-bottom: 12px;
}
.fw-special h4 {
    font-size: 22px;
}
.fw-special hr.line {
    border-color: var(--light2);
    border-width: 2px;
    margin: 25px auto;
    max-width: 300px;
}
.fw-special a.btn-bt {
    margin-top: 12px;
}
.bakery .fw-special .wpb_text_column p:not(:last-child) {
    margin-bottom: 20px;
}

@media (min-width: 980px) {
    body .horizontal-gform .gform_wrapper {
        background: unset;
        max-width: 75%;
        padding: 0;
    }
    .horizontal-gform form,
    .horizontal-gform .gform_fields {
        justify-content: space-between;
        display: flex !important;
        align-items: flex-end;
    }
    .horizontal-gform form .gform_body {
        width: 65.5% !important;
    }
    .horizontal-gform form .gform_footer {
        width: 32.5% !important;
    }
    .horizontal-gform form .gform_fields li {
        margin-bottom: 0;
        width: 48.5%;
    }
    .horizontal-gform input:not(.gform_button) {
        background: var(--dark1) !important;
    }
}

/* END Deals Page */

/* Blog Index */

body#blog-page .blog .wrap {
    max-width: 1520px;
    width: 92%;
}
body#blog-page img.post-image {
    border-radius: 36px;
    width: 100%;
}
#primary .post-image-wrap {
    margin-bottom: 20px;
}
.post-image-wrap a.archive-post-image-link {
    transition: all 0.3s ease-in-out;
    background-blend-mode: overlay;
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 36px;
    line-height: 0;
    display: block;
    width: 100%;
}
.post-image-wrap a.archive-post-image-link:hover {
    background-color: var(--accent2_40);
    transition: all 0.3s ease-in-out;
}
p.archive-date {
    margin-bottom: 10px !important;
    font-family: var(--MontB);
    text-transform: uppercase;
    color: var(--accent1);
    font-size: 14px;
    line-height: 1;
}
#primary .post-text-wrap h2.archive-post-title {
    margin-bottom: 16px;
    line-height: 1.3;
    font-size: 20px;
}
#primary .post-text-wrap h2.archive-post-title a {
    text-decoration: none;
}
#primary hr.line.fw-line {
    border-color: var(--light2);
    margin-bottom: 16px;
    border-width: 2px;
}
#primary p.archive-post-excerpt {
    margin-bottom: 20px !important;
    font-size: 14px;
}
body#blog-page div#pagination {
    justify-content: space-between;
    align-items: center;
    margin-top: 35px;
    display: flex;
    width: 100%;
}
body.single .navigation .nav-links a.btn-bt,
body #content a.all-blogs-link,
body #content .left-pag a.btn-bt.default,
body #content .right-pag a.btn-bt.default {
    text-transform: uppercase;
    justify-content: center;
    align-items: center;
    color: var(--dark3);
    padding: 13px 28px;
    width: fit-content;
    display: flex;
}
body.single .navigation .nav-links a.btn-bt i,
body #content a.all-blogs-link i,
body #content .left-pag a.btn-bt.default i,
body #content .right-pag a.btn-bt.default i {
    color: var(--accent2);
    font-size: 24px;
    margin: 0;
}
body.single .navigation .nav-links a.btn-bt i::before,
body #content a.all-blogs-link i::before,
body #content .left-pag a.btn-bt.default i:before,
body #content .right-pag a.btn-bt.default i:before {
    margin: 0 !important;
}

/* END Blog Index */

/* Single Blog */

body.single .default-header .container {
    flex-direction: column;
    row-gap: 24px;
}
body.single .default-header h2 {
    text-shadow: 1px 1px 8px var(--dark3);
    text-transform: none;
    color: var(--light1);
    letter-spacing: 0px;
    line-height: 72px;
    font-size: 52px;
}
body.single .default-header a.back-button {
    text-transform: uppercase;
}
body.single #content .blog {
    padding: 32px 0 !important;
    background: var(--light2);
}
body.single-post #content .wrap {
    max-width: 1520px;
    margin: 0 auto;
    column-gap: 2%;
    width: 92%;
}
body.single .wrap #primary > div {
    width: 100%;
}
ody.single-post #primary {
    width: 75% !important;
    display: block;
}
aside#secondary {
    background: var(--accent1) !important;
    padding: 20px 24px !important;
    width: 25% !important;
    border-radius: 36px;
    position: sticky;
    top: 164px;
}
aside#secondary .widget {
    margin-bottom: 0.8em;
}
aside#secondary h2.widget-title {
    letter-spacing: 1px !important;
    margin-bottom: 5px !important;
    font-size: 20px !important;
    color: var(--light1);
}
aside#secondary ul {
    list-style: none;
}
#secondary ul li {
    border-bottom: 1px solid var(--light3);
    padding: 10px 0;
}
#secondary ul li,
#secondary ul li a {
    line-height: 1.1;
    font-size: 16px;
}
body #content #secondary ul li a {
    text-decoration: none;
    color: var(--light1);
}
body #content #secondary ul li a:hover {
    color: var(--accent2);
}

@media (min-width: 980px) {
    body.single.admin-bar { margin-top: 0;
    }
}

@media (max-width: 979px) {
    html[lang="en-US"] {
        margin-top: 0 !important;
    }
    body.single.admin-bar {
        margin-top: 0;
    }
}

@media (max-width: 782px) {
    html[lang="en-US"] {
        margin-top: 0 !important;
    }
}

body.single #content .blog.single {
    padding-top: 0;
}
.single-intro {
    background: var(--accent1);
    padding: 100px 0 70px 0;
    width: 100%;
}
.single-intro .container {
    align-items: flex-start;
    justify-content: center;
    max-width: unset;
    margin: 0 auto;
    display: flex;
    width: 93%;
}

@media (min-width: 980px) {
    .single-intro .container > div {
        margin-bottom: 0;
        width: 50%;
    }
    .single-intro .container > div:nth-child(1) {
        padding-right: 2.5%;
    }
    .single-intro .container > div:nth-child(2) {
        padding-left: 2.5%;
        padding-top: 24px;
    }
}

@media (max-width: 979px) {
    .single-intro .container {
        flex-direction: column-reverse;
    }
    .single-intro .container > div {
        width: 100%;
    }
}
body.single h1.single-post-title {
    color: var(--accent1);
    margin-bottom: 5px;
    text-shadow: none;
}
body p.single-post-meta,
body #content p.single-post-meta a {
    color: var(--dark3);
}
body.single-post p.single-post-meta span {
    font-size: 16px;
    line-height: 1;
}
body.single .single-post-feat-img-wrap img {
    border-radius: 36px;
    height: auto;
    width: 100%;
}

body.single .single-post-content-wrap {
    margin-bottom: 1.5em;
}
.blog-beef {
    padding: 40px 0;
    width: 100%;
}
.blog-beef .container,
.single-pagination .container {
    max-width: 1200px;
    margin: 0 auto;
    width: 90%;
}
.blog #primary div#pagination,
div#single-pagination {
    width: 100%;
}
.single-pagination-link.next {
    justify-content: end;
    text-align: right;
}
body.paged #primary div#pagination,
div#single-pagination {
    justify-content: space-between;
    align-items: center;
    display: flex;
}
body.single div#single-pagination {
    column-gap: 5%;
}
.single-pagination-link {
    align-items: center;
    column-gap: 10px;
    display: flex;
    width: 50%;
}
div#pagination .left-pag a,
div#pagination .right-pag a,
body #content .single-pagination-link,
body #content .single-pagination-link a {
    text-decoration: none;
    font-family: var(--MontReg);
    color: var(--dark3);
    font-size: 18px;
}
body #content .single-pagination-link a:hover {
    color: var(--accent2);
}
body.single nav.navigation.post-navigation {
    background: unset;
    max-width: none;
    padding: unset;
    width: 100%;
    margin: 0;
}
body.single .navigation .nav-links > * {
    min-width: unset;
    min-height: unset;
}
body.single #content .navigation .nav-links a.btn-bt {
    text-transform: uppercase;
    font-family: var(--MontB);
    justify-content: center;
    text-decoration: none;
    letter-spacing: 2px;
    flex-direction: row;
    align-items: center;
    color: var(--dark3);
    border-radius: 2px;
    text-align: center;
    padding: 13px 28px;
    font-size: 14px;
    line-height: 1;
    display: flex;
}
body.single .single-post-content-wrap h2 {
    margin-bottom: 18px;
}
body.single .single-post-content-wrap h3 {
    margin-bottom: 16px;
}
body.single .single-post-content-wrap a.btn-bt {
    margin-top: 16px;
}
body.single .single-post-content-wrap p {
    margin-bottom: 16px;
}
body.single .single-post-content-wrap img {
    margin-bottom: 2em;
    margin-top: 2em;
}

/* END Single Blog */

/* Terms, Privacy Policy, ADA, TY */

body#pp-page h5,
body#ada-page h5,
body#tos-page h5,
body#ty-page h5,
body .four-oh-four-page h5 {
    font-size: 20px;
}
body .four-oh-four-page .wpb_text_column a.btn-bt,
body#ty-page .wpb_text_column a.btn-bt {
    margin-top: 14px;
}
body.error404 #content .row.copyright a {
    transition: all 0.3s ease-in-out;
    color: var(--light1) !important;
}
body.error404 #content .row.copyright a:hover {
    transition: all 0.3s ease-in-out;
    color: var(--accent2) !important;
}

/* END Privacy Policy, ADA, TY */

/* Search */

body.search .default-header {
    background-image: url(/wp-content/uploads/2022/10/default-header-background.jpg);
}

/*@media (max-width: 480px) {
    .default-header {
        background-image: url(/wp-content/uploads/2021/10/header-default-mobile.jpg);
    }
}*/

body.search .top-blurb {
    padding-bottom: 36px;
    padding-top: 28px;
}
body.search .vc_row.wpb_row.top-cta.dark1.search-cta {
    padding: 24px 0;
}

@media (min-width: 980px) {
    body.search .top-blurb {
        min-height: 500px;
    }
    body.search .top-cta h4 {
        margin-right: 24px;
    }
}

body.search #content .top-blurb h2 {
    margin-bottom: 24px;
    color: ;
}
body.search .default-header h1,
body.search .default-header h1 span {
    color: var(--light1) !important;
    font-family: var(--DunbarMed);
    text-transform: uppercase;
    font-size: 28px;
}
body.search .entry-content p,
body.search .entry-content {
    font-family: var(--MontReg);
    font-size: 16px;
}
body.search .bakery .top-cta.vc_row.accent2 {
    background: var(--accent2);
    padding: 16px 0;
}
body.search .top-cta .wpb_text_column .wpb_wrapper {
    justify-content: center;
    align-items: center;
    display: flex;
}
body.search .top-cta h4 {
    color: var(--light1);
    letter-spacing: 3px;
    font-size: 18px;
}
body.search .search-cta form.search-form {
    position: relative;
    width: 450px;
}
body.search .search-cta label {
    display: none;
}
body.search .bakery .search-cta input[type="search"] {
    border-bottom: 3px solid var(--accent1);
    border: 1px solid var(--light2);
    background: var(--light1_50);
    margin: 0 !important;
    padding-right: 25px;
    font-size: 16px;
    height: 44px;
}
body.search .search-cta button.search-submit {
    background-color: none !important;
    background: none !important;
    position: absolute;
    border: none;
    padding: 0;
    right: 6px;
    margin: 0;
    top: 6px;
}
body.search .search-cta button.search-submit i.icon-search {
    background-color: none !important;
    background: none !important;
    color: var(--dark1);
}
body.search button.search-submit i.icon-search::before {
    transform: rotate(272deg);
    font-weight: 600;
    font-size: 20px;
}
body.search-results .some-content.num-of-results {
    background: var(--dark2);
    padding: 24px 0;
}
body.search-results .some-content {
    padding: 40px 0px;
}
body.search-results .some-content .container {
    max-width: 800px;
    margin: 0 auto;
    width: 87%;
}
body.search-results .search-result-count.default-max-width {
    max-width: unset;
    width: 100%;
}
body.search-results .search-result-count.default-max-width p {
    font-family: var(--MontB);
    color: var(--light1);
    text-align: center;
}
body.search-results .some-content .container {
    max-width: 800px;
    margin: 0 auto;
    width: 87%;
}
body.search-results article:nth-child(odd),
body.search-results article:nth-child(even) {
    background: var(--accent1);
}
body.search-results article {
    margin-bottom: 25px;
    padding: 20px;
}
body.search-results article .entry-header,
body.search-results article .entry-content {
    color: var(--light1);
    margin: 0;
}
body.search-results article .entry-header h2 {
    text-transform: none;
    color: var(--light1);
    margin-bottom: 5px;
    line-height: 36px;
    font-size: 24px;
}
body.search-results #content article .entry-header h2 a {
    color: var(--light1);
}
body.search-results #content article .entry-header h2 a:hover {
    color: var(--accent2);
}
body.search-results article .entry-header h2,
body.search-results article .entry-content p {
    max-width: unset !important;
    color: var(--light1);
    width: 100%;
}
body.search-results #content article .entry-header h2 a {
    transition: all 0.3s ease-in-out;
    text-decoration: none;
}
body.search-results a.page-numbers,
body.search-results span.page-numbers {
    text-decoration: none !important;
    font-family: var(--MontB);
    text-transform: uppercase;
    font-size: 18px;
}
body.search-results span.page-numbers.current {
    color: var(--accent2);
}
span.nav-prev-text,
span.nav-prev-text span,
span.nav-next-text,
span.nav-next-text span {
    font-family: var(--MontB) !important;
}
body.search-results a.prev.page-numbers,
body.seatch span.page-numbers.current,
body.search-results .nav-links a {
    text-decoration: none;
}
body.search-results a.more-link,
body.single .nav-links a .meta-nav {
    margin-right: unset !important;
    margin-left: unset !important;
    width: fit-content;
}
body.search-results article .entry-header figure,
body.search-results article .entry-footer {
    display: none;
}

@media (max-width: 480px) {
    body.search-results a.more-link,
    body.single .nav-links a .meta-nav {
        margin-top: 16px;
        width: 100%;
    }
}

/* END Search */

/* Privacy Policy */

#legal-page #content .bakery hr {
    margin: 35px 0;
}
#legal-page #content .bakery ul:not(.social) {
    margin-bottom: 16px;
}
#legal-page #content .bakery ul ul {
    margin-top: 16px;
}
#legal-page #content .bakery ul:not(.social) li {
    margin-bottom: 7px;
}
#legal-page #content .bakery ol {
    margin-bottom: 16px;
    padding-left: 18px;
    margin-top: 36px;
}
#legal-page #content .bakery  h2 {
    margin-bottom: 0;
    font-size: 36px;
}
#legal-page #content .bakery li h3 {
    line-height: 1.25;
    font-size: 24px;
}
#legal-page #content .bakery p,
#legal-page #content .bakery p a:not(.ab-item),
#legal-page #content .bakery p span,
#legal-page #content .bakery ul:not(.social) li {
    font-size: 16px;
}

/* END Privacy Policy */

/* Responsive */

@media (max-width: 1440px) {
    .featured-posts-row h3,
    .testimonials-row h3 {
        line-height: 42px;
        font-size: 32px;
    }
    nav ul#top-menu li a {
        letter-spacing: 1.5px;
        font-size: 14px;
    }
    body .header-button a.btn-bt {
        letter-spacing: 1.5px;
        padding: 16px 8px;
        min-width: 200px;
        font-size: 14px;
    }
    body h2 {
        line-height: 1.2;
        font-size: 36px;
    }
    .featured-posts .feat-post h2.feat-post-title {
        line-height: 34px;
        font-size: 24px;
    }
    .feat-post-left {
        margin-bottom: 18px;
    }
    .featured-posts-row p.feat-post-date-author {
        margin-bottom: 4px !important;
        font-size: 12px;
    }
    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        line-height: 28px;
        font-size: 18px;
    }
}

@media (max-width: 1200px) {
    header .left-right-header nav ul#top-menu li {
        padding: 12px 10px;
    }
    nav ul#top-menu li a {
        letter-spacing: 1px;
        font-size: 12px;
    }
    body .header-button a.btn-bt {
        letter-spacing: 1px;
        padding: 12px 6px;
        min-width: 150px;
        font-size: 12px;
    }
    #top-menu:not(.mobile-menu) li:last-child {
        margin-right: 0;
    }
}

@media (max-width: 1280px) {
    body:not(.home) h1 {
       line-height: 52px;
       font-size: 40px;
    }
}

@media (max-width: 1024px) and (min-width: 980px) {
    body #content a.btn-bt.default,
    body #content a.btn-bt.alternate,
    body footer#footer a.btn-bt.default,
    body footer#footer a.btn-bt.alternate {
        letter-spacing: 1px;
        padding: 12px 6px;
        min-width: 150px;
        font-size: 12px;
    }
}

@media (max-width: 1024px) {
    section#HomeHero {
        height: 420px;
    }
    body .home-banner h1,
    .bottom-cta h2,
    .bottom-cta .gform_wrapper.gravity-theme h2 {
        line-height: 52px;
        max-width: 450px;
        font-size: 40px;
        margin: 0 auto;
    }
    .bottom-cta .gform_wrapper.gravity-theme h2 {
        margin-bottom: 18px !important;
    }
    body h2 {
        line-height: 1.2;
        font-size: 24px;
    }
    .featured-posts-row h3,
    .testimonials-row h3 {
        line-height: 32px;
        font-size: 22px;
    }
    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        line-height: 26px;
        font-size: 16px;
    }
    .featured-posts-row a.archive-post-image-link {
        height: 192px;
    }
    .featured-posts .feat-post h2.feat-post-title {
        line-height: 1.2;
        font-size: 20px;
    }
}

@media (max-width: 979px) {
    header .top-widget .container,
    header .top-header .container {
        width: 90%;
    }
    body #content a.btn-bt.default,
    body #content a.btn-bt.alternate,
    body footer#footer a.btn-bt.default,
    body footer#footer a.btn-bt.alternate {
        min-width: 280px;
    }
    .featured-posts-row a.archive-post-image-link {
        height: 570px;
    }
    .fifty-fifty.inline-image .image-col figure,
    .fifty-fifty.inline-image .image-col .vc_single_image-wrapper,
    .fifty-fifty.inline-image .image-col .vc_single_image-wrapper img,
    .fifty-fifty.inline-image .image-col .vc_column-inner .wpb_wrapper {
        width: 100%;
    }
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper,
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper iframe {
        height: 420px !important;
    }
    body button#primary-mobile-menu svg {
        transition: all 0.3s ease-in-out;
        stroke-width: 0.75px !important;
        stroke-linejoin: miter;
        stroke: var(--light1);
        height: 48px;
        width: auto;
    }
    span.dropdown-icon svg:hover, span.dropdown-icon.close svg {
        transition: all 0.3s ease-in-out;
        stroke: var(--accent2) !important;
        color: var(--accent2);
    }
    body .main-navigation.display-small-desktop ul,
    body .js .top-header .main-navigation > div > ul,
    body header .left-right-mobile-nav > div > ul {
        background-color: var(--dark1);
    }
    ul#top-menu.mobile-menu ul.sub-menu li {
        padding: 0;
    }
    body .remove-padding-mobile {
        padding: 0 !important;
    }
    body .bottom-cta:not(.form-bottom-cta) h2 {
        line-height: 52px;
        max-width: 450px;
        font-size: 40px;
        margin: 0 auto;
    }
    .featured-posts .feat-post {
        margin-bottom: 28px;
    }
    footer .widget-content.widget {
        text-align: center;
    }
    footer .widget-content.widget h2 {
        margin-right: auto;
        margin-left: auto;
    }
    footer#footer .span3:not(:last-child) .widget {
        margin-bottom: 35px;
    }
    footer#footer .span3:last-child .widget {
        margin-bottom: 0;
    }
    .row.copyright {
        padding: 24px 0;
    }
    .row.copyright .copyright-content.span6.right {
        margin-top: 18px;
    }
    .bakery .promo-row .wpb_column {
        height: 400px;
    }
    body:not(.home) .default-header {
        padding-top: 0;
        height: 176px;
    }
    body:not(.home) .default-header h1 {
        text-align: center;
    }
    body:not(.home) h1 {
        line-height: 42px;
        font-size: 32px;
    }
    body#blog-page div.default-header {
        padding-bottom: 0;
        height: 389px;
    }
    body.single .single-intro {
        padding: 40px 0 28px 0;
    }
    body.single .single-post-feat-img-wrap {
        margin-bottom: 35px;
    }
    body.single .single-post-title-wrap {
        margin-bottom: 0px;
    }
    h1.single-post-title {
        margin: 24px 0;
    }
    body .wpb_row.subpage-banner.large {
        padding-bottom: 0px;
        padding-top: 0px;
        height: 389px;
    }
    body.search .top-cta h4 {
        display: none;
    }
}

@media (max-width: 768px) {
    .featured-posts-row a.archive-post-image-link {
        height: 448px;
    }
    #content .bakery .other-services .vc_inner .vc_col-sm-3 .wpb_text_column,
    #content .bakery .other-services .vc_inner .vc_col-sm-4 .wpb_text_column {
        height: 535px;
    }
    body .wpb_row.subpage-banner.large {
        height: 304px;
    }
    body #content h3 {
        line-height: 32px;
        font-size: 22px;
    }
    body #content .fifty-fifty h3 {
        margin-bottom: 12px;
    }
    body .blurb-row hr.line {
        margin: 24px auto;
        max-width: 500px;
    }
    .bakery .blurb-row.wpb_row {
        padding: 40px 0 !important;
    }
    .bakery section .blurb-row.wpb_row {
        padding: 0 !important;
    }
    #content .promo-row .wpb_column {
        height: 313px;
    }
    body#blog-page div.default-header {
        height: 304px;
    }
    body.single h1.single-post-title {
        line-height: 1.4;
        font-size: 32px;
    }
    body .bakery .bottom-cta.no-form {
        height: 360px;
    }
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper,
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper iframe {
        height: 375px !important;
    }
}

@media (max-width: 480px) {
    .promo-cards .wpcp-single-content {
        row-gap: 0px;
    }
    .featured-posts-row p.feat-post-content {
        line-height: 22px;
        font-size: 14px;
    }
    .bakery section .wpb_row:not(.fifty-fifty.inline-image).gallery-row {
        padding-bottom: 30px !important;
    }
    .featured-posts-row a.archive-post-image-link {
        height: 276px;
    }
    section#HomeHero {
        height: 340px;
    }
    body section#HomeHero .home-banner h1,
    body:not(.home).default-header h1,
    body .bottom-cta h2,
    body .bottom-cta .gform_wrapper.gravity-theme h2 {
        line-height: 32px;
        font-size: 30px;
    }
    .bottom-cta.no-form {
        height: auto !important;
    }
    #content .bakery .other-services .vc_inner .vc_col-sm-3 .wpb_text_column,
    #content .bakery .other-services .vc_inner .vc_col-sm-4 .wpb_text_column {
        height: 330px !important;
    }
    body .wpb_row.subpage-banner.large {
        height: 188px;
    }
    body#blog-page div.default-header {
        height: 188px;
    }
    body:not(.home) h1 {
        line-height: 32px;
        font-size: 23px;
    }
    body:not(.home) .default-header {
        height: 160px;
    }
    header .top-header {
        height: 80px;
    }
    header .top-header .logo .site-branding a img {
        height: 40px;
    }
    .bakery .wpb_row.home-banner {
        padding: 40px 0;
        height: 361px;
    }
    .post-read-more-wrap {
        justify-content: center;
        align-items: center;
        display: flex;
    }
    .home-banner img {
        max-width: 140px;
        height: auto;
    }
    body .home-banner h1 {
        line-height: 42px;
        max-width: 300px;
        font-size: 30px;
    }
    body#blog-page div#pagination {
        justify-content: center;
        margin-top: 24px;
    }
    body #content .bakery .promo-row .wpb_column {
        height: 194px;
    }
    .promo-row .wpb_column .vc_column-inner {
        padding-top: 0;
    }
    .promo-row h2 {
        margin-bottom: 0px;
        line-height: 32px;
        font-size: 24px;
    }
    body .fifty-fifty.image-right:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(1),
    body .fifty-fifty.image-left:not(.inline-image) .wpb_column:not(.vc_col-has-fill):nth-child(2) {
        padding: 32px 5%;
    }
    body #content .wpb_row:not(.cta-row) a.btn-bt {
        margin: 24px auto 0 auto !important;
        display: block !important;
        max-width: 280px;
        width: 100%;
    }
    .gallery-row .wpcp-single-item {
        margin-top: 0 !important;
    }
    .testimonials-row hr.line {
        margin: 24px auto;
        max-width: 225px;
    }
    body #content h3 {
        line-height: 28px;
        font-size: 20px;
    }
    body.single h1.single-post-title {
        line-height: 1.5;
        font-size: 24px;
    }
    body.single .nav-links {
        justify-content: center;
        flex-direction: column;
        align-items: center;
        display: flex;
    }
    body.single .navigation .nav-links > * {
        margin: 8px 0;
    }
    body .bottom-cta h2 {
        line-height: 42px;
        font-size: 30px;
    }
    body h2 {
        line-height: 30px;
        font-size: 22px;
    }
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper,
    .bakery .fifty-fifty .map-col .wpb_gmaps_widget .wpb_wrapper .wpb_map_wraper iframe {
        height: 288px !important;
    }
    .nap-col h4 {
        margin-bottom: 5px;
        line-height: 20px;
        font-size: 16px;
    }

}

@media (max-width: 440px) {
    .featured-posts-row a.archive-post-image-link {
        height: 253px;
    }
}

@media (max-width: 414px) {
    body section#HomeHero .home-banner h1,
    body:not(.home).default-header h1,
    body .bottom-cta h2,
    body .bottom-cta .gform_wrapper.gravity-theme h2 {
        line-height: 26px;
        font-size: 24px;
    }
    .gform_wrapper.gravity-theme h4 {
        margin-bottom: 18px;
        line-height: 22px;
        font-size: 16px;
    }
    .featured-posts-row a.archive-post-image-link {
        height: 237px;
    }
}

@media (max-width: 375px) {
    .featured-posts-row a.archive-post-image-link {
        height: 214px;
    }
}

@media (max-width: 360px) {

    body#blog-page div.default-header {
        height: 139px;
    }
    body #content .bakery .wpb_row.promo-row .wpb_column {
        height: 170px;
    }
    body .wpb_row.subpage-banner.large {
        height: 160px;
    }
    body #content .bakery .other-services .vc_inner .vc_col-sm-3 .wpb_text_column,
    body #content .bakery .other-services .vc_inner .vc_col-sm-4 .wpb_text_column {
        height: 245px !important;
    }
}

/* END Responsive  */

/* Carousels */

.wpcp-all-captions {
background-color: var(--accent2);
}

/* === Page: global-foundation === 2026-10-08 === */
/* ------------------------------------------------------------------
   VELORA GLOBAL FOUNDATION
   custom.css loads AFTER options-page/option-page-styles.css, and the
   Colorado :root further up this file hardcodes the old palette/fonts.
   This block is last-in-file, so it is what actually wins.
   Palette + type per README.md.docx sections 8-9.
   ------------------------------------------------------------------ */

/* ------------------------------------------------------------------
   No horizontal page scroll (Eric 2026-10-08).
   Negative-margin gutter rows (.gallery-strip at 0 -8px, .approach-row at
   0 -20px, slick's -16px list margin) can push past the viewport edge and
   create a horizontal scrollbar on narrow widths.
   ------------------------------------------------------------------ */
html,
body { overflow-x: hidden; }

:root {
    /* ---- core palette ---- */
    --accent1: #0F6735;            /* primary green */
    --accent2: #C2A678;            /* tan / gold */
    /* --accent3 intentionally unset - Figma defines no third accent */

    --light1: #F7F6F2;             /* off-white - page background */
    --light2: #ECE8DF;             /* warm light */
    --light3: #E0CDB5;             /* sand (Figma "Light 4") */

    --dark1:  #0B381E;             /* deep green */
    --dark2:  #3F3F3F;             /* charcoal */
    --dark3:  #1B181F;             /* near black */
    --dark4:  #000000;

    /* ---- neutrals / misc (Figma; no theme-options fields) ---- */
    --neutral1:    #D3D2CF;
    --neutral2:    #5C5952;
    --neutral3:    #383838;
    --global-dark: #28303D;

    --uihover: #C2A67866;          /* accent2 @ 40% */

    /* ---- opacity variants ---- */
    --accent1_12: #0F67351F;
    --accent1_40: #0F673566;
    --accent1_70: #0F6735B3;
    --accent2_12: #C2A6781F;
    --accent2_40: #C2A67866;
    --accent2_70: #C2A678B3;

    --dark1_40: #0B381E66;
    --dark1_80: #0B381ECC;
    --dark2_25: #3F3F3F40;
    --dark2_40: #3F3F3F66;
    --dark2_80: #3F3F3FCC;

    --light1_90: #F7F6F2E6;
    --light2_50: #ECE8DF80;
    --light3_40: #E0CDB566;
    --light3_80: #E0CDB5CC;

    --black_12: #0000001F;
    --black_24: #0000003D;
    --black_36: #0000005C;
    --black_48: #0000007A;
    --black_60: #00000099;
    --black_72: #000000B8;

    --white_50: #FFFFFF80;
    --white_60: #FFFFFF99;
    --white_70: #FFFFFFB3;
    --white_80: #FFFFFFCC;
    --white_90: #FFFFFFE6;

    /* ---- font families ---- */
    --font-heading: 'Playfair Display', serif;
    --font-body:    'Plus Jakarta Sans', sans-serif;

    /* Colorado's legacy var names are referenced ~14 times further up this
       file. Repointing them here migrates every one of those usages at once. */
    --DunbarMed: 'Playfair Display', serif;
    --MontReg:   'Plus Jakarta Sans', sans-serif;
    --MontB:     'Plus Jakarta Sans', sans-serif;
}

/* The two places Colorado hardcodes a family instead of using a var. */
body .site-header .top-widget p.phone span.icon-btn-text { font-family: var(--font-body) !important; }
body #content .accordion div.vc_tta-panel-heading        { font-family: var(--font-body) !important; }

/* ------------------------------------------------------------------
   TYPE UTILITIES
   README section 8 styles that have no theme-options field.
   ------------------------------------------------------------------ */

/* -- heading variants -- */
body #content .h2-larger {
    font-family: var(--font-heading) !important;
    font-size: 64px !important;
    font-weight: 500 !important;
    line-height: 72px !important;
}
body #content .h3-smaller {
    font-family: var(--font-heading) !important;
    font-size: 26px !important;
    font-weight: 500 !important;
    line-height: 32px !important;
}
body #content .h3-larger {
    font-family: var(--font-heading) !important;
    font-size: 36px !important;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: 50px !important;
}

/* -- eyebrows -- */
body #content .eyebrow,
body #content .eyebrow-label,
body #content .eyebrow-larger {
    display: block;
    font-family: var(--font-body) !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}
body #content .eyebrow        { font-size: 13px !important; line-height: normal !important; }
body #content .eyebrow-label  { font-size: 13px !important; line-height: 18px !important; }
body #content .eyebrow-larger { font-size: 16px !important; line-height: 18px !important; }

/* -- body variants (default p is 17/28 from the options page) -- */
body #content .p-bold          { font-weight: 700 !important; }
body #content .p-italic        { font-style: italic !important; }
body #content .p-small         { font-size: 15px !important; line-height: 24px !important; }
body #content .p-smallest      { font-size: 12px !important; line-height: 18px !important; }
body #content .p-large         { font-size: 20px !important; line-height: 32px !important; }
body #content .p-larger        { font-size: 22px !important; line-height: 32px !important; }
body #content .p-larger-italic { font-size: 20px !important; line-height: 32px !important; font-style: italic !important; }
body #content .p-tt-caps {
    font-size: 17px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    line-height: 28px !important;
    text-transform: uppercase !important;
}

/* -- UI -- */
body #content .field-label {
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}
body .footer-heading {
    font-family: var(--font-heading) !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 40px !important;
}
body .footer-heading-small {
    font-family: var(--font-heading) !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: normal !important;
}

/* ------------------------------------------------------------------
   TRUE PARALLAX
   The build requires a real parallax effect, NOT background-attachment:
   fixed. Colorado ships exactly that, in style.css line 378:
       @media (min-width:979px){ .add-parallax { background-attachment: fixed !important } }
   style.css is enqueued by Child Theme Configurator and loads AFTER
   custom.css, so beating it needs both higher specificity and !important.
   Motion itself is driven by JS in the footer script-injection field,
   which sets background-position-y.
   ------------------------------------------------------------------ */

.bakery section.add-parallax,
.bakery .wpb_row.add-parallax,
.bakery section.fullwidth-plax {
    background-attachment: scroll !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Velora - parallax image layer (works with velora-parallax.js) */
.bakery .has-plax-layer {
    position: relative;
    overflow: hidden;
    background-attachment: scroll !important;
}
.bakery .has-plax-layer > .plax-layer {
    position: absolute;
    top: -30%; bottom: -30%;
    left: -40px; right: -40px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 0;
    pointer-events: none;
    will-change: transform, filter;
}
.bakery .has-plax-layer > *:not(.plax-layer) {
    position: relative;
    z-index: 1;
}

/* Respect the user's motion preference - fall back to a static cover image. */
@media (prefers-reduced-motion: reduce) {
    .bakery section.add-parallax,
    .bakery .wpb_row.add-parallax,
    .bakery section.fullwidth-plax {
        background-position: center center !important;
    }
}

/* Decorative image-only band (component-library pattern, not in Colorado). */
.bakery section.fullwidth-plax { padding: 0 !important; }
/* ------------------------------------------------------------------
   RESPONSIVE TYPE SCALE
   Derived from comps/Velora - Homepage Mobile (390px).png.

   Why this block is long: README section 8 defines ONLY the >1440px desktop
   sizes, while Colorado's custom.css further up this file defines its own
   step-down across 1440 / 1280 / 1024 / 979 / 768 / 480 using a mix of
   selector specificities (`body h2`, `body:not(.home) h1`,
   `body:not(.home).default-header h1`, `body section#HomeHero .home-banner h1`,
   `body #content h3`). Each of those outranks a plain `body hN`, so every one
   has to be mirrored or the scale silently loses at some viewport.

   DELIBERATELY NO !important. This block sits later in custom.css than
   Colorado's rules, so mirrored selectors win on source order, while
   Colorado's higher-specificity COMPONENT sizes survive untouched:
   .bottom-cta h2, .promo-row h2, .feat-post-title, .gform_wrapper h2,
   footer .widget h2, #legal-page h2. Those are per-component decisions for
   the page builds, not global type. Using !important here would flatten all
   of them.

   Measured from the comp - baseline-to-baseline deltas, unambiguous:
     body  line-height 24px   (identical across 3 separate sections)
     h2    line-height 36px   (50/50 philosophy section)
     h1    line-height 46px   (hero; consecutive deltas of 47 and 45)
   Font sizes carry +/-2px uncertainty - glyph metrics measured off a
   flattened PNG. body 15/24 is corroborated: it matches README's own
   defined "body/p small" style exactly.
   h3/h4/h5 and the 979px band are INTERPOLATED from the desktop ratios,
   not measured - no comp exists at those widths. Revisit if Figma lands.
   ------------------------------------------------------------------ */

/* ---- max-width: 1440px  :  small desktop ---- */
@media (max-width: 1440px) {
    body h1,
    body:not(.home) h1,
    body:not(.home).default-header h1,
    body .home-banner h1,
    body section#HomeHero .home-banner h1 { font-size: 56px; line-height: 64px; }

    body h2 { font-size: 40px; line-height: 48px; }

    body h3,
    body #content h3 { font-size: 30px; line-height: 38px; }

    body h4 { font-size: 24px; line-height: 32px; }
    body h5 { font-size: 20px; line-height: 30px; }

    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        font-size: 17px;
        line-height: 28px;
    }
}

/* ---- max-width: 1024px  :  tablet ---- */
@media (max-width: 1024px) {
    body h1,
    body:not(.home) h1,
    body:not(.home).default-header h1,
    body .home-banner h1,
    body section#HomeHero .home-banner h1 { font-size: 48px; line-height: 56px; }

    body h2 { font-size: 36px; line-height: 44px; }

    body h3,
    body #content h3 { font-size: 28px; line-height: 36px; }

    body h4 { font-size: 22px; line-height: 30px; }
    body h5 { font-size: 19px; line-height: 28px; }

    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        font-size: 16px;
        line-height: 26px;
    }
}

/* ---- max-width: 979px  :  tablet portrait ---- */
@media (max-width: 979px) {
    body h1,
    body:not(.home) h1,
    body:not(.home).default-header h1,
    body .home-banner h1,
    body section#HomeHero .home-banner h1 { font-size: 44px; line-height: 52px; }

    body h2 { font-size: 34px; line-height: 42px; }

    body h3,
    body #content h3 { font-size: 26px; line-height: 34px; }

    body h4 { font-size: 21px; line-height: 29px; }
    body h5 { font-size: 18px; line-height: 27px; }

    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        font-size: 16px;
        line-height: 26px;
    }
}

/* ---- max-width: 480px  :  mobile - measured from the 390px comp ---- */
@media (max-width: 480px) {
    body h1,
    body:not(.home) h1,
    body:not(.home).default-header h1,
    body .home-banner h1,
    body section#HomeHero .home-banner h1 { font-size: 38px; line-height: 46px; }

    body h2 { font-size: 30px; line-height: 36px; }

    body h3,
    body #content h3 { font-size: 24px; line-height: 32px; }

    body h4 { font-size: 20px; line-height: 28px; }
    body h5 { font-size: 18px; line-height: 26px; }

    body,
    button,
    body p,
    body li,
    body span,
    form label,
    a.btn-bt,
    span.vc_tta-title-text,
    .gform_footer input[type="submit"],
    .featured-posts-row p.feat-post-content {
        font-size: 15px;
        line-height: 24px;
    }
}

/* === Page: global-header-footer === 2026-10-08 === */
/* ------------------------------------------------------------------
   HEADER
   Comp: logo left, nav right, outlined INQUIRE button. No top bar.
   ------------------------------------------------------------------ */

/* The theme always prints .top-widget even when both widget areas are
   empty, leaving a blank bar. The comp has no top bar at all. */
.bakery .top-widget,
body .site-header .top-widget { display: none !important; }

.bakery .site-header,
body .site-header { background: var(--light1); }

body .site-header .top-header { padding: 18px 0; }

/* ---- NAVIGATION ----
   Set in THEME OPTIONS where the theme actually supports it:
     Fonts tab  -> navigation font-size 15 / line-height 20 / tracking 1.5 / uppercase
     Header tab -> Sub Nav > Dropdown > Width = 260px
   What is NOT settable there (verified by probing: these fields emit no CSS
   for the `left-right-header` layout) and so lives here:
     - top-level + submenu link COLOURS
     - submenu padding / shadow / nowrap
   `menu_items_group_*` and `subnav_group_*` colour+font fields were tested and
   produce zero output on this layout; they have been cleared so they don't
   mislead. Only `subnav_dropdown_width` works. */

/* Top level ONLY - the `> li >` scoping matters: an unscoped rule with
   !important also hits .sub-menu links and beat Colorado's
   `.sub-menu a:link { color: light1 }`, giving dark1 text on the dark1 panel. */
/* font-weight has NO theme option (Fonts tab has no nav_font_weight field, and
   menu_items_font_weight emits nothing), so it has to be set here. */
body #header nav.primary-navigation ul.menu-wrapper > li > a,
body #header nav ul#top-menu:not(.mobile-menu) > li > a,
body #header nav div#top-menu > ul > li > a {
    color: var(--dark1) !important;
    font-weight: 700 !important;
}
body #header nav.primary-navigation ul.menu-wrapper > li > a:hover,
body #header nav ul#top-menu:not(.mobile-menu) > li > a:hover { color: var(--accent1) !important; }

/* Dropdown panel. Width comes from the theme option (260px) - deliberately no
   min-width here so that option stays the single lever. Long items (e.g.
   "Hardscaping & Architectural Structure") WRAP inside the panel rather than
   overflowing it, so the width option stays meaningful. */
body #header nav.primary-navigation ul.sub-menu {
    background: var(--dark1);
    box-shadow: 0 14px 34px var(--black_24);
    padding: 8px 0 !important;
}
body #header nav.primary-navigation ul.sub-menu li { padding: 0 !important; }
body #header nav.primary-navigation ul.sub-menu li a,
body #header nav.primary-navigation ul.sub-menu li a:link,
body #header nav.primary-navigation ul.sub-menu li a:visited {
    color: var(--light1) !important;
    display: block;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    line-height: 20px !important;
    padding: 11px 26px !important;
}
body #header nav.primary-navigation ul.sub-menu li a:hover {
    background: var(--accent1);
    color: var(--white) !important;
}
/* keep the sub-menu weight lighter than the top level so hierarchy reads */
body #header nav.primary-navigation ul.sub-menu li a { font-weight: 600 !important; }


/* ---- MOBILE MENU (<= 979px) ----
   The panel background is dark1, and `ul#top-menu.mobile-menu` matches the
   desktop `ul#top-menu` selector above - so the dark1 link colour was being
   applied to dark1, making the top-level items unreadable. Hence the
   `:not(.mobile-menu)` guard above plus these explicit rules.
   All the `options_mobile_menu_group_*` font/colour fields were probed and
   emit no CSS, so this cannot be done in theme options. */
body #header ul#top-menu.mobile-menu { background: var(--dark1); }

body #header ul#top-menu.mobile-menu > li > a {
    color: var(--light1) !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}
body #header ul#top-menu.mobile-menu > li > a:hover { color: var(--accent2) !important; }

/* sub-items were inheriting weight 300 - too thin to read on the dark panel */
body #header ul#top-menu.mobile-menu ul.sub-menu > li > a {
    color: var(--light1) !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
}
body #header ul#top-menu.mobile-menu ul.sub-menu > li > a:hover { color: var(--accent2) !important; }

/* separators between top-level items */
body #header ul#top-menu.mobile-menu > li { border-bottom: 1px solid var(--white_50); }
body #header ul#top-menu.mobile-menu > li:last-child { border-bottom: 0; }

/* ---- BUTTONS (global) ----
   Eric 2026-10-08: thicker weight, all caps, NO letter spacing.
   Overrides README §8's UI/btn-text (which specifies 600 weight + 1px tracking).
   font-size is set here, NOT via theme options: Colorado hardcodes
   `font-size: 21px` for .btn-bt in custom.css, so the
   def_btn_font_size / alt_btn_font_size options have no effect. 15px per README §8. */
body #content a.btn-bt,
body #content a.btn-bt.default,
body #content a.btn-bt.alternate,
body .header-button a.btn-bt,
body .gform_footer input[type="submit"] {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 20px !important;
    text-transform: uppercase !important;
}

/* INQUIRE button - outlined, dark text (comp) */
body .header-button a.btn-bt {
    background: transparent !important;
    border: 1px solid var(--dark1) !important;
    color: var(--dark1) !important;
    font-size: 15px !important;
    padding: 14px 34px !important;
}
body .header-button a.btn-bt:hover {
    background: var(--dark1) !important;
    border-color: var(--dark1) !important;
    color: var(--light1) !important;
}

/* ------------------------------------------------------------------
   FOOTER
   Comp: 4 columns on light2 - logo | Explore | Contact Us | Hours.
   Column headings are Playfair with a short rule beneath.
   ------------------------------------------------------------------ */

/* Colorado sets `footer#footer { background: var(--dark2) }` - an ID selector,
   so `body .site-footer` loses. Matching its specificity and relying on source
   order (this block is later in custom.css). Same for its text colours, which
   force var(--light1) on every child. */
footer#footer { background: var(--light2); }
footer#footer .row { padding: 72px 0 56px; }
footer#footer h2,
footer#footer p,
footer#footer a,
footer#footer li,
footer#footer span { color: var(--dark2); }

body .site-footer .footer-logo { height: auto; max-width: 180px; width: 100%; }

/* Column headings + the rule under them */
footer#footer h2.widget-title,
body .site-footer h2.widget-title {
    border-bottom: 1px solid var(--accent2);
    color: var(--dark1) !important;
    font-family: var(--font-heading) !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 40px !important;
    margin: 0 0 26px;
    padding-bottom: 10px;
    text-transform: none !important;
    max-width: 180px;
}

body .site-footer,
body .site-footer p,
body .site-footer li,
body .site-footer li a {
    color: var(--dark2) !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    line-height: 26px !important;
}
body #content .site-footer a,
body .site-footer a:not(.btn-bt) { color: var(--dark2) !important; text-decoration: none !important; }
body .site-footer a:not(.btn-bt):hover { color: var(--accent1) !important; }

/* Explore list - plain stacked links, no bullets or borders */
body .site-footer .menu,
body .site-footer ul.menu { list-style: none; margin: 0; padding: 0; }
body .site-footer ul.menu li { border: none !important; margin: 0 0 4px; padding: 0; }

body .site-footer p { margin: 0 0 6px; }
body .site-footer .footer-phone { margin-top: 18px; }

/* ------------------------------------------------------------------
   COPYRIGHT BAR
   ------------------------------------------------------------------ */

.bakery .row.copyright,
body .row.copyright { background: var(--light2); padding: 0 !important; }
body .row.copyright p#copyright-p,
body .row.copyright p {
    color: var(--dark2) !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 22px !important;
    margin: 0;
}
body #content .row.copyright a,
body .row.copyright a { color: var(--dark2) !important; text-decoration: none !important; }
body .row.copyright a:hover { color: var(--accent1) !important; }

/* Social icons - right aligned, accent1 */
body .row.copyright ul.social { display: flex; gap: 0; justify-content: flex-end; list-style: none; margin: 0; padding: 0; }
body .row.copyright ul.social li { border: none !important; margin: 0; padding: 0; }
body .row.copyright ul.social li a { color: var(--accent1) !important; font-size: 20px !important; }
body .row.copyright ul.social li a:hover { color: var(--dark1) !important; }

@media (max-width: 979px) {
    body .site-footer .row { padding: 48px 0 32px; }
    footer#footer h2.widget-title,
body .site-footer h2.widget-title { max-width: none; }
    /* icons centred on mobile (Eric 2026-10-08); copyright text stays left */
    body .row.copyright ul.social { justify-content: center; margin-top: 18px; }
    body .row.copyright { padding: 0 0 18px !important; text-align: left; }
}

/* === Page: home === 2026-10-08 === */
/* ==================================================================
   PAGE: Home
   Built against comps/Velora - Homepage HiFi Desktop.png.
   Uses Colorado's own fifty-fifty + inline-image classes (Colorado has
   no inline-fifty/fifty-section component), so existing template CSS
   does the layout work. Net-new components: .gallery-strip,
   .approach-row, .eyebrow/.callout-num/.learn-more treatments.
   Section backgrounds measured off the comp:
     hero img | light2 | plax | light1 (services+gallery) | dark1 |
     light2 | plax | light1 | cta img | footer light2
   ================================================================== */

/* ---------------- HERO (video row; poster image until the YouTube URL lands) */
.bakery .home-hero {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-hero-video-placeholder.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .home-hero { min-height: 816px; }
}
.bakery .home-hero .wpb_row.home-banner { width: 100%; }
body #content .home-hero .hero-col { text-align: center !important; }
body #content .home-hero h1 {
    color: var(--white) !important;
    text-align: center !important;
    /* `auto` side margins are REQUIRED, not cosmetic. Colorado constrains this
       h1 with `body .home-banner h1 { max-width: 450px; margin: 0 auto }` at
       <=1024px and tightens it to `max-width: 300px` at <=480px. This selector
       is more specific, so `margin: 0 0 10px` here silently replaced the auto
       centering and left a 300px box pinned to the left of a 359px column -
       text centred inside it, but the whole block 29px off-centre. */
    margin: 0 auto 10px;
}
/* The hero lockup is white in the comp; no white logo asset was supplied,
   so the dark logo is knocked out to pure white. Replace with a real
   white asset when one exists. */
.bakery .home-hero .hero-logo { line-height: 0 !important; margin: 0 0 6px; }
.bakery .home-hero .hero-logo img {
    filter: brightness(0) invert(1);
    height: auto;
    max-width: 330px;
    width: 100%;
}
body #content .home-hero .hero-sub {
    color: var(--white) !important;
    font-size: 20px !important;
    line-height: 32px !important;
    margin: 0 !important;
}

/* ---------------- DARK OVERLAY on the hero + bottom CTA images
   `style.css` already sets `.bakery .wpb_row, .bakery .vc_row {
   background-blend-mode: overlay }`, so a background-color on those blends with
   the photo instead of hiding behind it. That is why a plain background-color
   works here and would not on a normal element.
   CAVEAT: that rule covers ROWS only. The hero is a `<section>`
   (`.vc_section.home-hero`), which computes `background-blend-mode: normal`, so
   the blend mode has to be declared for it explicitly or the colour would be
   painted behind the `cover` image and never seen. */
.bakery .home-hero {
    background-blend-mode: overlay;
    background-color: rgba(0, 0, 0, 0.3);
}
/* .home-bottom-cta is a row, so it already inherits the overlay blend mode. */
.bakery .wpb_row.home-bottom-cta { background-color: rgba(0, 0, 0, 0.3); }

/* ---------------- SHARED: eyebrow + inline images in fifty-fifty rows */
body #content .eyebrow { color: var(--accent1) !important; margin: 0 0 14px !important; }
body #content .dark1 .eyebrow { color: var(--accent2) !important; }

.bakery .fifty-fifty.inline-image .image-col img {
    border-radius: 16px;
    display: block;
    height: auto;
    width: 100%;
}
.bakery .fifty-fifty.inline-image .image-col p { line-height: 0 !important; }

/* ---------------- PHILOSOPHY (light2) */
.bakery .wpb_row.philosophy-row { padding: 96px 0 !important; }

/* ---------------- PARALLAX BANDS (true parallax handled globally) */
.bakery section.fullwidth-plax { height: 780px; }
.bakery section.home-plax-1 { background-image: url('/wp-content/uploads/2026/10/velora-landscape-parallax-band-01.jpg'); }
.bakery section.home-plax-2 { background-image: url('/wp-content/uploads/2026/10/velora-landscape-parallax-band-02.jpg'); }
@media (max-width: 979px) { .bakery section.fullwidth-plax { height: 420px; } }

/* ---------------- SERVICES + GALLERY STRIP (one light1 section) */
/* Eric 2026-10-08: gallery strip sits flush under the services row, and the
   section carries no bottom padding (so the strip meets the next section).
   Supplied as layered overrides; collapsed here to the effective values. */
.bakery section.services-gallery-section { padding: 96px 0 0 !important; }
.bakery .wpb_row.services-row { padding: 10px !important; }
body #content .services-row h3 { margin: 0 0 8px !important; }
body #content .services-row p { margin: 0 0 10px !important; }
body #content .services-row .learn-more a {
/*     border-bottom: 1px solid var(--accent1); */
    color: var(--accent1) !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    padding-bottom: 2px;
    text-decoration: none !important;
}
body #content .services-row .learn-more { margin: 0 0 26px !important; }
body #content .services-row .learn-more a:hover { border-bottom-color: var(--dark1); color: var(--dark1) !important; }

/* ---------------- GALLERY STRIP (net-new: 4-up rounded tiles) */
.bakery .wpb_row.gallery-strip { margin: 0 -8px; padding-top: 0; }
.bakery .gallery-strip .gallery-strip-col { padding: 0 8px !important; }
.bakery .gallery-strip .gallery-strip-col p { line-height: 0 !important; }
.bakery .gallery-strip .gallery-strip-col img {
    border-radius: 5px;
    display: block;
    height: 350px;
    object-fit: cover;
    width: 100%;
}

/* ---------------- PARTNERSHIPS (dark1) */
.bakery .wpb_row.partnerships-row { padding: 96px 0 !important; }
body #content .partnerships-row h2,
body #content .partnerships-row p { color: var(--white) !important; }
body #content .partnerships-row a.btn-bt.alternate {
    background: transparent !important;
    border: 1px solid var(--accent2) !important;
    color: var(--white) !important;
}
body #content .partnerships-row a.btn-bt.alternate:hover {
    background: var(--accent2) !important;
    color: var(--dark1) !important;
}

/* ---------------- THE APPROACH (light2, 4x callout) */
.bakery section.approach-section { padding: 96px 0 !important; }
.bakery .wpb_row.approach-heading-col,
.bakery .wpb_row.approach-heading-row { max-width: 980px; margin: 0 auto; }
body #content .approach-heading-row h2 { margin: 0 0 22px !important; }
body #content .approach-heading-row p:not(.eyebrow) { margin: 0 auto !important; max-width: 640px; }
.bakery .wpb_row.approach-row { margin: 44px -20px 0; }
.bakery .approach-row .approach-col { padding: 0 20px !important; }
body #content .approach-row .callout-num {
    color: var(--accent2) !important;
    font-family: var(--font-heading) !important;
    font-size: 26px !important;
    line-height: 32px !important;
    margin: 0 0 10px !important;
}
body #content .approach-row h3 { margin: 0 0 10px !important; }
body #content .approach-row p { margin: 0 !important; }

/* ---------------- RECENT WORK (light1) */
.bakery section.recent-work-section { padding: 90px 0 !important; }
.bakery .wpb_row.recent-work-heading-row { margin-bottom: 30px; }

/* ---------------- BOTTOM CTA (row-level class, Colorado pattern) */
.bakery .wpb_row.home-bottom-cta {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-home-cta-background.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .wpb_row.home-bottom-cta { min-height: 672px; }
}
body #content .home-bottom-cta h2 { color: var(--white) !important; margin-bottom: 14px !important; }
body #content .home-bottom-cta p { color: var(--white) !important; }
body #content .home-bottom-cta .bottom-cta-col > .vc_column-inner { margin: 0 auto; max-width: 640px; }
body #content .home-bottom-cta a.btn-bt.default {
    background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    color: var(--dark1) !important;
    margin-top: 12px;
}
body #content .home-bottom-cta a.btn-bt.default:hover {
    background: transparent !important;
    color: var(--white) !important;
}
body #content .home-bottom-cta .cta-meta {
    color: var(--accent2) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;
    margin-top: 22px !important;
    text-transform: uppercase !important;
}
body #content .home-bottom-cta .cta-meta a { color: var(--accent2) !important; text-decoration: none !important; }

/* ==================================================================
   MOBILE / TABLET  (<= 979px)
   Tuned against comps/Velora - Homepage Mobile (390px).png by comparing
   measured section heights. Comp vs first build at 390px:
     hero 620 vs 340 (short) · plax 340 vs 420 (tall)
     services+gallery 1570 vs 2124 (tall) · partnerships 830 vs 920
     recent work 524 vs 1084 (tall) · bottom cta 560 vs 357 (short)
   ================================================================== */
@media (max-width: 979px) {

    /* -- section rhythm -- */
    .bakery .wpb_row.philosophy-row { padding: 48px 0 !important; }
    .bakery section.services-gallery-section { padding: 48px 0 0 !important; }
    .bakery section.approach-section,
    .bakery section.recent-work-section { padding: 48px 0 !important; }
    .bakery .wpb_row.services-row { padding: 10px !important; }

    /* -- HERO: comp band is 620px, not content-height -- */
    .bakery .home-hero { min-height: 620px; }
    .bakery .home-hero .wpb_row.home-banner { padding: 0 !important; }

    /* -- PARALLAX bands: comp 340px -- */
    .bakery section.fullwidth-plax { height: 340px; }

    /* -- GALLERY STRIP + RECENT WORK: SLICK CAROUSEL, mobile only --
       The comp shows one image at a time with pagination dots. Slick is
       initialised on `.gallery-strip > .container` (the element whose children
       are the columns) by the footer script, and unslicked above 979px.
       Slick sets inline widths on slides, so the columns' desktop 25% width
       has to be neutralised inside a slide. */
    .bakery .wpb_row.gallery-strip { margin: 0; }

    /* CRITICAL: slick adds `.slick-slide` to the COLUMNS THEMSELVES, so
       `.gallery-strip-col` and `.slick-slide` are the same element. Never set
       `width` on the column here - slick writes an inline per-slide width, and
       a `width: 100% !important` override resolves against the whole track
       (blowing each slide up to track width, e.g. 3231px). Let slick own width. */
    .bakery .gallery-strip .gallery-strip-col { padding: 0 !important; }
    .bakery .gallery-strip .gallery-strip-col img { height: 300px; }

    /* 2-up gap: positive margin on the slide, equal negative margin on the
       list so the outer tiles still align to the container edges. */
    .bakery .gallery-strip .slick-list { margin: 0 -8px; }
    .bakery .gallery-strip .slick-slide { margin: 0 8px; }

    /* Pre-init fallback: until slick runs, lay out the first two tiles side by
       side so there is no jump when it initialises. Scoped to
       :not(.slick-initialized) so it can never fight slick's inline widths. */
    .bakery .gallery-strip > .container:not(.slick-initialized) { display: flex; gap: 16px; }
    .bakery .gallery-strip > .container:not(.slick-initialized) .gallery-strip-col {
        flex: 0 0 calc(50% - 8px);
        max-width: calc(50% - 8px);
        width: calc(50% - 8px);
    }
    .bakery .gallery-strip > .container:not(.slick-initialized) .gallery-strip-col:nth-child(n+3) { display: none; }

    .bakery .gallery-strip .slick-list { overflow: hidden; }
    .bakery .gallery-strip .slick-dots {
        display: flex !important;
        gap: 10px;
        justify-content: center;
        list-style: none;
        margin: 18px 0 0;
        padding: 0;
        position: static;
    }
    .bakery .gallery-strip .slick-dots li { height: 9px; margin: 0; width: 9px; }
    .bakery .gallery-strip .slick-dots li button {
        background: var(--neutral1);
        border: 0;
        border-radius: 50%;
        height: 9px;
        padding: 0;
        text-indent: -9999px;
        width: 9px;
    }
    .bakery .gallery-strip .slick-dots li button:before { display: none; }
    .bakery .gallery-strip .slick-dots li.slick-active button { background: var(--accent1); }

    /* -- PARTNERSHIPS: the comp runs the image FULL-BLEED above the dark panel,
          rather than inset inside it. -- */
    .bakery .wpb_row.partnerships-row { padding: 0 0 48px !important; }
    .bakery .partnerships-row .image-col { margin: 0 calc(-50vw + 50%) 36px; width: 100vw; }
    /* NOTE: no space before .partnerships-row - it IS the .fifty-fifty.inline-image
       element, not a descendant of it, so a descendant selector never matches and
       the base `.bakery .fifty-fifty.inline-image .image-col img` (4 classes) wins. */
    .bakery .fifty-fifty.inline-image.partnerships-row .image-col img {
        border-radius: 0;
        display: block;
        height: 300px;
        object-fit: cover;
        width: 100%;
    }

    /* -- APPROACH -- */
    .bakery .wpb_row.approach-row { margin: 32px -12px 0; }
    .bakery .approach-row .approach-col { padding: 0 12px 28px !important; }

    /* -- BOTTOM CTA: comp band is 560px -- */
    .bakery .wpb_row.home-bottom-cta { min-height: 560px; padding: 60px 0 !important; }
}

@media (max-width: 480px) {
    /* single tile: no gap, and the tile is full container width */
    .bakery .gallery-strip .slick-list { margin: 0; }
    .bakery .gallery-strip .slick-slide { margin: 0; }
    .bakery .gallery-strip .gallery-strip-col img { height: 300px; }
    .bakery .gallery-strip > .container:not(.slick-initialized) { gap: 0; }
    .bakery .gallery-strip > .container:not(.slick-initialized) .gallery-strip-col {
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
    }
    .bakery .gallery-strip > .container:not(.slick-initialized) .gallery-strip-col:nth-child(n+2) { display: none; }
    .bakery .home-hero .hero-logo img { max-width: 215px; }
    body #content .home-hero .hero-sub { font-size: 15px !important; line-height: 24px !important; }
}

/* === Page: global-subpage === 2026-10-09 === */
/* ==================================================================
   SHARED SUBPAGE COMPONENTS
   Built for Botanical Curation but deliberately generic: Hardscaping,
   Lighting, Collaborations, About and the Case Study all reuse these.
   Per-page CSS should only ever supply BACKGROUND IMAGES.

   Already provided by Colorado - do NOT redeclare:
     .blurb-row hr.line (2px, 24px auto, max 500px) · .blurb-row h2 margin
     .fifty-fifty hr.line (24px 0) · .fifty-fifty h2/h3 margin-bottom 24px
     .fifty-fifty.inline-image column gutters (2.5%)
     .wpb_row.reverse .container (column-reverse, <=979px only)
     .wpb_column.vertical-align (flex centre, >=980px only)
   ================================================================== */

/* ---------------- DARK OVERLAY: every hero + bottom CTA ------------ */
/* SINGLE SOURCE OF TRUTH - rgba(0,0,0,0.3) on every image-backed hero and
   bottom CTA, matching the home page. Do NOT re-declare the colour on an
   individual component or page block; a page block loads later and will win.

   Mechanism: `style.css` sets `.bakery .wpb_row, .bakery .vc_row {
   background-blend-mode: overlay }`, so ROWS blend the colour into the photo
   automatically. SECTIONS compute `normal`, so they must declare the blend
   explicitly or the colour paints behind the `cover` image and is never seen.

   Safe to apply to `.bottom-cta` wholesale: every bottom CTA in this build is
   image-backed (they all carry `add-parallax`). */
.bakery .bottom-cta,
.bakery .cta-middle-quote,
.bakery .home-hero,
.bakery .subpage-hero { background-color: rgba(0, 0, 0, 0.3); }
.bakery section.cta-middle-quote,
.bakery section.home-hero,
.bakery section.subpage-hero { background-blend-mode: overlay; }

/* ---------------- SUB PAGE HERO (h1 + sub-headline) --------------- */
.bakery .subpage-hero {
    /* flex-centre the row so the h1 + sub sit in the middle of the band
       rather than hanging off the top padding */
    align-items: center;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
}
@media (min-width: 980px) {
    .bakery .subpage-hero { min-height: 596px; }
    /* "sub page hero short" - used by the Case Study (comp band = 400px) */
    .bakery .subpage-hero.subpage-hero-short { min-height: 400px; }
}
.bakery .subpage-hero .wpb_row.subpage-hero-row { width: 100%; }
body #content .subpage-hero h1 {
    color: var(--white) !important;
    margin: 0 auto 10px;
    text-align: center !important;
}
body #content .subpage-hero .hero-sub {
    color: var(--white) !important;
    font-size: 20px !important;
    line-height: 32px !important;
    margin: 0 !important;
    text-align: center !important;
}

/* ---------------- SPOTLIGHT ROWS (33/66 and 66/33) ---------------- */
.bakery section.spotlight-section { padding: 60px 0 !important; }
.bakery .wpb_row.spotlight-row:not(:last-child) { margin-bottom: 56px; }
/* NOTE on specificity: the Home block declares
   `.bakery .fifty-fifty.inline-image .image-col img { height:auto; width:100% }`
   which is FOUR classes. A 3-class selector here loses to it, so these
   selectors attach the row class directly to `.fifty-fifty.inline-image`
   (no space - it is the SAME element) to reach five classes. */
.bakery .fifty-fifty.inline-image.spotlight-row .image-col img,
.bakery .fifty-fifty.inline-image.concepts-row .image-col img {
    border-radius: 16px;
    display: block;
    height: auto;
    width: 100%;
}
/* the WPBakery text wrapper shrink-wraps to the image's natural width
   unless forced full width */
.bakery .spotlight-row .image-col .wpb_wrapper,
.bakery .spotlight-row .image-col .wpb_text_column,
.bakery .concepts-row .image-col .wpb_wrapper,
.bakery .concepts-row .image-col .wpb_text_column { width: 100%; }
.bakery .spotlight-row .image-col p,
.bakery .concepts-row .image-col p { line-height: 0 !important; }
body #content .spotlight-row h3 { margin-bottom: 12px !important; }
body #content .spotlight-row p { margin: 0 !important; }

/* ---------------- CURATED CONCEPTS (66/33 list) ------------------- */
.bakery .wpb_row.concepts-row { padding: 75px 0 !important; }
body #content .concepts-row h3 { margin-bottom: 10px !important; }
body #content .concepts-row p { margin: 0 !important; }
/* source is 480x690 portrait; the comp crops it closer to 4:5 */
.bakery .fifty-fifty.inline-image.concepts-row .image-col img { height: 540px; object-fit: cover; }

/* ---------------- DESIGN INSIGHTS (2-up callout) ------------------ */
.bakery section.insights-section { padding: 126px 0 !important; }
.bakery .wpb_row.insights-row { margin: 0 -24px; }
.bakery .insights-row .insights-col { padding: 0 24px !important; }
body #content .insights-row .callout-num {
    color: var(--accent2) !important;
    font-family: var(--font-heading) !important;
    font-size: 26px !important;
    line-height: 32px !important;
    margin: 0 0 8px !important;
}
body #content .insights-row h3 { margin: 0 0 10px !important; }
body #content .insights-row p { margin: 0 !important; }

/* ---------------- CTA BOTTOM ALTERNATE ---------------------------- */
.bakery .wpb_row.cta-bottom-alt {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-inquire-cta-background-alternate.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .wpb_row.cta-bottom-alt { min-height: 672px; }
}
body #content .cta-bottom-alt h2 { color: var(--white) !important; margin-bottom: 26px !important; }
body #content .cta-bottom-alt .bottom-cta-col > .vc_column-inner { margin: 0 auto; max-width: 820px; }
body #content .cta-bottom-alt a.btn-bt.default {
    background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    color: var(--dark1) !important;
}
body #content .cta-bottom-alt a.btn-bt.default:hover {
    background: transparent !important;
    color: var(--white) !important;
}

/* ---------------- PHILOSOPHY BLURB -------------------------------- */
.bakery .wpb_row.philosophy-blurb { padding: 92px 0 !important; }

/* ---------------- accent2 rules ----------------------------------- */
.bakery hr.line.accent2 { border-color: var(--accent2); }

/* ---------------- SECTION EYEBROW --------------------------------- */
/* Small tracked uppercase label above a section heading. Home declares a
   bare `.eyebrow` (colour + margin only); this adds the size/tracking the
   comps show, under a NEW class so Home's existing rows are untouched.
   Left-aligned by default - add inline `style="text-align: center;"` when
   the comp centres it. */
body #content .section-eyebrow {
    color: var(--accent1) !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    line-height: 20px !important;
    margin: 0 0 14px !important;
    text-transform: uppercase !important;
}

/* ---------------- COLLABORATIVE DISCIPLINES ----------------------- */
/* h2 + repeating [centred accent1 label] + [2-up title/body] groups.
   Reused by Capabilities. Comp band measured at 1026px tall. */
.bakery section.disciplines-section { padding: 136px 0 !important; }
body #content .disciplines-section > .wpb_row.section-heading h2 { margin-bottom: 48px !important; }
/* the label is an h4 semantically; the comp sets it small, uppercase, accent1.
   Text is authored in title case - the uppercasing is presentational. */
body #content .discipline-label {
    color: var(--accent1) !important;
    font-family: var(--font-body) !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    line-height: 28px !important;
    margin: 0 0 40px !important;
    text-align: center !important;
    text-transform: uppercase !important;
}
@media (max-width: 480px) {
	body #content .discipline-label {	
		font-size: 20px !important;
    	line-height: 20px !important;
	}
}
.bakery .wpb_row.disciplines-row:not(:last-child) { margin-bottom: 72px; }
body #content .disciplines-row h3 { margin: 0 0 12px !important; }
body #content .disciplines-row p { margin: 0 !important; }
/* .disciplines-row .container {
    max-width: 1100px;
} */
/* .disciplines-row.three-col .container {
    max-width: 1520px;
} */
@media (min-width: 980px) {
	.discipline-col.wpb_column.vc_column_container.vc_col-sm-4 {
    	padding: 0px 20px;
	}
}

/* ---------------- GALLERY GRID MASONRY ---------------------------- */
/* CSS multi-column masonry - no JS, no carousel ID needed. Mixed source
   aspect ratios do the staggering, exactly as the comp shows. */
/* 🧨 Do NOT hang column-count on `.wpb_wrapper` - WPBakery nests TWO of them
   (column > .wpb_wrapper > .wpb_text_column > .wpb_wrapper), so the selector
   matches both and you get multicol INSIDE multicol: 1325 -> 642 -> 45px
   images. Always use a container the markup owns. Each image also gets its
   own .masonry-item wrapper so wpautop has no loose inline run to wrap in a
   single <p> (which would collapse all 8 into one unbreakable column item). */
.bakery .masonry-grid { column-count: 4; column-gap: 40px; }
.bakery .masonry-grid .masonry-item { break-inside: avoid; margin: 0 0 40px; }
.bakery .masonry-grid img { border-radius: 16px; display: block; width: 100%; }
body #content .gallery-masonry-col p { line-height: 0 !important; margin: 0 !important; }

/* ---------------- CTA BOTTOM - NAP LINE --------------------------- */
body #content .cta-nap {
    /* measured off the comp: accent2 #C2A678, not light3 */
    color: var(--accent2) !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    margin: 22px 0 0 !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

/* ---------------- CTA MIDDLE - PULL QUOTE ------------------------- */
/* "cta middle - with quote". Background image comes from the PAGE block. */
.bakery .wpb_row.cta-middle-quote {
    align-items: center;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
}
@media (min-width: 980px) {
    .bakery .wpb_row.cta-middle-quote { min-height: 672px; }
}
body #content .cta-middle-quote .quote-col > .vc_column-inner { margin: 0 auto; max-width: 1160px; }
body #content .cta-middle-quote .quote-label {
    color: var(--light3) !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.18em !important;
    margin: 0 0 6px !important;
    text-align: center !important;
    text-transform: uppercase !important;
}
body #content .cta-middle-quote .quote-title {
    color: var(--white) !important;
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    margin: 0 0 20px !important;
    text-align: center !important;
}
body #content .cta-middle-quote .pull-quote {
    color: var(--white) !important;
    font-family: var(--font-heading) !important;
    font-size: 36px !important;
    font-style: italic !important;
    line-height: 50px !important;
    margin: 0 !important;
    text-align: center !important;
}

/* ---------------- LIL CTA ROW (rows/cta-short-bar) ---------------- */
/* Colorado already supplies `.cta-row` (24px padding, h2 margin-right 28px)
   and the 280x69 button box - which matches the comp exactly. Only the
   alignment and the OUTLINE button treatment are Velora-specific. */
.bakery .wpb_row.cta-row .wpb_wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
}
body #content .cta-row h2 { color: var(--light1) !important; margin: 0 28px 0 0 !important; }
body #content .cta-row a.btn-bt.default {
    background: transparent !important;
    border: 1px solid var(--accent2) !important;
    color: var(--light1) !important;
    flex: 0 0 auto;
}
body #content .cta-row a.btn-bt.default:hover {
    background: var(--accent2) !important;
    color: var(--dark1) !important;
}

/* ---------------- RESPONSIVE -------------------------------------- */
@media (max-width: 979px) {
    .bakery .subpage-hero { min-height: 420px; }
    body #content .subpage-hero .hero-sub { font-size: 16px !important; line-height: 26px !important; }

    .bakery section.spotlight-section { padding: 40px 0 !important; }
    /* the stacked image already carries a 24px margin-top, so the row gap is
       redundant on mobile - Eric, 2026-10-09 */
    .bakery .wpb_row.spotlight-row:not(:last-child) { margin-bottom: 0px; }
    /* `.reverse` flips these to text-first on mobile; add the gap the stacked
       image needs underneath the copy */
    .bakery .spotlight-row .image-col { margin-top: 24px; }
    .bakery .spotlight-row.spotlight-66-33 .image-col { margin-bottom: 0; margin-top: 24px; }

    .bakery .wpb_row.concepts-row { padding: 48px 0 !important; }
    .bakery .wpb_row.philosophy-blurb { padding: 48px 0 !important; }
    .bakery .concepts-row .image-col { margin-top: 28px; }
    .bakery .fifty-fifty.inline-image.concepts-row .image-col img { height: 380px; }

    .bakery section.insights-section { padding: 56px 0 !important; }
    .bakery .wpb_row.insights-row { margin: 0 -12px; }
    .bakery .insights-row .insights-col { padding: 0 12px 28px !important; }

    .bakery .wpb_row.cta-bottom-alt { min-height: 420px; padding: 56px 0 !important; }

    .bakery section.disciplines-section { padding: 56px 0 !important; }
    body #content .disciplines-section > .wpb_row.section-heading h2 { margin-bottom: 32px !important; }
    body #content .discipline-label { margin: 0 0 24px !important; }
    .bakery .wpb_row.disciplines-row:not(:last-child) { margin-bottom: 40px; }

    .bakery .wpb_row.cta-middle-quote { min-height: 420px; padding: 56px 0 !important; }
    body #content .cta-middle-quote .pull-quote { font-size: 22px !important; line-height: 32px !important; }
    body #content .cta-middle-quote .quote-title { font-size: 15px !important; }

    /* the short bar stacks: heading over button, both centred */
    .bakery .wpb_row.cta-row .wpb_wrapper { display: block; text-align: center; }
    body #content .cta-row h2 { margin: 0 0 20px !important; text-align: center !important; }

    .bakery .subpage-hero.subpage-hero-short { min-height: 300px; }
    .bakery .masonry-grid { column-count: 2; column-gap: 16px; }
    .bakery .masonry-grid .masonry-item { margin: 0 0 16px; }
}

/* === Page: botanical-curation === 2026-10-08 === */
/* ==================================================================
   PAGE: Botanical Curation  (/capabilities/botanical-curation/)
   Structure + components come from the shared `global-subpage` block.
   This page block supplies ONLY the two background images, which is the
   intended pattern for the other two service pages as well.
   ================================================================== */

.bakery .subpage-hero.botanical-hero {
    background-image: url('/wp-content/uploads/2026/10/botanical-curation-hero.jpg');
}
.bakery section.botanical-plax {
    background-image: url('/wp-content/uploads/2026/10/botanical-curation-parallax-band.jpg');
}

/* === Page: hardscaping-architectural-structure === 2026-10-08 === */
.bakery .subpage-hero.hardscaping-hero {
    background-image: url('/wp-content/uploads/2026/10/hardscaping-architecture-hero.jpg');
}
.bakery section.hardscaping-plax {
    background-image: url('/wp-content/uploads/2026/10/hardscaping-architecture-parallax-band.jpg');
}

/* === Page: lighting-atmosphere === 2026-10-09 === */
.bakery .subpage-hero.lighting-hero {
    background-image: url('/wp-content/uploads/2026/10/lighting-atmosphere-hero.jpg');
}
.bakery section.lighting-plax {
    background-image: url('/wp-content/uploads/2026/10/lighting-atmosphere-parallax-band.jpg');
}

/* === Page: collaborations === 2026-10-09 === */
.bakery .subpage-hero.collaborations-hero {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-collaborations-hero.jpg');
}
.bakery section.collaborations-plax {
    background-image: url('/wp-content/uploads/2026/10/TerraNova-Landscape-Design.jpg');
}
.bakery .wpb_row.cta-middle-quote.collaborations-quote {
    background-image: url('/wp-content/uploads/2026/10/flowering-landscape-design-insight-background.jpg');
}

/* === Page: sanctuary-case-study === 2026-10-09 === */
.bakery .subpage-hero.casestudy-hero {
    background-image: url('/wp-content/uploads/2026/10/DSC_05422-scaled.jpg');
}
.bakery section.casestudy-plax {
    background-image: url('/wp-content/uploads/2026/10/DSC_03672-scaled.jpg');
}
.bakery .wpb_row.casestudy-outcome {
    background-image: url('/wp-content/uploads/2026/10/siesta-key-sanctuary-the-outcome.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .wpb_row.casestudy-outcome { min-height: 672px; }
}
body #content .casestudy-outcome h2 { color: var(--white) !important; margin-bottom: 20px !important; }
body #content .casestudy-outcome p:not(.cta-nap) { color: var(--white) !important; }
body #content .casestudy-outcome .bottom-cta-col > .vc_column-inner { margin: 0 auto; max-width: 760px; }

/* the two spec rows sit in their own light2 bands */
.bakery section.casestudy-intro-section { padding: 100px 0 !important; }
.bakery section.casestudy-specs-section { padding: 82px 0 !important; }
.bakery section.casestudy-approach-section { padding: 90px 0 !important; }
.bakery .wpb_row.gallery-masonry-row { margin-top: 56px; }

@media (max-width: 979px) {
    .bakery section.casestudy-intro-section,
    .bakery section.casestudy-specs-section,
    .bakery section.casestudy-approach-section { padding: 56px 0 !important; }
    .bakery .wpb_row.gallery-masonry-row { margin-top: 32px; }
    .bakery .wpb_row.casestudy-outcome { min-height: 420px; padding: 56px 0 !important; }
}

/* === Page: capabilities === 2026-10-09 === */
.bakery .subpage-hero.capabilities-hero {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-capabilities-hero.jpg');
}
/* no uploaded asset for this row - sourced from the portfolio set */
.bakery .wpb_row.cta-middle-quote.capabilities-quote {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-sarasota-portfolio-20.jpg');
}

.bakery section.capabilities-cards-section { padding: 96px 0 !important; }
.bakery .wpb_row.capabilities-heading-row { margin-bottom: 44px; }

/* override Colorado's card chrome.
   Colorado ships `.service-area-text { background:#F0EFE7; margin-top:-10px;
   padding:20px; border-radius:0 0 36px 36px }` - i.e. this row IS a card.
   Keep the card, but put it on the Velora palette at the 16px radius. */
.bakery .service-row.capabilities-cards-row img {
    border-radius: 16px 16px 0 0;
    box-shadow: none;
    display: block;
    height: auto;
    width: 100%;
}
.bakery .capabilities-cards-row .service-card-col .wpb_text_column:first-child p { line-height: 0 !important; margin: 0 !important; }
.bakery .capabilities-cards-row .service-area-text {
    background-color: var(--light2);
    border-radius: 0 0 16px 16px;
    margin-top: 0;
    padding: 26px 24px 28px;
}
body #content .capabilities-cards-row h3.service-link { margin: 0 0 4px !important; }
/* covers title, learn-more AND the image-wrapping link */
body #content .capabilities-cards-row a { text-decoration: none !important; }
body #content .capabilities-cards-row h3.service-link a { color: var(--dark1) !important; }
body #content .capabilities-cards-row h3.service-link a:hover { color: var(--accent1) !important; }
body #content .capabilities-cards-row p { margin: 0 !important; }
body #content .capabilities-cards-row .learn-more { margin: 14px 0 0 !important; }
body #content .capabilities-cards-row .learn-more a {
    color: var(--accent1) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}
body #content .capabilities-cards-row .learn-more a:hover { color: var(--dark1) !important; }

/* ---- equal-height cards on desktop (Eric, 2026-10-09) --------------
   The three cards must bottom-align regardless of how many lines the
   title or body takes. Flex the row's container, let each column be a
   flex child, and let the text panel grow to fill. Desktop only - the
   columns stack full-width below 980px. */
@media (min-width: 980px) {
    .bakery .wpb_row.capabilities-cards-row .container {
        align-items: stretch;
        display: flex;
        justify-content: space-between;
    }
    .bakery .capabilities-cards-row .service-card-col { display: flex; float: none; }
    .bakery .capabilities-cards-row .service-card-col > .vc_column-inner {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .bakery .capabilities-cards-row .service-card-col > .vc_column-inner > .wpb_wrapper {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
    }
    /* the panel absorbs the slack so all three end level */
    .bakery .capabilities-cards-row .service-area-text { flex: 1 1 auto; }
}

@media (max-width: 979px) {
    .bakery section.capabilities-cards-section { padding: 56px 0 !important; }
    .bakery .wpb_row.capabilities-heading-row { margin-bottom: 28px; }
    .bakery .service-row.thirds.capabilities-cards-row .vc_col-sm-4 { width: 100%; }
    .bakery .capabilities-cards-row .service-area-text { padding-top: 16px; }
}

/* === Page: about === 2026-10-09 === */
.bakery .subpage-hero.about-hero {
    background-image: url('/wp-content/uploads/2026/10/about-velora-landscape-hero.jpg');
}
/* cta-middle background. Eric asked for a different image than the About
   "parallax" asset (which is a CAD site-plan shot) - swapped to portfolio-46,
   mature palm canopy, which also matches a quote about letting palms reach
   full maturity. The About parallax asset 3357 is now UNUSED on this page. */
.bakery .wpb_row.cta-middle-quote.about-quote {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-sarasota-portfolio-46.jpg');
}

body #content .about-heritage .heritage-lead {
    color: var(--dark1) !important;
    font-family: var(--font-heading) !important;
    font-size: 24px !important;
    line-height: 34px !important;
    margin: 0 0 22px !important;
}
.bakery .wpb_row.about-approach-heading { margin: 0 auto; max-width: 780px; }

/* ---------------- TEAM SPOTLIGHT ---------------------------------- */
/* 🧨 This section carries NO background class - the alternating light2/light1
   colours live on the ROWS. The theme's default `padding: 60px 0` on a
   `[vc_section]` therefore rendered as WHITE strips above and below the team
   block. Zero it; the heading row's 92px top and the last team row's 72px
   bottom supply the spacing, and the colour bands now run edge to edge. */
.bakery section.about-team-section { padding: 0 !important; }
/* Each team row is its OWN alternating colour band (light2/light1/light2),
   so it needs symmetric padding - with 0 top the content hugged the top edge
   of its band. Eric, 2026-10-09. */
.bakery .wpb_row.team-row { padding: 72px 0px !important; }
/* heading row is light2 and the first team row is light2 - contiguous same-bg,
   so drop the heading's bottom padding rather than stacking both (conventions:
   fix double-padding adjacency in CSS, never via the Design Tab) */
.bakery section.about-team-section .wpb_row.about-team-heading { padding: 92px 0 0 !important; }
/* 5 classes, to beat the Home block's 4-class `.fifty-fifty.inline-image
   .image-col img` rule (see the note in global-subpage) */
.bakery .fifty-fifty.inline-image.team-row .image-col img {
    border-radius: 16px;
    display: block;
    height: auto;
    width: 100%;
}
.bakery .team-row .image-col .wpb_wrapper,
.bakery .team-row .image-col .wpb_text_column { width: 100%; }
.bakery .team-row .image-col p { line-height: 0 !important; margin: 0 !important; }
body #content .team-row h3 { margin: 0 0 6px !important; }
body #content .team-row .team-role {
    color: var(--accent1) !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    margin: 0 0 16px !important;
    text-transform: uppercase !important;
}
body #content .team-row p:not(.team-role) { margin: 0 !important; }

@media (max-width: 979px) {
    body #content .about-heritage .heritage-lead { font-size: 19px !important; line-height: 28px !important; }
    /* 🧨 the theme ships `@media (max-width:480px) { .bakery section .wpb_row
       :not(.fifty-fifty.inline-image) { padding: 0 !important } }` - 4 classes +
       2 elements, which OUTRANKS a 4-class/1-element selector even with
       !important. (The team rows escape it because they ARE
       .fifty-fifty.inline-image.) Add `.section-heading` for a 5th class. */
    .bakery section.about-team-section .wpb_row.section-heading.about-team-heading { padding: 52px 0 0 !important; }
    .bakery .wpb_row.team-row { padding: 44px 0px !important; }
    /* `.reverse` puts the photo first on mobile - give the copy its gap */
    .bakery .team-row .text-col { margin-top: 24px; }
    .bakery .team-row.team-image-right .text-col { margin-top: 24px; }
}

/* === Page: portfolio === 2026-10-09 === */
.bakery .subpage-hero.portfolio-hero {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-portfolio-hero.jpg');
}
.bakery .wpb_row.portfolio-bottom-cta {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-inquire-cta-background.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .wpb_row.portfolio-bottom-cta { min-height: 672px; }
}
body #content .portfolio-bottom-cta h2 { color: var(--white) !important; margin-bottom: 26px !important; }
body #content .portfolio-bottom-cta .bottom-cta-col > .vc_column-inner { margin: 0 auto; max-width: 820px; }
body #content .portfolio-bottom-cta a.btn-bt.default {
    background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    color: var(--dark1) !important;
}
body #content .portfolio-bottom-cta a.btn-bt.default:hover {
    background: transparent !important;
    color: var(--white) !important;
}

/* the justified gallery needs the full container width to lay out */
.bakery section.portfolio-gallery-section { padding: 90px 0 !important; }
.bakery .portfolio-gallery-col,
.bakery .portfolio-gallery-col > .vc_column-inner,
.bakery .portfolio-gallery-col .wpb_wrapper,
.bakery .portfolio-gallery-col .wpb_text_column { width: 100%; }
.bakery .portfolio-gallery-col .wpcp-carousel-wrapper,
.bakery .portfolio-gallery-col .wpcp-carousel-section { width: 100%; }
body #content .portfolio-gallery-col p { line-height: 0 !important; margin: 0 !important; }

@media (max-width: 979px) {
    .bakery section.portfolio-gallery-section { padding: 52px 0 !important; }
    .bakery .wpb_row.portfolio-bottom-cta { min-height: 420px; padding: 56px 0 !important; }
}

/* === Page: inquire === 2026-10-09 === */
.bakery .subpage-hero.inquire-hero {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-inquire-hero.jpg');
}
.bakery .wpb_row.inquire-bottom-cta {
    background-image: url('/wp-content/uploads/2026/10/velora-landscape-contact-form-background.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media (min-width: 980px) {
    .bakery .wpb_row.inquire-bottom-cta { min-height: 560px; }
}
body #content .inquire-bottom-cta h2 { color: var(--white) !important; margin-bottom: 26px !important; }
body #content .inquire-bottom-cta .bottom-cta-col > .vc_column-inner { margin: 0 auto; max-width: 820px; }
body #content .inquire-bottom-cta a.btn-bt.default {
    background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    color: var(--dark1) !important;
}
body #content .inquire-bottom-cta a.btn-bt.default:hover {
    background: transparent !important;
    color: var(--white) !important;
}

/* ---------------- JOBBER WORK REQUEST FORM BAND ------------------- */
/* The live site uses Jobber's embedded work-request form, so the Gravity
   Form (and all its Colorado-era styling) was removed. The embed is a
   `[vc_raw_html]` block - the conventions allow raw HTML specifically when
   an inline <script> is required, which it is here.

   Jobber renders into an IFRAME it sizes itself via postMessage, and it
   carries its own styling - do NOT try to restyle its internals from here,
   it is cross-origin. Only the surrounding band is ours. */
.bakery .wpb_row.inquire-form-row { padding: 86px 0 !important; }
.bakery .inquire-form-col .wpb_raw_html,
.bakery .inquire-form-col .wpb_raw_code { margin: 0 auto; max-width: 900px; }
.bakery .inquire-form-col iframe.jobber-work-request {
    border: 0;
    display: block;
    width: 100%;
}
/* the embed injects a spinner + dialog overlay before the iframe resolves */
.bakery .inquire-form-col .jobber-spinner { margin: 0 auto; }

/* ---------------- NAP ROW ----------------------------------------- */
.bakery .wpb_row.inquire-nap-row { padding: 86px 0 !important; }
/* 5 classes to beat the Home block's 4-class `.fifty-fifty.inline-image
   .image-col img` rule - the map is an iframe, so size it the same way */
.bakery .fifty-fifty.inline-image.inquire-nap-row .map-col iframe {
    border-radius: 16px;
    display: block;
    height: 460px;
    width: 100%;
}
.bakery .inquire-nap-row .map-col .wpb_wrapper,
.bakery .inquire-nap-row .map-col .wpb_text_column { width: 100%; }
body #content .inquire-nap-row .map-col p { line-height: 0 !important; margin: 0 !important; }
body #content .inquire-nap-row h2 { margin: 0 0 22px !important; }
body #content .inquire-nap-row h3 {
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    color: var(--accent1) !important;
    margin: 0 0 6px !important;
    text-transform: uppercase !important;
}
body #content .inquire-nap-row p { margin: 0 0 22px !important; }
body #content .inquire-nap-row p:last-child { margin: 0 !important; }
body #content .inquire-nap-row a { color: var(--dark1) !important; text-decoration: none !important; }
body #content .inquire-nap-row a:hover { color: var(--accent1) !important; }

@media (max-width: 979px) {
    .bakery .wpb_row.inquire-form-row { padding: 52px 0 !important; }
    .bakery .wpb_row.inquire-nap-row { padding: 52px 0 !important; }
    .bakery .fifty-fifty.inline-image.inquire-nap-row .map-col iframe { height: 320px; }
    .bakery .inquire-nap-row .nap-col { margin-top: 24px; }
    .bakery .wpb_row.inquire-bottom-cta { min-height: 420px; padding: 56px 0 !important; }
}

/* === Page: global-blog === 2026-10-09 === */
/* Colorado ships only `body#blog-page img.post-image { border-radius:36px;
   width:100% }` — no height, no object-fit, so every card image rendered
   at its own aspect ratio (238 / 251 / 282 / 283 / 481px tall at 424 wide;
   the portrait Kaleigh photo was the outlier).

   `aspect-ratio` rather than a fixed px height so the cards stay equal at
   EVERY breakpoint as the column width changes.
   Specificity: the Colorado rule is (1 id, 1 class, 2 elements); adding
   `.archive-post-image-link` makes this (1 id, 2 classes, 2 elements). */
body#blog-page .archive-post-image-link img.post-image {
    aspect-ratio: 3 / 2;
    border-radius: 16px;   /* Velora standard — Colorado shipped 36px */
    display: block;
    height: auto;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

/* === Page: global-search === 2026-10-09 === */
/* ---- titles + excerpt go white on the green card ----------------- */
body #content .search-result-card h2.entry-title,
body #content .search-result-card h2.entry-title a { color: var(--white) !important; }
body #content .search-result-card h2.entry-title a:hover { color: var(--accent2) !important; }
/* the divider under the title was `1px solid var(--accent1)` — the SAME
   colour as the card, so it was invisible */
body #content .search-result-card h2.entry-title { border-bottom-color: rgba(255, 255, 255, 0.28) !important; }
/* 🧨 `the_excerpt()` wraps POST excerpts in a <p>, and the global
   `body p, body li, body span:not(…) { color: var(--dark1) }` colours that
   <p>, not the wrapper. Colouring `.entry-summary` alone leaves the visible
   text dark green on the green card. PAGE results have no <p> (plain text
   node) which is why only post results looked broken. Target both. */
body #content .search-result-card .entry-summary,
body #content .search-result-card .entry-summary p,
body #content .search-result-card .entry-summary li,
body #content .search-result-card .entry-summary span,
body #content .search-result-card .entry-summary a { color: var(--white) !important; }

/* ---- Read More becomes a real button ----------------------------- */
/* matches the site `.btn-bt.default` treatment exactly: accent2 fill,
   dark1 text, 280x65.
   🧨 `.search-result-card` is `display:flex; flex-direction:column`, so the
   anchor is a FLEX ITEM — `display:inline-block` is blockified to `block`
   and the default `align-items: normal` (stretch) made it span the whole
   534px card. `align-self: center` is what keeps it button-sized. */
body #content .search-result-card a.btn-bt.read-more {
    align-self: center;
    background: var(--accent2) !important;
    border: 1px solid var(--accent2) !important;
    border-radius: 3px !important;
    color: var(--dark1) !important;
    display: inline-block !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
    line-height: 20px !important;
    padding: 21.5px 10px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transition: 0.3s ease-in-out;
}
body #content .search-result-card a.btn-bt.read-more:hover {
    background: transparent !important;
    color: var(--white) !important;
}

/* ==================================================================
   ARCHIVE PARITY  (category / tag / author / date — body.archive)
   archive.php reuses search.php's markup, but MOST of css/search.css is
   scoped to `body.search` / `body.search-results`, which an archive body
   never has. These rules re-apply the same values to `body.archive` so
   the two templates render identically.
   (The card title/excerpt/button rules above are NOT body-scoped, so
   they already apply to archives — only the chrome needed mirroring.)
   ================================================================== */

/* hero band */
body.archive .default-header {
    background-image: url(/wp-content/uploads/2026/10/velora-landscape-subpage-header-background.jpg);
}
body.archive .default-header h1,
body.archive .default-header h1 span {
    color: var(--light1) !important;
    font-size: 28px;
    text-transform: uppercase;
}
body.archive .archive-description {
    color: var(--light1);
    margin-top: 10px;
    text-align: center;
}

/* search bar row */
body.archive .vc_row.wpb_row.top-cta.search-cta { padding: 24px 0; }
body.archive .top-cta .wpb_text_column .wpb_wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
}
body.archive .top-cta h4 {
    color: var(--dark3);
    font-family: var(--NunitoBold);
    font-size: 18px;
    letter-spacing: 0;
    margin-bottom: 0;
}
body.archive .search-cta form.search-form { position: relative; width: 450px; }
body.archive .search-cta label { display: none; }
body.archive .bakery .search-cta input[type="search"] {
    background: var(--light2);
    border: 2px solid var(--dark3);
    border-radius: 50px;
    color: var(--dark3);
    font-size: 16px;
    height: 44px;
    margin: 0 !important;
    padding: 0 24px;
}
body.archive .search-cta button.search-submit {
    background: none !important;
    border: none;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 6px;
    top: 6px;
}
body.archive .search-cta button.search-submit i.icon-search { background: none !important; color: var(--dark1); }

/* result-count bar + results band */
body.archive .some-content.num-of-results { background: var(--dark2); padding: 24px 0; }
body.archive .some-content { background: var(--light3); padding: 48px 0; }
body.archive .some-content .container { margin: 0 auto; max-width: 1100px; width: 90%; }

/* the green card background is `body.search-results article:nth-child(…)`
   in custom.css — scoped, so mirror it for archives */
body.archive .search-result-card { background: var(--accent1); }

@media (min-width: 980px) {
    body.archive .top-cta h4 { margin-right: 24px; }
}
@media (max-width: 979px) {
    body.archive a.btn-bt.alternate.read-more { margin-top: 16px !important; }
}
@media (max-width: 768px) {
    body.archive h4.tt-none { display: none; }
}
@media (max-width: 480px) {
    body.archive .some-content { padding: 30px 0; }
    body.archive .pagination .nav-links { flex-wrap: nowrap; }
    body.archive #content .pagination-wrapper .page-numbers { margin-left: 0; margin-right: 0; }
}

/* ADDITIONAL PULLQUOTES */
/* portfolio pullquote */
.bakery .wpb_row.cta-middle-quote.portfolio-quote {
    background-image: url('/wp-content/uploads/2026/10/portfolio-quote-velora-flowerbed.jpg');
}

/* lighting pullquote */
.bakery .wpb_row.cta-middle-quote.lighting-quote {
    background-image: url('/wp-content/uploads/2026/10/lighting-quote-velora-flowerbed.jpg');
}

/* collabs pullquote */
.bakery .wpb_row.cta-middle-quote.collabs-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote-collabs-quote-add-parallax-hardscaping.jpg');
}

/* about 1st pullquote */
.bakery .wpb_row.cta-middle-quote.aboutfirst-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote.aboutfirst-quote.jpg');
}

/* hardscaping */
.bakery .wpb_row.cta-middle-quote.hardscape-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote.hardscape-quote.jpg');
}

/* botanical */
.bakery .wpb_row.cta-middle-quote.botanical-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote.botanical-quote.jpg');
}

/* inquire */
.bakery .wpb_row.cta-middle-quote.inquire-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote.inquire-quote.jpg');
}

/* capabilities */
.bakery .wpb_row.cta-middle-quote.capabilitiesfirst-quote {
    background-image: url('/wp-content/uploads/2026/10/cta-middle-quote.capabilities-quote-1.jpg');
}

.bakery .subpage-hero { background-color: rgba(0,0,0,.15); }
