/* Optional layouts selected in Theme Options. No selector here affects defaults. */

@media (min-width: 901px) {
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-branding-inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 32px;
        flex-wrap: wrap;
        text-align: left;
    }
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-logo-wrap {
        flex: 0 1 auto;
        width: auto;
        justify-content: flex-start;
        text-align: left;
    }
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) #logo,
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) #logo a {
        margin-left: 0;
        margin-right: 0;
    }
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) #logo img {
        height: clamp(72px, 8vw, 110px) !important;
        max-width: min(40vw, 450px) !important;
        margin: 0 !important;
    }
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-branding-tools {
        flex: 0 1 auto;
        width: auto;
        min-width: 0;
        justify-content: flex-end;
        text-align: right;
    }
    #site-header.regular_header:is(.webcom-header-composition-split,.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-utility-menu { justify-content: flex-end; }

    #site-header.regular_header.webcom-header-composition-third_logo .webcom-branding-inner,
    #site-header.regular_header.webcom-header-composition-third_tools .webcom-branding-inner {
        display: grid;
        align-items: center;
    }
    #site-header.regular_header.webcom-header-composition-third_logo .webcom-branding-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }
    #site-header.regular_header.webcom-header-composition-third_tools .webcom-branding-inner { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
    #site-header.regular_header:is(.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-logo-wrap,
    #site-header.regular_header:is(.webcom-header-composition-third_logo,.webcom-header-composition-third_tools) .webcom-branding-tools { min-width: 0; max-width: 100%; }

    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) .webcom-branding-inner {
        flex-direction: column;
        gap: 16px;
    }
    #site-header.regular_header.webcom-header-composition-stacked_left .webcom-branding-inner { align-items: flex-start; text-align: left; }
    #site-header.regular_header.webcom-header-composition-stacked_right .webcom-branding-inner { align-items: flex-end; text-align: right; }
    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) .webcom-logo-wrap,
    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) .webcom-branding-tools {
        width: 100%;
        max-width: 100%;
    }
    #site-header.regular_header.webcom-header-composition-stacked_left .webcom-logo-wrap,
    #site-header.regular_header.webcom-header-composition-stacked_left .webcom-branding-tools,
    #site-header.regular_header.webcom-header-composition-stacked_left .webcom-utility-menu { justify-content: flex-start; }
    #site-header.regular_header.webcom-header-composition-stacked_right .webcom-logo-wrap,
    #site-header.regular_header.webcom-header-composition-stacked_right .webcom-branding-tools,
    #site-header.regular_header.webcom-header-composition-stacked_right .webcom-utility-menu { justify-content: flex-end; }
    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) #logo,
    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) #logo a { margin: 0; }
    #site-header.regular_header:is(.webcom-header-composition-stacked_left,.webcom-header-composition-stacked_right) #logo img {
        height: clamp(90px, 10vw, 150px) !important;
        max-width: min(75vw, 650px) !important;
        margin: 0 !important;
    }

    #site-header.logo_in_nav_header:is(.webcom-nav-logo-third_logo,.webcom-nav-logo-third_menu) .webcom-navigation-inner { flex-wrap: wrap; }
    #site-header.logo_in_nav_header.webcom-nav-logo-third_logo .webcom-logo-in-nav { flex: 1 1 29%; }
    #site-header.logo_in_nav_header.webcom-nav-logo-third_menu .webcom-logo-in-nav { flex: 1 1 59%; }
    #site-header.logo_in_nav_header:is(.webcom-nav-logo-third_logo,.webcom-nav-logo-third_menu) .webcom-primary-nav-wrap { flex: 2 1 60%; min-width: 0; }
    #site-header.logo_in_nav_header.webcom-nav-logo-third_menu .webcom-primary-nav-wrap { flex: 1 1 31%; }
    #site-header.logo_in_nav_header:is(.webcom-nav-logo-third_logo,.webcom-nav-logo-third_menu) #primary-navigation .navigation > ul { flex-wrap: wrap; }

    #site-header.webcom-menu-align-left .webcom-navigation-inner,
    #site-header.webcom-menu-align-left #primary-navigation .navigation > ul {
        justify-content: flex-start;
    }
    #site-header.webcom-menu-align-right .webcom-navigation-inner,
    #site-header.webcom-menu-align-right #primary-navigation .navigation > ul {
        justify-content: flex-end;
    }
    #site-header.webcom-menu-align-right .webcom-primary-nav-wrap { margin-left: auto; }
    #site-header.webcom-menu-align-right .webcom-nav-cart { margin-left: 0; }

    #site-header.webcom-menu-density-compact .webcom-navigation-inner,
    #site-header.webcom-menu-density-compact #primary-navigation .navigation > ul > li > a { min-height: 54px; }
    #site-header.webcom-menu-density-compact #primary-navigation .navigation > ul > li > a { padding-left: 12px; padding-right: 12px; }
    #site-header.webcom-menu-density-spacious .webcom-navigation-inner,
    #site-header.webcom-menu-density-spacious #primary-navigation .navigation > ul > li > a { min-height: 78px; }
    #site-header.webcom-menu-density-spacious #primary-navigation .navigation > ul > li > a { padding-left: 21px; padding-right: 21px; }
}

#site-header.webcom-tools-social-first .webcom-header-socials { order: -1; }

#site-header.webcom-branding-surface-soft #regular-header.webcom-branding-bar { background: var(--webcom-soft); }
#site-header.webcom-branding-surface-dark #regular-header.webcom-branding-bar { background: var(--webcom-footer); border-color: rgba(255,255,255,.14); }
#site-header.webcom-branding-surface-dark #regular-header #logo.text-logo a,
#site-header.webcom-branding-surface-dark #regular-header .webcom-header-widget { color: #fff; }
#site-header.webcom-branding-surface-dark #regular-header .site-description,
#site-header.webcom-branding-surface-dark #regular-header .webcom-utility-menu a { color: #d7dfda; }
#site-header.webcom-branding-surface-dark #regular-header .webcom-header-socials a { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.2); color: #fff; }

@media (min-width: 901px) {
    #site-header.webcom-header-composition-split_navigation .webcom-navigation-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto;
        gap: 24px;
        min-height: 82px;
    }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-left { min-width: 0; justify-self: start; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-menu {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 4px 18px;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    #site-header.webcom-header-composition-split_navigation .webcom-split-menu a {
        color: #303532;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
    }
    #site-header.webcom-header-composition-split_navigation .webcom-split-nav-logo { justify-self: center; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-nav-logo #logo img { width: auto !important; height: 66px !important; max-width: 260px !important; margin: 0 !important; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-right { justify-self: end; min-width: 0; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-right #primary-navigation .navigation > ul { justify-content: flex-end; flex-wrap: wrap; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-right #primary-navigation .navigation > ul > li > a { padding-left: 10px; padding-right: 10px; font-size: 13px; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-right #primary-navigation .navigation > ul > .menu-item-has-children > a { padding-right: 27px; }
    #site-header.webcom-header-composition-split_navigation .webcom-split-navigation-right #primary-navigation .navigation > ul > li > a:before { right: 10px; left: 10px; }

    #site-header.webcom-menu-surface-soft #header.webcom-navigation-bar { background: var(--webcom-soft); }
    #site-header.webcom-menu-surface-dark #header.webcom-navigation-bar { background: var(--webcom-footer); border-color: rgba(255,255,255,.16); }
    #site-header.webcom-menu-surface-dark #primary-navigation .navigation > ul > li > a { color: #f7faf8 !important; }
    #site-header.webcom-menu-surface-dark #primary-navigation .navigation > ul > li:hover > a,
    #site-header.webcom-menu-surface-dark #primary-navigation .navigation > ul > li.current-menu-item > a,
    #site-header.webcom-menu-surface-dark #primary-navigation .navigation > ul > li.current-menu-parent > a { color: #fff !important; }
    #site-header.webcom-menu-surface-dark #primary-navigation .navigation > ul > .menu-item-has-children > a:after { color: #d5e0d9; }

    #site-header.webcom-menu-links-outlined #primary-navigation .navigation > ul > li > a,
    #site-header.webcom-menu-links-pills #primary-navigation .navigation > ul > li > a {
        min-height: 44px;
        margin: 10px 2px;
        padding: 0 18px;
    }
    #site-header.webcom-menu-links-outlined #primary-navigation .navigation > ul > li > a { border: 1px solid var(--webcom-line); border-radius: 8px; }
    #site-header.webcom-menu-links-pills #primary-navigation .navigation > ul > li > a { border-radius: 999px; }
    #site-header:is(.webcom-menu-links-outlined,.webcom-menu-links-pills) #primary-navigation .navigation > ul > li > a:before { display: none; }
    #site-header.webcom-menu-links-outlined #primary-navigation .navigation > ul > li:hover > a,
    #site-header.webcom-menu-links-outlined #primary-navigation .navigation > ul > li.current-menu-item > a { border-color: var(--webcom-primary); }
    #site-header.webcom-menu-links-pills #primary-navigation .navigation > ul > li:hover > a,
    #site-header.webcom-menu-links-pills #primary-navigation .navigation > ul > li.current-menu-item > a,
    #site-header.webcom-menu-links-pills #primary-navigation .navigation > ul > li.current-menu-parent > a { background: var(--webcom-soft) !important; }
    #site-header.webcom-menu-surface-dark.webcom-menu-links-outlined #primary-navigation .navigation > ul > li > a { border-color: rgba(255,255,255,.25); }
    #site-header.webcom-menu-surface-dark.webcom-menu-links-pills #primary-navigation .navigation > ul > li:hover > a,
    #site-header.webcom-menu-surface-dark.webcom-menu-links-pills #primary-navigation .navigation > ul > li.current-menu-item > a { background: rgba(255,255,255,.13) !important; }
}

#site-header .webcom-split-nav-extras { padding: 10px 0; border-top: 1px solid var(--webcom-line); background: #fff; }
#site-header .webcom-split-nav-extras .webcom-branding-tools { justify-content: center; }
#site-header.webcom-header-tone-light #regular-header #logo.text-logo a,
#site-header.webcom-header-tone-light #header #logo.text-logo a,
#site-header.webcom-header-tone-light #header .webcom-split-menu a,
#site-header.webcom-header-tone-light #header #primary-navigation .navigation > ul > li > a,
#site-header.webcom-header-tone-light .webcom-split-nav-extras { color: #fff !important; }
#site-header.webcom-header-tone-light #header .webcom-split-menu a:hover,
#site-header.webcom-header-tone-light #header #primary-navigation .navigation > ul > li:hover > a { color: #fff !important; opacity: .78; }
#site-header.webcom-header-tone-light #header .webcom-header-socials a { color: #fff; border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.1); }
#site-header.webcom-header-tone-dark #regular-header #logo.text-logo a,
#site-header.webcom-header-tone-dark #header #logo.text-logo a,
#site-header.webcom-header-tone-dark #header .webcom-split-menu a,
#site-header.webcom-header-tone-dark #header #primary-navigation .navigation > ul > li > a { color: #202823 !important; }

/* Footer variants operate on the selected count while three equal columns retain the current design. */
@media (min-width: 901px) {
    #site-footer.webcom-footer-cols-1 .webcom-footer-grid,
    #site-footer.webcom-footer-layout-stacked .webcom-footer-grid { grid-template-columns: minmax(0, 1fr); }
    #site-footer.webcom-footer-cols-2:not(.webcom-footer-layout-stacked) .webcom-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #site-footer.webcom-footer-cols-4:not(.webcom-footer-layout-stacked) .webcom-footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 34px; }
    #site-footer.webcom-footer-cols-2.webcom-footer-layout-lead_wide .webcom-footer-grid { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
    #site-footer.webcom-footer-cols-2.webcom-footer-layout-end_wide .webcom-footer-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }
    #site-footer.webcom-footer-cols-3.webcom-footer-layout-lead_wide .webcom-footer-grid { grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)); }
    #site-footer.webcom-footer-cols-3.webcom-footer-layout-end_wide .webcom-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(0, 2fr); }
    #site-footer.webcom-footer-cols-4.webcom-footer-layout-lead_wide .webcom-footer-grid { grid-template-columns: minmax(0, 2fr) repeat(3, minmax(0, 1fr)); }
    #site-footer.webcom-footer-cols-4.webcom-footer-layout-end_wide .webcom-footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 2fr); }
}
#site-footer.webcom-footer-align-left .footer-widgets .f-widget { text-align: left; }
#site-footer.webcom-footer-align-center .footer-widgets .f-widget { text-align: center; }
#site-footer.webcom-footer-align-right .footer-widgets .f-widget { text-align: right; }
#site-footer.webcom-footer-cols-1.webcom-footer-single-left .webcom-footer-grid > .f-widget { justify-self: start; width: min(100%, 760px); text-align: left; }
#site-footer.webcom-footer-cols-1.webcom-footer-single-center .webcom-footer-grid > .f-widget { justify-self: center; width: min(100%, 760px); text-align: center; }
#site-footer.webcom-footer-cols-1.webcom-footer-single-right .webcom-footer-grid > .f-widget { justify-self: end; width: min(100%, 760px); text-align: right; }
#site-footer.webcom-footer-widgets-separated .webcom-footer-grid > .f-widget + .f-widget { border-left: 1px solid rgba(255,255,255,.2); padding-left: 24px; }
#site-footer.webcom-footer-widgets-panels .webcom-footer-grid > .f-widget { padding: 24px; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: rgba(255,255,255,.06); }
#site-footer.webcom-footer-accent-strong .webcom-footer-accent { height: 10px; }
#site-footer.webcom-footer-accent-none .webcom-footer-accent { display: none; }
@media (min-width: 681px) and (max-width: 900px) {
    #site-footer.webcom-footer-cols-1 .webcom-footer-grid,
    #site-footer.webcom-footer-layout-stacked .webcom-footer-grid { grid-template-columns: minmax(0, 1fr); }
    #site-footer.webcom-footer-cols-2:not(.webcom-footer-layout-stacked) .webcom-footer-grid,
    #site-footer.webcom-footer-cols-4:not(.webcom-footer-layout-stacked) .webcom-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #site-footer.webcom-footer-cols-4 .f-widget-3 { grid-column: auto; max-width: none; }
}
@media (max-width: 680px) {
    #site-footer.webcom-footer-widgets-separated .webcom-footer-grid > .f-widget + .f-widget { border-left: 0; border-top: 1px solid rgba(255,255,255,.2); padding-left: 0; padding-top: 24px; }
}

/* Blog archive variants are scoped to the selected body class. */
body.webcom-blog-layout-cards:not(.webcom-blog-full-posts) #content_box {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}
body.webcom-blog-layout-cards:not(.webcom-blog-full-posts) #content_box > :not(article.latestPost) { grid-column: 1 / -1; }
body.webcom-blog-layout-cards #content_box > article.latestPost {
    float: none;
    clear: none;
    width: 100%;
    margin: 0 0 24px;
    padding: 24px;
    border: 1px solid var(--webcom-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(20, 28, 23, .06);
}
body.webcom-blog-layout-cards:not(.webcom-blog-full-posts) #content_box > article.latestPost { margin: 0; }
body.webcom-blog-layout-cards .latestPost #featured-thumbnail {
    float: none;
    width: 100%;
    margin: 0 0 18px;
    border-radius: 12px;
}
body.webcom-blog-layout-cards .latestPost #featured-thumbnail img { display: block; width: 100%; height: auto; }
body.webcom-blog-layout-cards .latestPost .front-view-content { float: none; width: 100%; }
body.webcom-blog-layout-cards .latestPost .readMore,
body.webcom-blog-layout-editorial .latestPost .readMore {
    float: none;
    display: inline-flex;
    margin-top: 18px;
    padding: 0;
    background: none;
}
body.webcom-blog-layout-cards .latestPost .readMore a,
body.webcom-blog-layout-editorial .latestPost .readMore a {
    color: var(--webcom-primary);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}
body.webcom-blog-layout-editorial #content_box > article.latestPost {
    float: none;
    width: 100%;
    margin-bottom: 28px;
    padding: 0 0 28px;
    border-bottom: 1px solid var(--webcom-line);
}
body.webcom-blog-layout-editorial .latestPost .front-view-content { line-height: 1.75; }
body.webcom-blog-layout-editorial .latestPost #featured-thumbnail { border-radius: 12px; }

.webcom-reading-time {
    display: inline-flex;
    align-items: center;
    width: auto;
    margin: 0 0 16px;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--webcom-soft);
    color: var(--webcom-neutral);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
}

body.webcom-article-width-comfortable .single_post .post-single-content .thecontent,
body.webcom-article-width-focused .single_post .post-single-content .thecontent {
    float: none;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.8;
}
body.webcom-article-width-comfortable .single_post .post-single-content .thecontent { max-width: 780px; }
body.webcom-article-width-focused .single_post .post-single-content .thecontent { max-width: 660px; }
body.webcom-article-width-comfortable .single_post .post-single-content .thecontent img,
body.webcom-article-width-focused .single_post .post-single-content .thecontent img { max-width: 100%; height: auto; }

@media (max-width: 900px) {
    body.webcom-blog-layout-cards:not(.webcom-blog-full-posts) #content_box { grid-template-columns: 1fr; }
}

