/**
Theme Name: Astra Child Theme NWCD
Author: Robert Connelly
Author URI: https://www.rendervisions.net
Description: Astra Child Theme for NWCD
Version: 1.0.0
Template: astra
*/

/* ==========================================================================
   Single Professional - Desktop Baseline Layout
   ========================================================================== */

/* 1. Global Page Background */
body,
#page,
#content,
.site-content,
.ast-container {
    background-color: #ffffff !important;
}

/* 2. Full-Bleed Grey Hero Band (#F6F7F7) */
/* Allow parent containers to overflow edge-to-edge across screen */
.wp-site-blocks,
#page #content,
.ast-container,
.entry-content,
.wp-block-post-content,
div[data-spectra-id="spectra-m26cxmf-hczjf8"],
div[data-spectra-id="spectra-m26dgy2-po0iq9"],
div[data-spectra-id="spectra-mt72v1kf-cltymf"] {
    overflow: visible !important;
}

/* Isolate top profile row wrapper */
div[data-spectra-id="spectra-mt7uahvp-qzdiaw"] {
    position: relative !important;
    background-color: #F6F7F7 !important;
    z-index: 1 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Stretch background pseudoelement full-bleed edge-to-edge */
div[data-spectra-id="spectra-mt7uahvp-qzdiaw"]::before {
    content: "" !important;
    position: absolute !important;
    top: -30px !important;
    bottom: -30px !important;
    left: -100vw !important;
    right: -100vw !important;
    background-color: #F6F7F7 !important;
    z-index: -1 !important;
}

div[data-spectra-id="spectra-mt3d04b9-6qfxbf"] {
    background-color: transparent !important;
}

/* 3. Navigation Link ("View All Professionals") */
.view-all-professionals-link a {
    color: #666666 !important;
    text-decoration: none !important;
    transition: color 0.2s ease-in-out;
}

.view-all-professionals-link a:hover,
.view-all-professionals-link a:focus {
    color: #4db3b3 !important;
    text-decoration: none !important;
}

li.wp-block-spectra-list-child-item,
ul.spectra-list li.spectra-list-item {
    gap: 10px !important;
    --wp--style--block-gap: 10px !important;
}

ul.spectra-list .spectra-list-icon,
ul.spectra-list div[data-spectra-id] {
    margin: 0 !important;
    padding: 0 !important;
}

ul.spectra-list p.view-all-professionals-link {
    margin: 0 !important;
}

ul.spectra-list.spectra-list-unordered {
    margin-bottom: 0 !important;
}

h1.wp-block-post-title {
    margin-top: 0px !important;
    margin-bottom: 5px !important;
}

div:has(> ul.spectra-list-unordered) {
    gap: 0 !important;
}

/* ==========================================================================
   4. Contact Form Card & Strict Inner Boundary Containment
   ========================================================================== */

/* Outer Teal Container Box (340px Outer Width) */
.rvcTxtColorWh {
    width: 340px !important;
    min-width: 340px !important;
    max-width: 340px !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
    background-color: #67c3c1 !important;
    padding: 20px !important;
    gap: 0 !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    overflow: hidden !important;
}

/*
 * Keep the Professional contact card independent of the biography height.
 * Its normal position overlaps the lower portion of the profile hero; it then
 * follows the viewport until the shared profile wrapper reaches its end.
 */
@media screen and (min-width: 1001px) {
    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh) {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 340px !important;
        align-items: flex-start !important;
        column-gap: 24px !important;
        row-gap: 0 !important;
        overflow: visible !important;
    }

    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh)
        > .wp-block-spectra-container:not(.rvcTxtColorWh) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body.single-professional .spectra-is-root-container > .rvcTxtColorWh {
        position: sticky !important;
        z-index: 5 !important;
        top: 24px !important;
        align-self: flex-start !important;
        margin-top: 190px !important;
    }

    body.admin-bar.single-professional .spectra-is-root-container > .rvcTxtColorWh {
        top: 56px !important;
    }
}

/* Center Form Header Title */
.rvcTxtColorWh h2,
.rvcTxtColorWh h3,
.rvcTxtColorWh .uagb-heading-text,
.rvcTxtColorWh .wp-block-uagb-advanced-heading {
    text-align: center !important;
    width: 100% !important;
    margin: 0 auto 8px auto !important;
}

/* Force Form & ALL Internal Wrappers to Fit 100% Inner Printable Width */
.rvcTxtColorWh form,
.rvcTxtColorWh .wpcf7,
.rvcTxtColorWh .wpcf7-form,
.rvcTxtColorWh .fieldset,
.rvcTxtColorWh div.fieldset,
.rvcTxtColorWh p,
.rvcTxtColorWh span.wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: 100% !important;
    flex-shrink: 1 !important;
    box-sizing: border-box !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* Force Input Fields & Textarea to Stay Flush Within 100% Inner Bounds */
.rvcTxtColorWh input[type="text"],
.rvcTxtColorWh input[type="email"],
.rvcTxtColorWh input[type="tel"],
.rvcTxtColorWh textarea,
.rvcTxtColorWh .wpcf7-form-control {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 10px 12px !important;
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    border-radius: 4px !important;
    border: 1px solid #ffffff !important;
    background-color: #ffffff !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    color: #333333 !important;
}

/* Navy Blue Submit Button - Contained 100% Flush */
.rvcTxtColorWh input[type="submit"],
.rvcTxtColorWh .wpcf7-submit {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin-top: 15px !important;
    padding: 12px 20px !important;
    background-color: #1b6cb8 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    cursor: pointer !important;
}

.rvcTxtColorWh input[type="submit"]:hover,
.rvcTxtColorWh .wpcf7-submit:hover {
    background-color: #155592 !important;
}

/* Remove Contact Form 7's trailing paragraph space below the submit button. */
.rvcTxtColorWh .wpcf7-form > p:last-of-type {
    position: relative !important;
    margin-bottom: 0 !important;
}

/* Keep the loading indicator without letting its invisible box add card height. */
.rvcTxtColorWh .wpcf7-spinner {
    position: absolute !important;
    right: 10px !important;
    bottom: 9px !important;
    margin: 0 !important;
}

/* An empty Contact Form 7 status area must not create space below the button. */
.rvcTxtColorWh .wpcf7-response-output:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.rvcTxtColorWh .wpcf7-response-output:not(:empty) {
    margin: 10px 0 0 !important;
}

/* Preserve breathing room between a Professional's article links and footer. */
body.single-professional .professional-articles-list {
    margin-bottom: 64px !important;
}

/* 5. Header Navigation & Dropdown Styling */
#ast-desktop-header .main-header-menu .menu-item > a {
    font-weight: 700 !important;
    text-transform: none !important;
    font-size: 18px !important;
}

#ast-desktop-header .main-header-menu .sub-menu {
    background-color: #67c3c1 !important;
    border: none !important;
    box-shadow: 0 8px 20px -2px rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

#ast-desktop-header .main-header-menu .sub-menu .menu-item > a {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    padding: 12px 20px !important;
    transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

#ast-desktop-header .main-header-menu .sub-menu .menu-item > a:hover {
    transform: translateX(8px) !important;
    color: #ffffff !important;
}

/* Teal Hover Underline for Standard Links */
#ast-desktop-header .main-header-menu .menu-item > a::before,
#ast-desktop-header .main-header-menu .menu-item > a::after,
#ast-desktop-header .ast-menu-hover-style-underline .main-header-menu .menu-item:hover > a::after,
#ast-desktop-header .ast-menu-hover-style-underline .main-header-menu .menu-item.current-menu-item > a::after {
    background-color: #67c3c1 !important;
    color: #67c3c1 !important;
}

/* Remove Hover Underline ONLY on Dropdown Parent Link */
#ast-desktop-header .main-header-menu .menu-item-has-children > a::before,
#ast-desktop-header .main-header-menu .menu-item-has-children > a::after,
#ast-desktop-header .ast-menu-hover-style-underline .main-header-menu .menu-item-has-children:hover > a::after,
#ast-desktop-header .ast-menu-hover-style-underline .main-header-menu .menu-item-has-children.current-menu-item > a::after {
    display: none !important;
    content: none !important;
    background-color: transparent !important;
}

#ast-desktop-header .main-header-menu .menu-item-has-children > a > .ast-header-navigation-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 6px !important;
    padding: 0 !important;
    color: currentColor !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}

/* ==========================================================================
   21. FAQs - Interior Page Shell and Content
   ========================================================================== */

.rvc-faqs > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-hero {
    display: grid !important;
    position: relative !important;
    grid-template-columns: 44.1667% 55.8333% !important;
    align-items: stretch !important;
    width: 100vw !important;
    max-width: none !important;
    height: 340px !important;
    min-height: 340px !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 0 !important;
    gap: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.rvc-faqs-hero > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-faqs-hero-title-panel,
.rvc-faqs-hero-image-panel {
    flex: none !important;
    width: 100% !important;
    max-width: none !important;
    height: 340px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-hero-title-panel {
    grid-column: 1 !important;
}

.rvc-faqs-hero-image-panel {
    grid-column: 2 !important;
    box-sizing: border-box !important;
}

.rvc-faqs-hero-title-panel {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 340px !important;
    padding: 48px !important;
    box-sizing: border-box !important;
    background: #67c3c1 !important;
    overflow: hidden !important;
}

.rvc-faqs-hero-title-panel::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background: rgba(38, 59, 69, 0.07);
    clip-path: polygon(84% 0, 100% 0, 100% 100%, 36% 100%);
    pointer-events: none;
}

.rvc-faqs-hero-title-panel > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    position: relative !important;
    z-index: 1;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.rvc-faqs-hero-heading {
    width: 100% !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 42px !important;
    font-weight: 300 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
}

.rvc-faqs-hero-image-panel,
.rvc-faqs-hero-image-panel > .uagb-container-inner-blocks-wrap,
.rvc-faqs-hero-image,
.rvc-faqs-hero-image img {
    height: 100% !important;
    min-height: 340px !important;
}

.rvc-faqs-hero-image-panel {
    overflow: hidden !important;
}

.rvc-faqs-hero-image-panel > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-hero-image {
    display: block !important;
    min-width: 100% !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.rvc-faqs-hero-image > a,
.rvc-faqs-hero-image a {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 340px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-hero-image img {
    display: block !important;
    min-width: 100% !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center top !important;
}

.rvc-faqs-main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 68px 24px 52px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-faqs-main > .uagb-container-inner-blocks-wrap,
.rvc-faqs .rvc-interior-main-inner > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-faqs .rvc-interior-main-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    grid-template-areas: "content sidebar" !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    column-gap: 48px !important;
    row-gap: 0 !important;
    box-sizing: border-box !important;
}

.rvc-faqs-content,
.rvc-faqs-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-content {
    grid-area: content;
}

.rvc-faqs-content > .wp-block-group__inner-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faqs-sidebar {
    grid-area: sidebar;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
}

.admin-bar .rvc-faqs-sidebar {
    top: 56px !important;
}

.rvc-faqs-sidebar > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faq-item {
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 0 0 28px !important;
    border-bottom: 1px solid #a5afb3 !important;
}

.rvc-faq-item:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

.rvc-faq-item > .wp-block-group__inner-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-faq-question {
    margin: 0 0 17px !important;
    color: #263b45 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 17px !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
}

.rvc-faq-item p {
    margin: 0 0 20px !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.68 !important;
}

.rvc-faq-item p:last-child {
    margin-bottom: 0 !important;
}

@media screen and (max-width: 1000px) {
    .rvc-faqs .rvc-interior-main-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "content"
            "sidebar" !important;
        max-width: 952px !important;
        gap: 0 !important;
    }

    .rvc-faqs-sidebar {
        display: block !important;
        position: static !important;
        top: auto !important;
        align-self: auto !important;
        margin-top: 36px !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
    .rvc-faqs-hero {
        grid-template-columns: 50% 50% !important;
        height: 280px !important;
        min-height: 280px !important;
    }

    .rvc-faqs-hero-title-panel,
    .rvc-faqs-hero-image-panel,
    .rvc-faqs-hero-image-panel > .uagb-container-inner-blocks-wrap,
    .rvc-faqs-hero-image,
    .rvc-faqs-hero-image > a,
    .rvc-faqs-hero-image a,
    .rvc-faqs-hero-image img {
        height: 280px !important;
        min-height: 280px !important;
    }
}

@media screen and (max-width: 899px) {
    .rvc-faqs-hero {
        width: 100vw !important;
        margin: 0 calc(50% - 50vw) !important;
    }

    .rvc-faqs-hero-title-panel > .uagb-container-inner-blocks-wrap {
        padding: 0 !important;
    }

    .rvc-faqs-hero-title-panel {
        padding: 38px !important;
    }

    .rvc-faqs-hero-heading {
        font-size: 36px !important;
    }

    .rvc-faqs-main {
        padding: 54px 32px 42px !important;
    }

    .rvc-faqs .rvc-interior-main-inner {
        max-width: 760px !important;
    }

    .rvc-faqs-sidebar {
        margin-top: 32px !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-faqs-hero {
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100vw !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 calc(50% - 50vw) !important;
        overflow: visible !important;
    }

    .rvc-faqs-hero > .uagb-container-inner-blocks-wrap {
        display: contents !important;
    }

    .rvc-faqs-hero-title-panel,
    .rvc-faqs-hero-image-panel {
        flex: 0 0 auto !important;
        grid-column: 1 !important;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
    }

    .rvc-faqs-hero-title-panel {
        min-height: 190px !important;
    }

    .rvc-faqs-hero-title-panel > .uagb-container-inner-blocks-wrap {
        padding: 0 !important;
    }

    .rvc-faqs-hero-title-panel {
        padding: 34px 28px !important;
    }

    .rvc-faqs-hero-heading {
        font-size: 33px !important;
        text-align: center !important;
    }

    .rvc-faqs-hero-image-panel,
    .rvc-faqs-hero-image-panel > .uagb-container-inner-blocks-wrap,
    .rvc-faqs-hero-image,
    .rvc-faqs-hero-image a,
    .rvc-faqs-hero-image img {
        height: auto !important;
        min-height: 0 !important;
    }

    .rvc-faqs-hero-image-panel {
        display: none !important;
    }

    .rvc-faqs-hero-image img {
        aspect-ratio: 3 / 2;
        object-fit: cover !important;
    }

    .rvc-faqs-main {
        padding: 42px 24px 32px !important;
    }

    .rvc-faq-item {
        margin-bottom: 24px !important;
        padding-bottom: 24px !important;
    }

    .rvc-faq-question {
        margin-bottom: 14px !important;
        font-size: 16px !important;
        line-height: 1.42 !important;
    }

    .rvc-faq-item p {
        margin-bottom: 18px !important;
        font-size: 15px !important;
        line-height: 1.65 !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1257px) {
    .rvc-faqs-hero {
        margin-top: 16px !important;
    }
}

#ast-desktop-header .main-header-menu .menu-item-has-children > a > .ast-header-navigation-arrow .ast-icon {
    display: none !important;
}

#ast-desktop-header .main-header-menu .menu-item-has-children > a > .ast-header-navigation-arrow::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 6px solid currentColor;
    transform: rotate(0deg);
    transform-origin: center;
    transition: transform 0.2s ease;
}

#ast-desktop-header .main-header-menu .menu-item-has-children:hover > a > .ast-header-navigation-arrow::before,
#ast-desktop-header .main-header-menu .menu-item-has-children:focus-within > a > .ast-header-navigation-arrow::before,
#ast-desktop-header .main-header-menu .menu-item-has-children > a[aria-expanded="true"] > .ast-header-navigation-arrow::before,
#ast-desktop-header .main-header-menu .menu-item-has-children > a > .ast-header-navigation-arrow[aria-expanded="true"]::before {
    transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
    #ast-desktop-header .main-header-menu .menu-item-has-children > a > .ast-header-navigation-arrow::before {
        transition: none;
    }
}

.entry-content p:has(a[href*="soundcloud.com"]),
.entry-content p:has(a[href*="dialogue-on-divorce"]) {
    margin-top: 12px !important;
    display: block !important;
}

/* 6. Header Search Icon */
.ast-header-search {
    margin-left: 20px !important;
    display: flex !important;
    align-items: center !important;
}

.ast-header-search .ast-search-icon,
.ast-header-search .ast-builder-layout-element {
    background-color: #67c3c1 !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0px !important;
    transition: background-color 0.2s ease-in-out !important;
}

.ast-header-search .ast-search-icon svg,
.ast-header-search .ast-icon-search svg {
    fill: #ffffff !important;
    color: #ffffff !important;
    width: 18px !important;
    height: 18px !important;
}

.ast-header-search .ast-search-icon:hover {
    background-color: #5ab1b0 !important;
}

/* Match the legacy search scale in the compact two-row and mobile headers. */
@media screen and (max-width: 1257px) {
    .ast-header-search .ast-search-icon,
    .ast-header-search .ast-builder-layout-element {
        width: 32px !important;
        height: 32px !important;
    }

    .ast-header-search .ast-search-icon svg,
    .ast-header-search .ast-icon-search svg {
        width: 15px !important;
        height: 15px !important;
    }
}

.search-results article img {
    width: 100% !important;
    height: 200px !important;
    object-fit: contain !important;
    background-color: #f5f5f5 !important;
}

/* 7. Intentional Two-Row Header for Tablet & Small Laptop */
@media screen and (min-width: 768px) and (max-width: 1257px) {
    #ast-desktop-header .site-primary-header-wrap .ast-builder-grid-row {
        grid-template-columns: minmax(40px, 1fr) auto minmax(40px, 1fr) !important;
        grid-template-areas:
            ". rvc-brand rvc-search"
            "rvc-navigation rvc-navigation rvc-navigation" !important;
        grid-template-rows: 92px 44px !important;
        row-gap: 0 !important;
    }

    #ast-desktop-header .site-header-primary-section-left {
        display: contents !important;
    }

    #ast-desktop-header .ast-builder-layout-element[data-section="title_tagline"] {
        grid-area: rvc-brand !important;
        align-self: center !important;
        justify-self: center !important;
    }

    #ast-desktop-header .site-header-primary-section-right {
        display: contents !important;
    }

    #ast-desktop-header .ast-builder-menu-1 {
        grid-area: rvc-navigation !important;
        justify-self: center !important;
        min-width: 0 !important;
        height: 44px !important;
    }

    #ast-desktop-header .ast-header-search {
        grid-area: rvc-search !important;
        align-self: center !important;
        justify-self: end !important;
        margin-left: 0 !important;
    }

    #ast-desktop-header .main-header-menu {
        flex-wrap: nowrap !important;
        justify-content: center !important;
        height: 44px !important;
    }

    #ast-desktop-header .main-header-menu > .menu-item > .menu-link {
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 16px !important;
        height: 44px !important;
        line-height: 44px !important;
        white-space: nowrap !important;
    }
}

/* 8. Astra Mobile Header Navigation */
@media screen and (max-width: 767px) {
    #ast-mobile-header .ast-mobile-header-content,
    #ast-mobile-header .main-header-bar-navigation,
    #ast-hf-mobile-menu,
    #ast-hf-mobile-menu .sub-menu {
        background-color: #67c3c1 !important;
    }

    #ast-hf-mobile-menu .menu-item > .menu-link {
        background-color: transparent !important;
        padding: 16px 20px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
        color: #ffffff !important;
        font-size: 16px !important;
        font-weight: 400 !important;
        line-height: 1.4 !important;
    }

    #ast-hf-mobile-menu .menu-item > .menu-link:hover,
    #ast-hf-mobile-menu .menu-item > .menu-link:focus {
        background-color: #5ab1b0 !important;
        color: #ffffff !important;
    }

    /* Flatten the profession choices while omitting their desktop-only parent label. */
    #ast-hf-mobile-menu > .menu-item-has-children > .menu-link[href="#"],
    #ast-hf-mobile-menu > .menu-item-has-children > .menu-link[href="#"] + .ast-menu-toggle {
        display: none !important;
    }

    #ast-hf-mobile-menu > .menu-item-has-children > .menu-link[href="#"] ~ .sub-menu {
        position: static !important;
        display: block !important;
        width: 100% !important;
        visibility: visible !important;
        opacity: 1 !important;
        transform: none !important;
    }

    #ast-hf-mobile-menu > .menu-item-has-children > .menu-link[href="#"] ~ .sub-menu .menu-link {
        padding-left: 20px !important;
    }

    #ast-hf-mobile-menu .ast-header-navigation-arrow,
    #ast-hf-mobile-menu .ast-menu-toggle {
        display: none !important;
    }
}

/* 9. Single Professional Mobile Layout & Contact Accordion */
@media screen and (max-width: 767px) {
    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh) {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
    }

    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh)
        > .wp-block-spectra-container:not(.rvcTxtColorWh) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .rvcPicWidth,
    .rvcPicWidth > .wp-block-spectra-container {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    .rvcPicWidth > .wp-block-spectra-container {
        gap: 20px !important;
    }

    .rvcPicWidth .wp-block-spectra-container,
    .rvcPicWidth > .wp-block-spectra-container > * {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .rvcPicWidth > .wp-block-spectra-container > .wp-block-spectra-container {
        width: 100% !important;
        align-self: stretch !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .rvcPicWidth .spectra-list,
    .rvcPicWidth .spectra-list-item,
    .rvcPicWidth .view-all-professionals-link,
    .rvcPicWidth a {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
    }

    .rvcPicWidth figure {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Give stacked individual profiles a more prominent, responsive portrait. */
    body.single-professional .rvcPicWidth figure:has(img) {
        width: min(250px, 100%) !important;
        max-width: 100% !important;
    }

    body.single-professional .rvcPicWidth figure:has(img) img {
        display: block;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
    }

    .rvcPicWidth h1,
    .rvcPicWidth .wp-block-post-title {
        overflow-wrap: anywhere;
    }

    .rvcTxtColorWh {
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 400px !important;
        margin: 30px auto !important;
    }

    .rvcTxtColorWh.rvc-contact-accordion .rvc-contact-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 12px 16px !important;
        border: 1px solid #ffffff !important;
        border-radius: 4px !important;
        color: #ffffff !important;
        cursor: pointer;
        text-align: left !important;
    }

    .rvcTxtColorWh.rvc-contact-accordion .wp-block-uagb-advanced-heading {
        margin-bottom: 0 !important;
    }

    .rvcTxtColorWh.rvc-contact-accordion .rvc-contact-toggle::after {
        content: "";
        width: 9px;
        height: 9px;
        flex: 0 0 9px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transition: transform 0.2s ease-in-out;
    }

    .rvcTxtColorWh.rvc-contact-open .rvc-contact-toggle {
        margin-bottom: 15px !important;
    }

    .rvcTxtColorWh.rvc-contact-open .rvc-contact-toggle::after {
        transform: rotate(225deg);
    }

    .rvcTxtColorWh.rvc-contact-accordion .rvc-contact-toggle:focus-visible {
        outline: 3px solid #1b6cb8;
        outline-offset: 3px;
    }

    .rvcTxtColorWh.rvc-contact-accordion:not(.rvc-contact-open) .wpcf7 {
        display: none !important;
    }
}

@media screen and (max-width: 430px) {
    body.single-professional #content > .ast-container {
        padding-right: 5px !important;
        padding-left: 5px !important;
    }

    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh),
    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh)
        > .wp-block-spectra-container:not(.rvcTxtColorWh) {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

}

/* 10. Single Professional Tablet & Small-Laptop Layout */
@media screen and (min-width: 768px) and (max-width: 1000px) {
    body.single-professional .wp-block-spectra-container:has(.rvcPicWidth),
    body.single-professional .wp-block-spectra-container:has(> .rvcTxtColorWh),
    body.single-professional .rvcPicWidth {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh) {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
    }

    body.single-professional .spectra-is-root-container:has(> .rvcTxtColorWh)
        > .wp-block-spectra-container:not(.rvcTxtColorWh) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body.single-professional .rvcTxtColorWh {
        position: static !important;
        width: min(100%, 34rem) !important;
        min-width: 0 !important;
        max-width: 34rem !important;
        margin: 30px auto !important;
    }
}

/* Tighten the handoff from Articles to the stacked contact form. */
@media screen and (max-width: 1000px) {
    body.single-professional .professional-articles-list {
        margin-top: -16px !important;
        margin-bottom: 16px !important;
    }

    body.single-professional .rvcTxtColorWh {
        margin-top: 12px !important;
        margin-bottom: 20px !important;
    }
}

/* Restores paragraph spacing inside dynamic Content blocks & containers */
.rvcTxtColorWh p,
.wp-block-uagb-container p,
.entry-content p {
    margin-bottom: 1.25em !important;
    line-height: 1.6 !important;
}

/* Fixes spacing specifically for paragraph blocks inside the post body area */
.entry-content > p, 
.entry-content p:not(:last-child) {
    margin-bottom: 1.25em !important;
}

/* 11. Article Archive Featured Image Cropping */
article.ast-archive-post .post-thumb img.wp-post-image {
    object-fit: cover !important;
    object-position: center center !important;
}

/* ==========================================================================
   12. Global Site Builder Footer
   ========================================================================== */

.rvc-global-footer {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 50px 24px 34px !important;
    box-sizing: border-box !important;
    background-color: #f5f6f6 !important;
    color: #384344;
}

.rvc-footer-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 1080px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.rvc-footer-nav {
    width: 100% !important;
    margin: 0 0 34px !important;
}

.rvc-footer-nav .wp-block-navigation__responsive-container,
.rvc-footer-nav .wp-block-navigation__responsive-container-content {
    width: 100% !important;
}

.rvc-footer-nav .wp-block-navigation__container,
.rvc-footer-nav .rvc-footer-nav__list {
    display: grid !important;
    grid-template-columns: repeat(4, max-content) !important;
    gap: 14px 24px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    align-items: center !important;
    justify-content: center !important;
}

.rvc-footer-nav .wp-block-navigation-item,
.rvc-footer-nav .menu-item {
    position: relative;
    display: flex !important;
    justify-content: center !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center;
}

.rvc-footer-nav .wp-block-navigation-item:not(:nth-child(4n)):not(:last-child)::after,
.rvc-footer-nav .menu-item:not(:nth-child(4n)):not(:last-child)::after {
    content: "|";
    position: absolute;
    top: 50%;
    right: -14px;
    color: #a7adae;
    transform: translateY(-50%);
}

/* With Sitemap and Privacy Policy added, center their two-link third row. */
@media screen and (min-width: 768px) {
    .rvc-footer-nav .menu-item:nth-child(9):nth-last-child(2) {
        grid-column: 2;
    }

    .rvc-footer-nav .menu-item:nth-child(10):last-child {
        grid-column: 3;
    }
}

.rvc-footer-nav .wp-block-navigation-item__content,
.rvc-footer-nav .menu-item > a {
    padding: 0 !important;
    color: #384344 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    text-decoration: none !important;
    text-transform: none !important;
    overflow-wrap: anywhere;
}

@media screen and (min-width: 768px) and (max-width: 899px) {
    .rvc-footer-nav .wp-block-navigation__container,
    .rvc-footer-nav .rvc-footer-nav__list {
        gap: 14px 18px !important;
    }

    .rvc-footer-nav .wp-block-navigation-item:not(:nth-child(4n)):not(:last-child)::after,
    .rvc-footer-nav .menu-item:not(:nth-child(4n)):not(:last-child)::after {
        right: -11px;
    }

    .rvc-footer-nav .wp-block-navigation-item__content,
    .rvc-footer-nav .menu-item > a {
        font-size: 13px !important;
    }
}

.rvc-footer-nav .wp-block-navigation-item__content:hover,
.rvc-footer-nav .wp-block-navigation-item__content:focus,
.rvc-footer-nav .current-menu-item > .wp-block-navigation-item__content,
.rvc-footer-nav .menu-item > a:hover,
.rvc-footer-nav .menu-item > a:focus,
.rvc-footer-nav .current-menu-item > a {
    color: #5ca9b2 !important;
}

.rvc-footer-nav .wp-block-navigation-item__content:focus-visible,
.rvc-global-footer a:focus-visible {
    outline: 2px solid #5ca9b2;
    outline-offset: 3px;
}

.rvc-footer-divider {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 18px !important;
    border: 0 !important;
    border-top: 1px solid #dce0e0 !important;
}

.rvc-footer-description,
.rvc-footer-disclaimer,
.rvc-footer-copyright,
.rvc-footer-credit {
    width: 100%;
    margin: 0 !important;
    color: #4c5657 !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
}

.rvc-footer-description,
.rvc-footer-disclaimer,
.rvc-footer-copyright {
    font-size: 14px !important;
}

.rvc-footer-description,
.rvc-footer-disclaimer {
    margin-bottom: 18px !important;
}

.rvc-footer-copyright {
    margin-bottom: 20px !important;
}

.rvc-global-footer a {
    color: #5ca9b2;
    text-decoration: none;
}

.rvc-global-footer a:hover,
.rvc-global-footer a:focus {
    color: #397f87;
    text-decoration: underline;
}

.rvc-footer-credit {
    margin-bottom: 24px !important;
    color: #a1a8a9 !important;
    text-align: center;
}

.rvc-footer-logo {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center;
}

.rvc-footer-logo a {
    display: inline-flex;
}

.rvc-footer-logo img {
    display: block;
    width: 170px !important;
    max-width: 100% !important;
    height: auto !important;
}

@media screen and (max-width: 767px) {
    .rvc-global-footer {
        padding: 0 15px 30px !important;
    }

    .rvc-footer-nav {
        margin: 0 0 24px !important;
    }

    .rvc-footer-nav .wp-block-navigation__container,
    .rvc-footer-nav .rvc-footer-nav__list {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
    }

    .rvc-footer-nav .wp-block-navigation-item,
    .rvc-footer-nav .menu-item {
        width: 100% !important;
        border-bottom: 1px solid #e2e5e5;
    }

    .rvc-footer-nav .wp-block-navigation-item:not(:nth-child(4n)):not(:last-child)::after,
    .rvc-footer-nav .menu-item:not(:nth-child(4n)):not(:last-child)::after {
        content: none;
    }

    .rvc-footer-nav .wp-block-navigation-item__content,
    .rvc-footer-nav .menu-item > a {
        display: block !important;
        width: 100% !important;
        padding: 13px 8px !important;
        font-size: 14px !important;
    }

    .rvc-footer-divider {
        display: none !important;
    }

    .rvc-footer-description,
    .rvc-footer-disclaimer,
    .rvc-footer-copyright {
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    .rvc-footer-credit {
        font-size: 13px !important;
        line-height: 1.65 !important;
    }

    .rvc-footer-description,
    .rvc-footer-disclaimer {
        margin-bottom: 18px !important;
    }

    .rvc-footer-copyright {
        margin-bottom: 20px !important;
    }

    .rvc-footer-credit {
        margin-bottom: 22px !important;
    }

    .rvc-footer-logo img {
        width: 155px !important;
    }
}

/* ==========================================================================
   13. Home Page - Hero Slider
   ========================================================================== */

/* Break the Home page composition out of Astra's content-width container. */
.rvc-home {
    width: 100vw !important;
    max-width: none !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding: 0 !important;
    gap: 0 !important;
    overflow: hidden !important;
}

/* Remove Astra's normal article spacing only on the block-built Home page. */
.site-content:has(.rvc-home),
.site-content:has(.rvc-home) > .ast-container,
.site-content:has(.rvc-home) .site-main,
.site-content:has(.rvc-home) article,
.site-content:has(.rvc-home) .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home-slider {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.rvc-home-slide {
    position: relative !important;
    display: block !important;
    min-height: 400px !important;
    overflow: hidden !important;
    background-color: #eef3f2;
}

/* Spectra inserts this wrapper between each Slide and its child blocks. */
.rvc-home .rvc-home-slide > .slide-content {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 400px !important;
    min-height: 400px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* A light left-side wash keeps the live text readable over every photograph. */
.rvc-home-slide::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.78) 0%,
        rgba(255, 255, 255, 0.58) 34%,
        rgba(255, 255, 255, 0) 68%
    );
}

.rvc-home .rvc-home-slide .rvc-home-slide-image,
.rvc-home .rvc-home-slide figure.wp-block-image:first-child {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 400px !important;
    margin: 0 !important;
}

.rvc-home .rvc-home-slide .rvc-home-slide-image img,
.rvc-home .rvc-home-slide figure.wp-block-image:first-child img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.rvc-home .rvc-home-slide .rvc-home-slide-content {
    position: absolute !important;
    z-index: 2;
    top: 50% !important;
    left: max(32px, calc((100vw - 1140px) / 2)) !important;
    display: block !important;
    width: min(440px, calc(100% - 64px)) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%);
    background: transparent !important;
}

.rvc-home .rvc-home-slide-content h2 {
    max-width: 390px;
    margin: 0 0 18px !important;
    color: #384344 !important;
    font-size: clamp(38px, 3.4vw, 52px) !important;
    font-weight: 400 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.02em;
}

.rvc-home .rvc-home-slide-content p {
    margin: 0 !important;
    color: #536061 !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
}

/* Keep Spectra's pagination compact and centered along the image edge. */
.rvc-home-slider .swiper-pagination {
    /* The slider has a 20px strip below the image, so 40px from the
       slider edge places the bullets 20px above the image edge. */
    bottom: 40px !important;
    z-index: 10;
    display: flex !important;
    align-items: flex-end;
    justify-content: center;
    height: 20px;
    line-height: 0;
    pointer-events: auto !important;
}

.rvc-home-slider .swiper-pagination-bullet {
    position: relative;
    flex: 0 0 20px;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
    transform: none !important;
    scale: 1 !important;
    cursor: pointer;
    pointer-events: auto !important;
}

.rvc-home-slider .swiper-pagination-bullet::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #9f9a95;
    opacity: 0.7;
    transform: translateX(-50%);
    pointer-events: none;
}

.rvc-home-slider .swiper-pagination-bullet-active::before {
    background-color: #625e5a;
    opacity: 1;
}

.rvc-home-slider .swiper-pagination-bullet:focus-visible {
    outline: 2px solid #397f87;
    outline-offset: -3px;
}

@media screen and (max-width: 767px) {
    .rvc-home-slide {
        min-height: 0 !important;
        background-color: #ffffff;
    }

    .rvc-home-slide::after {
        content: none;
    }

    .rvc-home .rvc-home-slide > .slide-content {
        height: auto !important;
        min-height: 0 !important;
        background-color: #f5f6f6 !important;
    }

    .rvc-home .rvc-home-slide .rvc-home-slide-image,
    .rvc-home .rvc-home-slide figure.wp-block-image:first-child {
        position: relative !important;
        inset: auto !important;
        /* Preserve the image's responsive height while adding the extra
           depth used by the legacy mobile hero (122px at 390px wide). */
        height: max(122px, calc(26.1vw + 20px)) !important;
        min-height: 122px !important;
        overflow: hidden;
    }

    .rvc-home .rvc-home-slide .rvc-home-slide-image img,
    .rvc-home .rvc-home-slide figure.wp-block-image:first-child img {
        height: 100% !important;
        object-fit: cover !important;
    }

    .rvc-home .rvc-home-slide .rvc-home-slide-content {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        /* Keep short slide copy from collapsing into the pagination band.
           Longer mobile copy can still increase the panel height naturally. */
        min-height: 200px !important;
        margin: 0 !important;
        padding: 26px 24px 54px !important;
        transform: none;
        box-sizing: border-box !important;
        background-color: #f5f6f6 !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
    }

    .rvc-home .rvc-home-slide-content > .uagb-container-inner-blocks-wrap {
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
    }

    .rvc-home .rvc-home-slide-content h2 {
        max-width: 100%;
        margin-bottom: 14px !important;
        font-size: clamp(40px, 11.3vw, 46px) !important;
        font-weight: 600 !important;
        line-height: 1.12 !important;
    }

    .rvc-home .rvc-home-slide-content p {
        font-size: 17px !important;
        line-height: 1.55 !important;
    }

}

@media (prefers-reduced-motion: reduce) {
    .rvc-home-slider .swiper-wrapper {
        transition-duration: 0.01ms !important;
    }
}

/* ==========================================================================
   14. Home Page - Highlights
   ========================================================================== */

.rvc-home .rvc-home-highlights {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 88px max(24px, calc((100vw - 1080px) / 2)) 42px !important;
    gap: 36px !important;
    box-sizing: border-box !important;
    background-color: #ffffff !important;
}

/* Some Spectra versions add a layout wrapper inside the section. Flatten it
   so the three named card containers remain the grid items. */
.rvc-home .rvc-home-highlights > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-home .rvc-home-highlight {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    background: transparent !important;
}

.rvc-home .rvc-home-highlight > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home .rvc-home-highlight figure.wp-block-image {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 17 / 10;
    margin: 0 0 26px !important;
    overflow: hidden;
}

.rvc-home .rvc-home-highlight figure.wp-block-image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.rvc-home .rvc-home-highlight h2 {
    margin: 0 !important;
    color: #263b45 !important;
    font-size: 29px !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.015em;
}

.rvc-home .rvc-home-highlight h2::after {
    content: "";
    display: block;
    width: 54px;
    height: 3px;
    margin: 22px 0 24px;
    background-color: #f5a33b;
}

.rvc-home .rvc-home-highlight p {
    margin: 0 !important;
    color: #263b45 !important;
    font-size: 16px !important;
    line-height: 1.48 !important;
}

@media screen and (max-width: 767px) {
    .rvc-home .rvc-home-highlights {
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 54px 24px 42px !important;
        gap: 32px !important;
    }

    .rvc-home .rvc-home-highlight figure.wp-block-image {
        margin-bottom: 22px !important;
    }

    .rvc-home .rvc-home-highlight h2 {
        font-size: 27px !important;
        font-weight: 600 !important;
        line-height: 1.12 !important;
    }

    .rvc-home .rvc-home-highlight h2::after {
        margin: 20px 0 24px;
    }
}

/* ==========================================================================
   15. Home Page - Collaborative Banner
   ========================================================================== */

.rvc-home .rvc-home-collaborative-banner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 100px !important;
    margin: 0 !important;
    padding: 22px 24px !important;
    box-sizing: border-box !important;
    border-bottom: 1px solid #cde6ec;
    background: linear-gradient(135deg, #67c2c0 0%, #72b1b7 100%) !important;
}

.rvc-home .rvc-home-collaborative-banner > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home .rvc-home-collaborative-banner h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em;
    text-align: center !important;
    text-transform: uppercase;
    text-shadow: 1px 1px 1px #000000;
}

@media screen and (max-width: 767px) {
    .rvc-home .rvc-home-collaborative-banner {
        min-height: 100px !important;
        padding: 22px 20px !important;
    }

    .rvc-home .rvc-home-collaborative-banner h2 {
        font-size: clamp(25px, 7.2vw, 30px) !important;
        line-height: 1.16 !important;
    }
}

/* ==========================================================================
   16. Home Page - Compare Your Options
   ========================================================================== */

.rvc-home .rvc-home-comparison {
    display: grid !important;
    grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 80px max(24px, calc((100vw - 1100px) / 2)) 72px !important;
    gap: 48px !important;
    box-sizing: border-box !important;
    background-color: #ffffff !important;
}

.rvc-home .rvc-home-comparison > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-home .rvc-home-comparison > h2,
.rvc-home .rvc-home-comparison > .uagb-container-inner-blocks-wrap > h2 {
    margin: 0 !important;
    color: #384344 !important;
    font-size: 40px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em;
}

.rvc-home .rvc-home-comparison h2::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    margin-top: 24px;
    background-color: #f5a33b;
}

.rvc-home .rvc-home-comparison-table {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.rvc-home .rvc-home-comparison-table table {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed;
    color: #263b45;
    font-size: 16px;
    line-height: 1.45;
}

.rvc-home .rvc-home-comparison-table th,
.rvc-home .rvc-home-comparison-table td {
    padding: 14px 13px !important;
    border: 1px solid #d2d6d7 !important;
    text-align: left;
    vertical-align: top;
    overflow-wrap: break-word;
}

.rvc-home .rvc-home-comparison-table thead th {
    background-color: #f0f0f0 !important;
    color: #263b45 !important;
    font-weight: 700 !important;
    vertical-align: middle;
}

.rvc-home .rvc-home-comparison-table tbody td:first-child {
    font-weight: 700;
}

.rvc-home .rvc-home-comparison-table tbody td:nth-child(2) {
    background-color: #e7f3f6 !important;
}

@media screen and (max-width: 899px) {
    .rvc-home .rvc-home-comparison {
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 60px 32px 58px !important;
        gap: 36px !important;
    }

    .rvc-home .rvc-home-comparison-table table {
        min-width: 720px;
    }
}

@media screen and (max-width: 767px) {
    .rvc-home .rvc-home-comparison {
        padding: 52px 24px 50px !important;
        gap: 32px !important;
    }

    .rvc-home .rvc-home-comparison > h2,
    .rvc-home .rvc-home-comparison > .uagb-container-inner-blocks-wrap > h2 {
        font-size: 36px !important;
    }

    .rvc-home .rvc-home-comparison h2::after {
        margin-top: 20px;
    }
}

/* ==========================================================================
   17. Home Page - Find a Professional CTA
   ========================================================================== */

.rvc-home .rvc-home-professional-cta {
    display: grid !important;
    grid-template-columns: minmax(0, 44%) minmax(0, 56%) !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: none !important;
    height: 480px !important;
    min-height: 480px !important;
    max-height: 480px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.rvc-home .rvc-home-professional-cta > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-home .rvc-home-professional-cta-content {
    display: flex !important;
    position: relative !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 60px 48px 60px max(48px, calc((100vw - 1170px) / 2)) !important;
    box-sizing: border-box !important;
    grid-column: 1;
    background: linear-gradient(135deg, #67c3c1 0%, #67a6af 100%) !important;
    overflow: hidden !important;
}

.rvc-home .rvc-home-professional-cta-content::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 60%;
    right: -50%;
    background: rgba(255, 255, 255, 0.075);
    transform: skew(-50deg);
    pointer-events: none;
}

.rvc-home .rvc-home-professional-cta-content > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    position: relative;
    z-index: 1;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home .rvc-home-professional-cta-content h2 {
    width: 340px;
    max-width: 100%;
    margin: 0 0 42px !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: clamp(46px, 4.25vw, 54px) !important;
    font-weight: 300 !important;
    line-height: 1.06 !important;
    letter-spacing: -0.02em;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}

.rvc-home .rvc-home-professional-cta-content h2 strong {
    font-weight: 700;
}

.rvc-home .rvc-home-professional-cta-content .wp-block-buttons {
    justify-content: flex-start !important;
    width: 340px !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.rvc-home .rvc-home-professional-cta-button {
    margin: 0 !important;
}

.rvc-home .rvc-home-professional-cta-button .wp-block-button__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 188px;
    min-height: 56px;
    padding: 14px 24px !important;
    border: 1px solid #ffffff !important;
    border-radius: 3px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em;
    text-decoration: none !important;
}

.rvc-home .rvc-home-professional-cta-button .wp-block-button__link::before {
    content: "";
    display: block;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-right: 12px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.25' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E");
}

.rvc-home .rvc-home-professional-cta-button .wp-block-button__link:hover,
.rvc-home .rvc-home-professional-cta-button .wp-block-button__link:focus-visible {
    border-color: #ffffff !important;
    background-color: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
}

.rvc-home .rvc-home-professional-cta-button .wp-block-button__link:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 3px;
}

.rvc-home .rvc-home-professional-cta-image {
    display: block !important;
    position: relative !important;
    grid-column: 2;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 480px !important;
    margin: 0 !important;
    overflow: hidden;
}

.rvc-home .rvc-home-professional-cta-image img {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 480px !important;
    object-fit: cover !important;
    object-position: center center !important;
}

@media screen and (min-width: 900px) and (max-width: 1244px) {
    .rvc-home .rvc-home-professional-cta-content {
        align-items: center !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    .rvc-home .rvc-home-professional-cta-content h2,
    .rvc-home .rvc-home-professional-cta-content .wp-block-buttons {
        width: min(340px, 100%) !important;
    }
}

@media screen and (max-width: 899px) {
    .rvc-home .rvc-home-professional-cta {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    .rvc-home .rvc-home-professional-cta-content {
        align-items: stretch !important;
        min-height: 0 !important;
        padding: 36px 32px !important;
    }

    .rvc-home .rvc-home-professional-cta-content > .uagb-container-inner-blocks-wrap {
        max-width: none !important;
    }

    .rvc-home .rvc-home-professional-cta-content h2 {
        width: 100% !important;
        max-width: none !important;
        text-align: center !important;
    }

    .rvc-home .rvc-home-professional-cta-content .wp-block-buttons {
        justify-content: center !important;
        width: 100% !important;
    }

    .rvc-home .rvc-home-professional-cta-image {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-home .rvc-home-professional-cta-content {
        padding: 36px 24px !important;
    }

    .rvc-home .rvc-home-professional-cta-content h2 {
        max-width: none;
        margin-bottom: 28px !important;
        font-size: clamp(38px, 10.75vw, 44px) !important;
    }

    .rvc-home .rvc-home-professional-cta-content .wp-block-buttons,
    .rvc-home .rvc-home-professional-cta-button,
    .rvc-home .rvc-home-professional-cta-button .wp-block-button__link {
        width: 100% !important;
    }
}

/* ==========================================================================
   18. Home Page - About NWCD
   ========================================================================== */

.rvc-home .rvc-home-about {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 72px 24px 76px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-home .rvc-home-about > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-home .rvc-home-about-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 44%) minmax(0, 56%) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 1170px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
    box-sizing: border-box !important;
}

.rvc-home .rvc-home-about-inner > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-home .rvc-home-about-heading,
.rvc-home .rvc-home-about-copy {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home .rvc-home-about-heading {
    padding-right: 72px !important;
    box-sizing: border-box !important;
}

.rvc-home .rvc-home-about-heading > .uagb-container-inner-blocks-wrap,
.rvc-home .rvc-home-about-copy > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-home .rvc-home-about-heading h2 {
    margin: 0 !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: clamp(38px, 3.25vw, 44px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em;
}

.rvc-home .rvc-home-about-heading h2::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    margin-top: 22px;
    background: #f6a13a;
}

.rvc-home .rvc-home-about-copy p {
    margin: 0 !important;
    color: #384344 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
}

@media screen and (max-width: 899px) {
    .rvc-home .rvc-home-about {
        padding: 54px 32px 60px !important;
    }

    .rvc-home .rvc-home-about-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        max-width: 680px !important;
        gap: 34px !important;
    }

    .rvc-home .rvc-home-about-heading {
        padding-right: 0 !important;
    }

    .rvc-home .rvc-home-about-heading h2 {
        font-size: clamp(32px, 6vw, 40px) !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-home .rvc-home-about {
        padding: 42px 24px 48px !important;
    }

    .rvc-home .rvc-home-about-inner {
        gap: 30px !important;
    }

    .rvc-home .rvc-home-about-heading h2 {
        font-size: clamp(28px, 8vw, 34px) !important;
        line-height: 1.18 !important;
    }

    .rvc-home .rvc-home-about-heading h2::after {
        margin-top: 20px;
    }

    .rvc-home .rvc-home-about-copy p {
        font-size: 15px !important;
        line-height: 1.7 !important;
    }
}

/* ==========================================================================
   19. Interior Pages - Dynamic Articles List
   ========================================================================== */

.rvc-interior-articles {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 72px 24px 80px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-interior-articles > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 1170px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-interior-articles-heading {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 0 28px !important;
    color: #667077 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

.rvc-interior-articles-heading::before,
.rvc-interior-articles-heading::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: #e4e7e8;
}

.rvc-articles-query {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-articles-post-template {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.rvc-articles-post-template > li,
.rvc-articles-post-template > .wp-block-post {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-article-row {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 20px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border-bottom: 1px solid #e4e7e8 !important;
    box-sizing: border-box !important;
}

.rvc-articles-post-template > li:first-child .rvc-article-row,
.rvc-articles-post-template > .wp-block-post:first-child .rvc-article-row {
    border-top: 1px solid #e4e7e8 !important;
}

.rvc-article-date {
    justify-self: start !important;
    width: 100% !important;
    max-width: 100px !important;
    margin: 0 !important;
    padding: 7px 8px !important;
    border-radius: 15% !important;
    box-sizing: border-box !important;
    background: #f6a13a !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.rvc-article-date time {
    color: inherit !important;
}

.rvc-article-title,
.rvc-article-title a {
    margin: 0 !important;
    color: #667077 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    text-decoration: none !important;
}

.rvc-article-title a:hover,
.rvc-article-title a:focus {
    color: #67c3c1 !important;
}

.rvc-article-title a:focus-visible {
    outline: 2px solid #384344;
    outline-offset: 3px;
}

@media screen and (max-width: 767px) {
    .rvc-interior-articles {
        padding: 48px 24px 56px !important;
    }

    .rvc-interior-articles-heading {
        gap: 14px !important;
        margin-bottom: 22px !important;
        font-size: 24px !important;
    }

    .rvc-article-row {
        grid-template-columns: 96px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 10px 0 !important;
    }

    .rvc-article-date {
        max-width: 90px !important;
        padding: 7px 5px !important;
        font-size: 10px !important;
    }

    .rvc-article-title,
    .rvc-article-title a {
        font-size: 13px !important;
    }
}

/* ==========================================================================
   20. The Process - Interior Page Shell and Content
   ========================================================================== */

.rvc-interior-page {
    width: 100vw !important;
    max-width: none !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding: 0 !important;
    gap: 0 !important;
    overflow: visible !important;
    overflow-x: clip !important;
}

.site-content:has(.rvc-interior-page),
.site-content:has(.rvc-interior-page) > .ast-container,
.site-content:has(.rvc-interior-page) .site-main,
.site-content:has(.rvc-interior-page) article,
.site-content:has(.rvc-interior-page) .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-process > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-process-hero {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 48px) !important;
    max-width: 1280px !important;
    height: clamp(280px, 31.25vw, 400px) !important;
    margin: 40px auto 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    background: #f7f7f7 !important;
    overflow: hidden !important;
}

.rvc-process-hero > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-process-hero-image {
    display: block !important;
    flex: 0 0 110% !important;
    width: 110% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 -5% !important;
}

.rvc-process-hero-image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
}

.rvc-process-main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 68px 24px 44px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-process-main > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-process .rvc-interior-main-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    grid-template-areas:
        "content sidebar"
        "articles sidebar" !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    column-gap: 48px !important;
    row-gap: 0 !important;
    box-sizing: border-box !important;
}

.rvc-process .rvc-interior-main-inner > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-process-content,
.rvc-process-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-process-content {
    grid-area: content;
}

.rvc-process-sidebar {
    grid-area: sidebar;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
}

.admin-bar .rvc-process-sidebar {
    top: 56px !important;
}

.rvc-process-content h1 {
    margin: 0 0 24px !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.015em !important;
}

.rvc-process-content h2 {
    margin: 36px 0 18px !important;
    color: #5f6576 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
}

.rvc-process-content p,
.rvc-process-content li {
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.68 !important;
}

.rvc-process-content > p,
.rvc-process-content > .wp-block-group__inner-container > p {
    margin: 0 0 22px !important;
}

.rvc-process-steps {
    width: 100% !important;
    margin: 30px 0 28px !important;
    padding: 28px 26px 24px !important;
    border-left: 4px solid #314956 !important;
    box-sizing: border-box !important;
    background: #f7f7f7 !important;
}

.rvc-process-steps > .wp-block-group__inner-container {
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-process-steps h2,
.rvc-process-steps h3:first-child {
    margin: 0 0 24px !important;
    color: #5f6576 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
}

.rvc-process-steps h3,
.rvc-process-steps h4 {
    margin: 20px 0 4px !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

.rvc-process-steps p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.rvc-process-steps h2 + h3,
.rvc-process-steps h3:first-child + h3 {
    margin-top: 0 !important;
}

.rvc-process-content .rvc-process-meeting-goals,
.rvc-process-content ul.wp-block-list {
    margin: 4px 0 24px !important;
    padding-left: 21px !important;
}

.rvc-process-content .rvc-process-meeting-goals li,
.rvc-process-content ul.wp-block-list li {
    margin: 0 0 10px !important;
    padding-left: 2px !important;
}

.rvc-process-content .rvc-comparison-table {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 34px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

.rvc-process-content .rvc-comparison-table table {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    color: #263b45 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.rvc-process-content .rvc-comparison-table th,
.rvc-process-content .rvc-comparison-table td {
    padding: 12px 10px !important;
    border: 1px solid #d2d6d7 !important;
    text-align: left !important;
    vertical-align: top !important;
    overflow-wrap: break-word !important;
}

.rvc-process-content .rvc-comparison-table thead th {
    background: #f0f0f0 !important;
    color: #263b45 !important;
    font-weight: 700 !important;
    vertical-align: middle !important;
}

.rvc-process-content .rvc-comparison-table tbody td:first-child {
    font-weight: 700 !important;
}

.rvc-process-content .rvc-comparison-table tbody td:nth-child(2) {
    background: #e7f3f6 !important;
}

.rvc-downloads {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-downloads h2,
.rvc-downloads h3 {
    margin: 0 0 18px !important;
}

.rvc-downloads p {
    margin: 0 0 12px !important;
}

.rvc-downloads a {
    color: #67aeb5 !important;
    text-decoration: none !important;
}

.rvc-downloads a:hover,
.rvc-downloads a:focus {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-process-sidebar > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-sidebar-cta {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    width: 340px !important;
    max-width: 100% !important;
    min-height: 340px !important;
    margin: 0 0 32px auto !important;
    padding: 42px 34px !important;
    box-sizing: border-box !important;
    background: linear-gradient(135deg, #67c3c1 0%, #67a6af 100%) !important;
    overflow: hidden !important;
}

.rvc-process-articles {
    grid-area: articles;
    width: 100% !important;
    max-width: none !important;
    padding: 44px 0 36px !important;
}

.rvc-process-articles > .uagb-container-inner-blocks-wrap {
    max-width: none !important;
}

.rvc-process-articles .rvc-interior-articles-heading {
    justify-content: center !important;
}

.rvc-process-articles .rvc-interior-articles-heading::before,
.rvc-process-articles .rvc-interior-articles-heading::after {
    display: none !important;
}

.rvc-sidebar-cta::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0 -40% 0 58%;
    background: rgba(255, 255, 255, 0.075);
    transform: skew(-50deg);
    pointer-events: none;
}

.rvc-sidebar-cta > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    position: relative !important;
    z-index: 1;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-sidebar-cta-heading {
    margin: 0 0 40px !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 40px !important;
    font-weight: 300 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.02em !important;
}

.rvc-sidebar-cta-heading strong {
    font-weight: 700 !important;
}

.rvc-sidebar-cta-buttons,
.rvc-sidebar-cta-button {
    width: 100% !important;
    margin: 0 !important;
}

.rvc-sidebar-cta-buttons {
    justify-content: stretch !important;
}

.rvc-sidebar-cta-button .wp-block-button__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 13px 18px !important;
    border: 1px solid #ffffff !important;
    border-radius: 3px !important;
    box-sizing: border-box !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em !important;
    text-decoration: none !important;
}

.rvc-sidebar-cta-button .wp-block-button__link::before {
    content: "";
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.25' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E");
}

.rvc-sidebar-cta-button .wp-block-button__link:hover,
.rvc-sidebar-cta-button .wp-block-button__link:focus-visible {
    background: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
}

.rvc-sidebar-cta-button .wp-block-button__link:focus-visible {
    outline: 3px solid #ffffff !important;
    outline-offset: 3px !important;
}

@media screen and (max-width: 1000px) {
    .rvc-process .rvc-interior-main-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "content"
            "sidebar"
            "articles" !important;
        max-width: 952px !important;
        gap: 0 !important;
    }

    .rvc-process-sidebar {
        display: block !important;
        position: static !important;
        top: auto !important;
        align-self: auto !important;
        margin-top: 36px !important;
    }

    .rvc-sidebar-cta {
        width: 100% !important;
        min-height: 375px !important;
        margin: 0 !important;
        padding: 48px 40px !important;
    }

    .rvc-sidebar-cta > .uagb-container-inner-blocks-wrap {
        align-items: center !important;
        max-width: 760px !important;
        text-align: center !important;
    }

    .rvc-sidebar-cta-heading {
        margin-bottom: 34px !important;
        text-align: center !important;
    }

    .rvc-sidebar-cta-buttons,
    .rvc-sidebar-cta-button {
        max-width: 300px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

@media screen and (max-width: 899px) {
    .rvc-process-hero {
        width: calc(100% - 64px) !important;
        height: auto !important;
        margin-top: 32px !important;
        background: transparent !important;
        overflow: visible !important;
    }

    .rvc-process-hero > .uagb-container-inner-blocks-wrap,
    .rvc-process-hero-image,
    .rvc-process-hero-image img {
        width: 100% !important;
        height: auto !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .rvc-process-hero-image {
        flex-basis: 100% !important;
    }

    .rvc-process-main {
        padding: 54px 32px 38px !important;
    }

    .rvc-process .rvc-interior-main-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "content"
            "sidebar"
            "articles" !important;
        max-width: 760px !important;
        gap: 0 !important;
    }

    .rvc-process-sidebar {
        margin-top: 32px !important;
    }

    .rvc-process-content .rvc-comparison-table table {
        min-width: 720px !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-process-hero {
        width: calc(100% - 32px) !important;
        margin-top: 24px !important;
    }

    .rvc-process-main {
        padding: 42px 24px 32px !important;
    }

    .rvc-process-articles {
        padding: 36px 0 24px !important;
    }

    .rvc-sidebar-cta {
        min-height: 270px !important;
        padding: 38px 24px !important;
    }

    .rvc-sidebar-cta-heading {
        margin-bottom: 28px !important;
        font-size: 34px !important;
    }

    .rvc-process-content h1 {
        margin-bottom: 20px !important;
        font-size: 31px !important;
    }

    .rvc-process-content h2 {
        margin-top: 32px !important;
        font-size: 25px !important;
    }

    .rvc-process-content p,
    .rvc-process-content li {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }

    .rvc-process-steps {
        margin: 26px 0 !important;
        padding: 24px 20px 21px !important;
    }

    .rvc-process-steps h2,
    .rvc-process-steps h3:first-child {
        font-size: 22px !important;
    }

    .rvc-process-steps h3,
    .rvc-process-steps h4 {
        font-size: 16px !important;
    }

    .rvc-process-steps p {
        font-size: 14px !important;
    }
}

/* ==========================================================================
   22. In The News - Index Page
   ========================================================================== */

.rvc-news > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-hero {
    display: grid !important;
    position: relative !important;
    z-index: 5 !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    width: 100vw !important;
    max-width: none !important;
    min-height: 260px !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 0 !important;
    gap: 0 !important;
    box-sizing: border-box !important;
    background: linear-gradient(135deg, #67c3c1 0%, #67a6af 100%) !important;
    overflow: visible !important;
}

.rvc-news-hero::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0 -12% 0 54%;
    background: rgba(255, 255, 255, 0.055);
    transform: skew(-45deg);
    pointer-events: none;
}

.rvc-news-hero > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-news-hero-title-panel,
.rvc-news-hero-utility-panel {
    display: flex !important;
    position: relative !important;
    z-index: 1;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 260px !important;
    margin: 0 !important;
    padding: 44px max(32px, calc((100vw - 1120px) / 2)) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

.rvc-news-hero-title-panel {
    justify-content: center !important;
    padding-right: 52px !important;
}

.rvc-news-hero-utility-panel {
    justify-content: center !important;
    padding-left: 52px !important;
}

.rvc-news-hero-title-panel > .uagb-container-inner-blocks-wrap,
.rvc-news-hero-utility-panel > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 508px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.rvc-news-hero-title-panel > .uagb-container-inner-blocks-wrap {
    justify-content: flex-start !important;
}

.rvc-news-hero-utility-panel > .uagb-container-inner-blocks-wrap {
    justify-content: flex-end !important;
}

.rvc-news-hero-heading,
.rvc-news-hero-subtitle {
    margin: 0 !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
}

.entry-content .rvc-news p.rvc-news-hero-subtitle {
    margin: 0 !important;
}

.rvc-news-hero-heading {
    font-size: 52px !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.025em !important;
}

.rvc-news-hero-subtitle {
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: right !important;
}

.rvc-news-hero-categories-menu {
    display: none !important;
}

.rvc-news-main {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 68px 24px 56px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-news-main > .uagb-container-inner-blocks-wrap,
.rvc-news .rvc-interior-main-inner > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-news .rvc-interior-main-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    grid-template-areas: "content sidebar" !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    column-gap: 48px !important;
    row-gap: 0 !important;
    box-sizing: border-box !important;
}

.rvc-news-content,
.rvc-news-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-content {
    grid-area: content;
}

.rvc-news-sidebar {
    grid-area: sidebar;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
}

.admin-bar .rvc-news-sidebar {
    top: 56px !important;
}

.rvc-news-content > .uagb-container-inner-blocks-wrap,
.rvc-news-sidebar > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-query,
.rvc-news-post-template {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-post-template {
    display: block !important;
    list-style: none !important;
}

.rvc-news-post-template > li.wp-block-post {
    width: 100% !important;
    margin: 0 0 34px !important;
    padding: 0 0 34px !important;
    border-bottom: 1px solid #d2d8da !important;
    box-sizing: border-box !important;
}

.rvc-news-post-template > li.wp-block-post:last-child {
    margin-bottom: 0 !important;
}

.rvc-news-post-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    gap: 5px 16px !important;
    color: #8b979c !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-transform: none !important;
}

.rvc-news-post-meta > .wp-block-group__inner-container {
    display: contents !important;
}

.rvc-news-post-author,
.rvc-news-post-categories {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font: inherit !important;
    text-transform: none !important;
}

.rvc-news-post-author::before {
    content: "By: ";
}

.rvc-news-post-categories::before {
    content: "In: ";
}

.rvc-news-post-author a,
.rvc-news-post-categories a {
    color: #67aeb5 !important;
    font: inherit !important;
    text-decoration: none !important;
}

.rvc-news-post-author a:hover,
.rvc-news-post-author a:focus-visible,
.rvc-news-post-categories a:hover,
.rvc-news-post-categories a:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-post-title {
    margin: 0 0 18px !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    line-height: 1.24 !important;
    letter-spacing: -0.015em !important;
}

.rvc-news-post-title a {
    color: inherit !important;
    text-decoration: none !important;
}

.rvc-news-post-title a:hover,
.rvc-news-post-title a:focus-visible {
    color: #67aeb5 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-post-body {
    display: grid !important;
    grid-template-columns: 260px minmax(0, 1fr) !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 24px !important;
}

.rvc-news-post-image-column,
.rvc-news-post-text-column {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-post-featured-image,
.rvc-news-post-featured-image a {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-post-featured-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    margin: 0 !important;
    object-fit: cover !important;
}

.rvc-news-post-excerpt,
.rvc-news-post-excerpt .wp-block-post-excerpt__excerpt {
    margin: 0 !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.62 !important;
}

.rvc-news-post-excerpt .wp-block-post-excerpt__more-text {
    margin: 13px 0 0 !important;
}

.rvc-news-post-excerpt .wp-block-post-excerpt__more-link {
    color: #67aeb5 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.rvc-news-post-excerpt .wp-block-post-excerpt__more-link:hover,
.rvc-news-post-excerpt .wp-block-post-excerpt__more-link:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-pagination {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    align-items: center !important;
    width: 100% !important;
    margin: 38px 0 0 !important;
    padding: 0 !important;
    gap: 20px !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
}

.rvc-news-pagination-previous {
    grid-column: 1;
    justify-self: start;
}

.rvc-news-pagination-numbers {
    grid-column: 2;
    justify-self: center;
}

.rvc-news-pagination-next {
    grid-column: 3;
    justify-self: end;
}

.rvc-news-pagination a,
.rvc-news-pagination .page-numbers {
    color: #67aeb5 !important;
    text-decoration: none !important;
}

.rvc-news-pagination .page-numbers {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 5px 8px !important;
    box-sizing: border-box !important;
}

.rvc-news-pagination .page-numbers.current {
    background: #67aeb5 !important;
    color: #ffffff !important;
}

.rvc-news-pagination a:hover,
.rvc-news-pagination a:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-categories-panel {
    width: 100% !important;
    margin: 0 0 32px !important;
    padding: 0 !important;
}

.rvc-news-categories-panel > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-categories-heading {
    margin: 0 0 28px !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
}

.rvc-news-categories-heading::after {
    content: "";
    display: block;
    width: 64px;
    height: 3px;
    margin-top: 18px;
    background: #f2a23a;
}

.rvc-news-sidebar-category-list {
    width: 100% !important;
    margin: 0 !important;
    padding: 18px 28px !important;
    box-sizing: border-box !important;
    background: #f5f6f6 !important;
}

.rvc-news-sidebar-category-list ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.rvc-news-sidebar-category-list li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #d9dedf !important;
}

.rvc-news-sidebar-category-list li:last-child {
    border-bottom: 0 !important;
}

.rvc-news-sidebar-category-list a {
    display: block !important;
    padding: 13px 0 !important;
    color: #67aeb5 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
}

.rvc-news-sidebar-category-list a:hover,
.rvc-news-sidebar-category-list a:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news .rvc-sidebar-cta {
    margin-top: 0 !important;
}

@media screen and (max-width: 1051px) {
    .rvc-news-hero {
        min-height: 230px !important;
    }

    .rvc-news-hero-title-panel,
    .rvc-news-hero-utility-panel {
        min-height: 230px !important;
        padding: 36px 32px !important;
    }

    .rvc-news-hero-title-panel {
        padding-right: 24px !important;
    }

    .rvc-news-hero-utility-panel {
        padding-left: 24px !important;
    }

    .rvc-news-hero-heading {
        font-size: 44px !important;
    }

    .rvc-news-hero-subtitle {
        display: none !important;
    }

    .rvc-news-hero-categories-menu {
        display: block !important;
        position: relative !important;
        z-index: 30 !important;
        width: 100% !important;
        max-width: 230px !important;
        margin: 0 clamp(24px, 4vw, 48px) 0 auto !important;
        color: #ffffff !important;
        font-family: "Open Sans", sans-serif !important;
    }

    .rvc-news-hero-categories-menu summary {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        min-height: 52px !important;
        padding: 13px 18px !important;
        border: 1px solid rgba(255, 255, 255, 0.9) !important;
        border-radius: 3px !important;
        box-sizing: border-box !important;
        color: #ffffff !important;
        cursor: pointer;
        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: 0.02em !important;
        text-transform: none !important;
        list-style: none !important;
    }

    .rvc-news-hero-categories-menu summary::-webkit-details-marker {
        display: none;
    }

    .rvc-news-hero-categories-menu summary::before {
        content: "\2630";
        margin-right: 12px;
        font-size: 18px;
        font-weight: 400;
        line-height: 1;
    }

    .rvc-news-hero-categories-menu summary::after {
        content: "+";
        margin-left: auto;
        font-size: 20px;
        font-weight: 400;
        line-height: 1;
    }

    .rvc-news-hero-categories-menu[open] summary::after {
        content: "\2212";
    }

    .rvc-news-hero-category-list {
        position: absolute !important;
        z-index: 40 !important;
        top: calc(100% + 6px) !important;
        right: 0 !important;
        width: 100% !important;
        max-height: 310px !important;
        margin: 0 !important;
        padding: 8px 18px !important;
        border: 1px solid #d9dedf !important;
        border-radius: 3px !important;
        box-sizing: border-box !important;
        background: #ffffff !important;
        box-shadow: 0 8px 22px rgba(38, 59, 69, 0.18) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        list-style: none !important;
    }

    .rvc-news-hero-category-list ul {
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        list-style: none !important;
    }

    .rvc-news-hero-category-list li {
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 1px solid #e2e6e7 !important;
    }

    .rvc-news-hero-category-list li:last-child {
        border-bottom: 0 !important;
    }

    .rvc-news-hero-category-list a {
        display: block !important;
        padding: 11px 0 !important;
        color: #384344 !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 1.35 !important;
        text-decoration: none !important;
    }

    .rvc-news-hero-category-list a:hover,
    .rvc-news-hero-category-list a:focus-visible {
        color: #67aeb5 !important;
        text-decoration: underline !important;
        text-underline-offset: 3px;
    }

    .rvc-news-main {
        padding: 56px 32px 44px !important;
    }

    .rvc-news .rvc-interior-main-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "content"
            "sidebar" !important;
        max-width: 952px !important;
        gap: 0 !important;
    }

    .rvc-news-sidebar {
        display: block !important;
        position: static !important;
        top: auto !important;
        align-self: auto !important;
        margin-top: 44px !important;
    }

    .rvc-news-categories-panel {
        display: none !important;
    }

    .rvc-news .rvc-sidebar-cta {
        width: 100% !important;
        min-height: 320px !important;
        margin: 0 !important;
        padding: 46px 40px !important;
    }

    .rvc-news .rvc-sidebar-cta > .uagb-container-inner-blocks-wrap {
        align-items: center !important;
        max-width: 760px !important;
        text-align: center !important;
    }

    .rvc-news .rvc-sidebar-cta-heading {
        margin-bottom: 34px !important;
        text-align: center !important;
    }

    .rvc-news .rvc-sidebar-cta-buttons,
    .rvc-news .rvc-sidebar-cta-button {
        max-width: 300px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-news-hero {
        grid-template-columns: minmax(0, 1fr) !important;
        min-height: 0 !important;
    }

    .rvc-news-hero-title-panel,
    .rvc-news-hero-utility-panel {
        grid-column: 1 !important;
        min-height: 0 !important;
        padding: 32px 24px !important;
    }

    .rvc-news-hero-title-panel {
        padding-bottom: 14px !important;
    }

    .rvc-news-hero-utility-panel {
        padding-top: 14px !important;
        padding-bottom: 34px !important;
    }

    .rvc-news-hero-title-panel > .uagb-container-inner-blocks-wrap,
    .rvc-news-hero-utility-panel > .uagb-container-inner-blocks-wrap {
        justify-content: center !important;
        max-width: none !important;
    }

    .rvc-news-hero-heading {
        font-size: 38px !important;
        text-align: center !important;
    }

    .rvc-news-hero-categories-menu {
        max-width: 200px !important;
        margin: 0 auto !important;
    }

    .rvc-news-main {
        padding: 42px 24px 34px !important;
    }

    .rvc-news-post-template > li.wp-block-post {
        margin-bottom: 28px !important;
        padding-bottom: 28px !important;
    }

    .rvc-news-post-title {
        margin-bottom: 16px !important;
        font-size: 23px !important;
    }

    .rvc-news-post-body {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    .rvc-news-post-image-column {
        max-width: 420px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .rvc-news-pagination {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        margin-top: 30px !important;
        gap: 18px 12px !important;
    }

    .rvc-news-pagination-previous {
        grid-column: 1;
        grid-row: 2;
    }

    .rvc-news-pagination-numbers {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .rvc-news-pagination-next {
        grid-column: 2;
        grid-row: 2;
    }

    .rvc-news .rvc-sidebar-cta {
        min-height: 270px !important;
        padding: 38px 24px !important;
    }
}

/* 23. Archive indexes: retain author attribution but omit visible dates */
body.archive .ast-archive-post .entry-meta {
    font-size: 0 !important;
}

body.archive .ast-archive-post .entry-meta .posted-by {
    display: inline !important;
    font-size: 13px !important;
}

body.archive .ast-archive-post .entry-meta .posted-by::before {
    content: "By ";
}

body.archive .ast-archive-post .entry-meta .posted-on {
    display: none !important;
}

/* ==========================================================================
   24. In The News - Category Archive Template
   ========================================================================== */

body.blog #content > .ast-container,
body.category #content > .ast-container {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.blog #primary.rvc-news-index-primary,
body.category #primary.rvc-news-archive-primary {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* ==========================================================================
   25. Find a Professional - Reusable Directory
   ========================================================================== */

/* Astra adds 2em above page-builder content. Retain a small separation while
   bringing this page's full-width hero approximately 20px closer to the header. */
.ast-page-builder-template .site-main > article:has(.rvc-professionals) {
    padding-top: 12px !important;
}

.rvc-professionals {
    gap: 0 !important;
    row-gap: 0 !important;
}

.rvc-professionals > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    row-gap: 0 !important;
}

.rvc-professionals-hero {
    display: grid !important;
    grid-template-columns: 44.1667% 55.8333% !important;
    align-items: stretch !important;
    width: 100vw !important;
    max-width: none !important;
    height: 340px !important;
    min-height: 340px !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 0 !important;
    gap: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.rvc-professionals-hero > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-professionals-hero-title-panel,
.rvc-professionals-hero-image-panel {
    width: 100% !important;
    max-width: none !important;
    height: 340px !important;
    min-width: 0 !important;
    min-height: 340px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.rvc-professionals-hero-title-panel {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 48px !important;
    background: linear-gradient(135deg, #67c3c1 0%, #67a6af 100%) !important;
    overflow: hidden !important;
}

.rvc-professionals-hero-title-panel::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background: rgba(38, 59, 69, 0.07);
    clip-path: polygon(84% 0, 100% 0, 100% 100%, 36% 100%);
    pointer-events: none;
}

.rvc-professionals-hero-title-panel > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    position: relative !important;
    z-index: 1;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-professionals-hero-heading {
    width: 100% !important;
    max-width: 500px !important;
    margin: 0 !important;
}

.rvc-professionals-hero-heading .uagb-heading-text {
    margin: 0 !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
}

.rvc-professionals-hero-image-panel,
.rvc-professionals-hero-image-panel > .uagb-container-inner-blocks-wrap,
.rvc-professionals-hero-image,
.rvc-professionals-hero-image img {
    height: 100% !important;
    min-height: 340px !important;
}

.rvc-professionals-hero-image-panel {
    overflow: hidden !important;
}

.rvc-professionals-hero-image-panel > .uagb-container-inner-blocks-wrap,
.rvc-professionals-hero-image,
.rvc-professionals-hero-image a {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-professionals-hero-image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.rvc-professionals-main {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 36px 24px 72px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

/* Current Spectra releases may render a Container's child blocks directly
   rather than adding the older inner wrapper. Center either structure. */
.rvc-professionals-main > :not(.uagb-container-inner-blocks-wrap) {
    width: 100% !important;
    max-width: 1120px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
}

.rvc-professionals-main > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-professionals-articles {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 24px 50px !important;
    box-sizing: border-box !important;
}

.rvc-professionals-articles > :not(.uagb-container-inner-blocks-wrap) {
    width: 100% !important;
    max-width: 1120px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
}

.rvc-professionals-articles > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-professionals-articles .rvc-interior-articles-heading {
    margin-bottom: 14px !important;
}

.rvc-professionals-articles .rvc-articles-post-template > li:first-child .rvc-article-row,
.rvc-professionals-articles .rvc-articles-post-template > .wp-block-post:first-child .rvc-article-row {
    border-top: 0 !important;
}

.rvc-interior-articles .rvc-article-row {
    position: relative !important;
    padding-right: 48px !important;
    cursor: pointer;
    transition: background-color 0.18s ease;
}

.rvc-interior-articles .rvc-article-row::after {
    content: "\203A";
    position: absolute;
    z-index: 3;
    top: 50%;
    right: 17px;
    color: #67aeb5;
    font-family: Arial, sans-serif;
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
    opacity: 0;
    pointer-events: none;
    transform: translate(6px, -52%);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.rvc-interior-articles .rvc-article-row:hover,
.rvc-interior-articles .rvc-article-row:focus-within {
    background-color: #f3f5f5 !important;
}

.rvc-interior-articles .rvc-article-row:hover::after,
.rvc-interior-articles .rvc-article-row:focus-within::after {
    opacity: 1;
    transform: translate(0, -52%);
}

/* Extend the existing title link across the complete visual row. Its
   accessible name remains the article title, and the date stays presentational. */
.rvc-interior-articles .rvc-article-title a::after {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0;
}

.rvc-interior-articles .rvc-article-row:focus-within {
    outline: 2px solid #384344;
    outline-offset: 2px;
}

.rvc-interior-articles .rvc-article-title a:focus-visible {
    outline: none;
}

@media (prefers-reduced-motion: reduce) {
    .rvc-interior-articles .rvc-article-row,
    .rvc-interior-articles .rvc-article-row::after {
        transition: none;
    }
}

.rvc-professionals-intro {
    margin: 0 auto 46px !important;
    padding: 15px 18px !important;
    border-left: 3px solid #eaa24c !important;
    background: #fafafa !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.rvc-professional-directory {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}

.rvc-directory-group {
    width: 100%;
    margin: 0 0 64px;
}

.rvc-directory-group:last-child {
    margin-bottom: 0;
}

.rvc-directory-group__heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 0 0 34px !important;
    color: #4f5b61 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 32px !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
}

.rvc-directory-group__heading::before {
    content: "";
    flex: 0 0 40px;
    width: 40px;
    height: 3px;
    background: #eaa24c;
}

.rvc-directory-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    gap: 48px 34px;
    list-style: none !important;
}

.rvc-directory-grid__item {
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-directory-card {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: start;
    min-width: 0;
    gap: 24px;
}

.rvc-directory-card__image-link,
.rvc-directory-card__photo,
.rvc-directory-card__photo-placeholder {
    display: block;
    width: 150px;
    height: 225px;
}

.rvc-directory-card__image-link {
    overflow: hidden;
}

.rvc-directory-card__photo {
    object-fit: cover;
    object-position: center top;
    transition: transform 0.25s ease;
}

.rvc-directory-card__image-link:hover .rvc-directory-card__photo,
.rvc-directory-card__image-link:focus-visible .rvc-directory-card__photo {
    transform: scale(1.025);
}

.rvc-directory-card__image-link:focus-visible,
.rvc-directory-card__name a:focus-visible,
.rvc-directory-card__phone a:focus-visible,
.rvc-directory-card__profile-link:focus-visible {
    outline: 3px solid #1b6cb8;
    outline-offset: 3px;
}

.rvc-directory-card__photo-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e9eeee;
    color: #667077;
    font-family: "Raleway", sans-serif;
    font-size: 56px;
    font-weight: 300;
}

.rvc-directory-card__details {
    min-width: 0;
    padding-top: 1px;
}

.rvc-directory-card__name {
    margin: 0 0 18px !important;
    color: #4f5b61 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 19px !important;
    font-weight: 400 !important;
    line-height: 1.32 !important;
}

.rvc-directory-card__name a {
    color: inherit !important;
    text-decoration: none !important;
}

.rvc-directory-card__name a:hover {
    color: #67aeb5 !important;
}

.rvc-directory-card__address,
.rvc-directory-card__phone {
    margin: 0 0 12px !important;
    color: #384344 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-style: normal !important;
    line-height: 1.65 !important;
    overflow-wrap: anywhere;
}

.rvc-directory-card__phone a {
    color: inherit !important;
    text-decoration: none !important;
}

.rvc-directory-card__phone a:hover {
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-directory-card__profile-link {
    display: inline-block;
    color: #67aeb5 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.rvc-directory-card__profile-link:hover {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-directory-empty {
    margin: 0 !important;
    padding: 18px 20px !important;
    background: #f5f6f6;
}

@media (prefers-reduced-motion: reduce) {
    .rvc-directory-card__photo {
        transition: none;
    }
}

@media screen and (max-width: 1000px) {
    .rvc-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
    .rvc-professionals-hero,
    .rvc-professionals-hero-title-panel,
    .rvc-professionals-hero-image-panel,
    .rvc-professionals-hero-image-panel > .uagb-container-inner-blocks-wrap,
    .rvc-professionals-hero-image,
    .rvc-professionals-hero-image img {
        height: 280px !important;
        min-height: 280px !important;
    }

    .rvc-professionals-hero {
        grid-template-columns: 50% 50% !important;
        margin-top: 16px !important;
    }

    .rvc-professionals-hero-title-panel {
        padding: 38px !important;
    }

    .rvc-professionals-hero-heading .uagb-heading-text {
        font-size: 36px !important;
    }

    .rvc-professionals-main {
        padding: 34px 32px 58px !important;
    }

    .rvc-directory-card {
        grid-template-columns: 130px minmax(0, 1fr);
        gap: 20px;
    }

    .rvc-directory-card__image-link,
    .rvc-directory-card__photo,
    .rvc-directory-card__photo-placeholder {
        width: 130px;
        height: 195px;
    }
}

@media screen and (max-width: 767px) {
    .rvc-professionals-hero {
        grid-template-columns: minmax(0, 1fr) !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    .rvc-professionals-hero-title-panel,
    .rvc-professionals-hero-image-panel {
        grid-column: 1 !important;
        height: auto !important;
    }

    .rvc-professionals-hero-title-panel {
        min-height: 190px !important;
        padding: 34px 28px !important;
    }

    .rvc-professionals-hero-heading .uagb-heading-text {
        font-size: 33px !important;
        text-align: center !important;
    }

    .rvc-professionals-hero-image-panel {
        display: none !important;
    }

    .rvc-professionals-main {
        padding: 28px 24px 48px !important;
    }

    .rvc-professionals-articles {
        padding: 0 24px 50px !important;
    }

    .rvc-professionals-intro {
        margin-bottom: 42px !important;
        padding: 13px 16px !important;
        font-size: 15px !important;
    }

    .rvc-directory-group {
        margin-bottom: 52px;
    }

    .rvc-directory-group__heading {
        margin-bottom: 28px !important;
        gap: 14px;
        font-size: 27px !important;
    }

    .rvc-directory-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 34px;
    }

    .rvc-directory-card {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 20px;
    }

    .rvc-directory-card__image-link,
    .rvc-directory-card__photo,
    .rvc-directory-card__photo-placeholder {
        width: 140px;
        height: 210px;
    }
}

@media screen and (max-width: 430px) {
    .rvc-professionals-main {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .rvc-professionals-articles {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .rvc-directory-card {
        grid-template-columns: 112px minmax(0, 1fr);
        gap: 16px;
    }

    .rvc-directory-card__image-link,
    .rvc-directory-card__photo,
    .rvc-directory-card__photo-placeholder {
        width: 112px;
        height: 168px;
    }

    .rvc-directory-card__name {
        margin-bottom: 11px !important;
        font-size: 17px !important;
    }

    .rvc-directory-card__address,
    .rvc-directory-card__phone,
    .rvc-directory-card__profile-link {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}

.rvc-news-archive .rvc-news-post-body--no-image {
    grid-template-columns: minmax(0, 1fr) !important;
}

.rvc-news-archive .rvc-news-hero-heading {
    font-size: 38px !important;
}

/* ===========================================================================
   26. Collaborative Divorce Attorneys - Rebuild
   =========================================================================== */

.rvc-attorneys {
    gap: 0 !important;
}

.rvc-attorneys > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-attorneys-hero {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 230px !important;
    margin: 0 !important;
    padding: 42px 24px !important;
    box-sizing: border-box !important;
    background: linear-gradient(105deg, #659fa8 0%, #659fa8 50%, #4e8791 50%, #4e8791 100%) !important;
    text-align: center !important;
    overflow: hidden !important;
}

.rvc-attorneys-hero > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 940px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-attorneys-hero-heading,
.rvc-attorneys-hero-heading .uagb-heading-text {
    width: 100% !important;
    max-width: 940px !important;
    margin: 0 auto !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
    text-align: center !important;
    white-space: normal !important;
}

.rvc-attorneys-main {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 42px 24px 72px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-attorneys-main > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-attorneys-main > :not(.uagb-container-inner-blocks-wrap) {
    width: 100% !important;
    max-width: 1120px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
}

.rvc-attorneys-directory-heading {
    margin-top: 0 !important;
    margin-bottom: 28px !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

.rvc-attorneys .rvc-directory-group {
    margin: 0 !important;
}

.rvc-attorneys .rvc-professional-directory--portrait .rvc-directory-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    justify-items: center;
    gap: 52px 28px;
}

.rvc-attorneys .rvc-directory-card--portrait {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 230px;
    gap: 0;
    text-align: center;
}

.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__image-link,
.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__photo,
.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__photo-placeholder {
    width: 200px;
    height: 300px;
    max-width: 100%;
    border-radius: 5px;
}

.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__details {
    width: 100%;
    padding-top: 12px;
}

.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__name {
    margin: 0 0 2px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

.rvc-attorneys .rvc-directory-card__city {
    margin: 0 0 12px !important;
    color: #667077 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 12px !important;
    font-style: italic !important;
    line-height: 1.35 !important;
}

.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__profile-link {
    display: inline-block;
    padding: 9px 13px;
    border-radius: 3px;
    background: #659fa8;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__profile-link:hover,
.rvc-attorneys .rvc-directory-card--portrait .rvc-directory-card__profile-link:focus-visible {
    background: #4e8791;
    color: #ffffff !important;
    text-decoration: none !important;
}

.rvc-attorneys-education {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 24px 50px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-attorneys-education > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
}

.rvc-attorneys-education .rvc-attorneys-divider {
    display: block !important;
    width: 100% !important;
    max-width: 850px !important;
    height: 0 !important;
    margin: 0 auto 36px !important;
    border: 0 !important;
    border-top: 1px solid #cccccc !important;
    background: none !important;
    opacity: 1 !important;
}

.rvc-attorneys-education p,
.rvc-attorneys-education h2,
.rvc-attorneys-education h3 {
    width: 100% !important;
    max-width: 850px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.rvc-attorneys-education p {
    color: #4f595b;
    font-size: 15px;
    line-height: 1.7;
}

.rvc-attorneys-education h2 {
    margin: 36px auto 14px !important;
    color: #566063 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
}

.rvc-attorneys-education h2.rvc-attorneys-comparison-heading {
    max-width: 900px !important;
}

.rvc-attorneys-education .wp-block-table {
    width: 100% !important;
    max-width: 900px !important;
    margin: 18px auto 34px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

.rvc-attorneys-education .wp-block-table table {
    width: 100% !important;
    min-width: 720px !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    color: #263b45 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.rvc-attorneys-education .wp-block-table th,
.rvc-attorneys-education .wp-block-table td {
    padding: 12px 10px !important;
    border: 1px solid #d2d6d7 !important;
    text-align: left !important;
    vertical-align: top !important;
    overflow-wrap: break-word !important;
}

.rvc-attorneys-education .wp-block-table thead th {
    background: #f0f0f0 !important;
    color: #263b45 !important;
    font-weight: 700 !important;
    vertical-align: middle !important;
}

.rvc-attorneys-education .wp-block-table tbody td:first-child {
    font-weight: 700 !important;
}

.rvc-attorneys-education .wp-block-table tbody td:nth-child(2) {
    background: #e7f3f6 !important;
}

@media screen and (max-width: 974px) {
    .rvc-attorneys .rvc-professional-directory--portrait .rvc-directory-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 729px) {
    .rvc-attorneys .rvc-professional-directory--portrait .rvc-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 767px) {
    .rvc-attorneys-hero {
        min-height: 205px !important;
        padding: 36px 24px !important;
    }

    .rvc-attorneys-hero-heading,
    .rvc-attorneys-hero-heading .uagb-heading-text {
        font-size: clamp(28px, 7vw, 36px) !important;
    }

    .rvc-attorneys-main {
        padding: 36px 24px 56px !important;
    }

    .rvc-attorneys-directory-heading {
        font-size: 27px !important;
    }
}

@media screen and (max-width: 540px) {
    .rvc-attorneys .rvc-professional-directory--portrait .rvc-directory-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 38px;
    }
}

@media screen and (max-width: 430px) {
    .rvc-attorneys-main {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .rvc-attorneys-education {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }
}

/* Center and size the one-member family card like the legacy page. */
.rvc-professional-directory--portrait[data-directory-group="family"] .rvc-directory-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
    max-width: 260px;
    margin-right: auto !important;
    margin-left: auto !important;
}

.rvc-professional-directory--portrait[data-directory-group="family"] .rvc-directory-card--portrait {
    max-width: 260px;
}

.rvc-professional-directory--portrait[data-directory-group="family"] .rvc-directory-card--portrait .rvc-directory-card__image-link,
.rvc-professional-directory--portrait[data-directory-group="family"] .rvc-directory-card--portrait .rvc-directory-card__photo,
.rvc-professional-directory--portrait[data-directory-group="family"] .rvc-directory-card--portrait .rvc-directory-card__photo-placeholder {
    width: 260px;
    height: 320px;
}

@media screen and (min-width: 900px) {
    .rvc-news-archive .rvc-news-hero-title-panel {
        padding-right: 24px !important;
    }

    .rvc-news-archive .rvc-news-hero-title-panel > .uagb-container-inner-blocks-wrap {
        max-width: 560px !important;
    }
}

@media screen and (min-width: 900px) and (max-width: 1051px) {
    .rvc-news-archive .rvc-news-hero {
        grid-template-columns: minmax(0, 58fr) minmax(0, 42fr) !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-news-archive .rvc-news-hero-heading {
        font-size: 32px !important;
    }
}

/* ==========================================================================
   25. In The News - Single Post Foundation
   ========================================================================== */

body.single-post #content > .ast-container {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-post #primary.rvc-news-single-primary {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.rvc-news-single .rvc-news-hero-heading {
    margin: 0 !important;
}

.rvc-news-single-main {
    padding-top: 76px !important;
    padding-bottom: 92px !important;
}

.rvc-news-single-article {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-news-single-header {
    margin: 0 0 30px !important;
}

.rvc-news-single-top-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 5px 22px !important;
    margin: 0 0 34px !important;
    color: #99a0a4 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

.rvc-news-single-top-meta::before {
    content: "";
    display: block;
    flex: 0 0 42px;
    width: 42px;
    height: 3px;
    margin-right: -6px;
    background: #f2a23a;
}

.rvc-news-single-top-meta a {
    color: #67aeb5 !important;
    text-decoration: none !important;
}

.rvc-news-single-top-meta a:hover,
.rvc-news-single-top-meta a:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-single-title {
    margin: 0 !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 32px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

.rvc-news-single-content {
    color: #4f595b !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
}

.rvc-news-single-content > :first-child {
    margin-top: 0 !important;
}

.rvc-news-single-content > :last-child {
    margin-bottom: 0 !important;
}

/* Normalize legacy opening images so the first paragraph can wrap beside them. */
@media screen and (min-width: 431px) {
    .rvc-news-single-content > p:first-child:has(> img:only-child) {
        float: left !important;
        width: auto !important;
        max-width: 45% !important;
        margin: 0 20px 12px 0 !important;
    }

    .rvc-news-single-content > p:first-child:has(> img:only-child) > img {
        display: block !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
    }

    /* Newer WordPress posts may use a direct resized figure instead. */
    .rvc-news-single-content > figure.wp-block-image.is-resized:first-child {
        float: left !important;
        width: auto !important;
        max-width: 45% !important;
        margin: 0 20px 12px 0 !important;
    }
}

.rvc-news-single-content iframe {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 16 / 9;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.rvc-news-single-content .wp-block-embed,
.rvc-news-single-content .wp-block-embed__wrapper {
    width: 100% !important;
    max-width: 100% !important;
}

/*
 * WordPress can retain an image's resized dimensions while leaving its direct
 * figure wrapper full width. Shrink-wrap that figure so Astra's article-image
 * shadow follows the image instead of drawing a wide empty white panel.
 */
.rvc-news-single-content > figure.wp-block-image.is-resized {
    display: table !important;
    width: auto !important;
    max-width: 100% !important;
}

.rvc-news-single-content > figure.wp-block-image.is-resized > img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
}

/* Separate the opening video or image from the article text that follows it. */
.rvc-news-single-content > .wp-block-embed:first-child,
.rvc-news-single-content > .wp-block-image:first-child,
.rvc-news-single-content > figure:first-child,
.rvc-news-single-content > .vid-container:first-child,
.rvc-news-single-content > .video-container:first-child,
.rvc-news-single-content > .wp-video:first-child,
.rvc-news-single-content > iframe:first-child,
.rvc-news-single-content > img:first-child {
    margin-bottom: 40px !important;
}

.rvc-news-single-footer {
    margin: 34px 0 0 !important;
    padding: 0 !important;
}

.rvc-news-single-published-date {
    margin: 0 !important;
    color: #8b9497 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

.rvc-news-author-membership-notice {
    width: 100% !important;
    max-width: 630px !important;
    margin: 26px auto 0 !important;
    padding: 20px 22px !important;
    border: 1px solid #aeb5b7 !important;
    box-sizing: border-box !important;
    background: #f3f4f4 !important;
    box-shadow: 9px 9px 0 rgba(56, 67, 68, 0.28) !important;
    color: #4f595b !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    font-style: normal !important;
    line-height: 1.55 !important;
}

.rvc-news-author-membership-notice p {
    margin: 0 !important;
}

.rvc-news-author-membership-notice a {
    color: #67aeb5 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.rvc-news-author-membership-notice a:hover,
.rvc-news-author-membership-notice a:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.rvc-news-single-sidebar {
    min-width: 0 !important;
}

.rvc-news-author-panel {
    width: 100% !important;
    margin: 0 0 42px !important;
    padding: 0 !important;
}

.rvc-news-sidebar-heading {
    margin: 0 0 28px !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

.rvc-news-sidebar-heading::after {
    content: "";
    display: block;
    width: 64px;
    height: 3px;
    margin-top: 18px;
    background: #f2a23a;
}

.rvc-news-author-card {
    display: grid !important;
    grid-template-columns: minmax(0, 150px) minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 0 28px !important;
}

.rvc-news-author-image,
.rvc-news-author-image img {
    display: block !important;
    width: 100% !important;
}

.rvc-news-author-image img {
    height: auto !important;
    aspect-ratio: 2 / 3;
    object-fit: cover !important;
}

.rvc-news-author-details {
    min-width: 0 !important;
    color: #566063 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.rvc-news-author-name,
.rvc-news-author-address {
    margin: 0 0 18px !important;
}

.rvc-news-author-profile-link {
    color: #67aeb5 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.rvc-news-author-profile-link:hover,
.rvc-news-author-profile-link:focus-visible {
    color: #384344 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

@media screen and (max-width: 1051px) {
    .rvc-news-single-main {
        padding-top: 56px !important;
        padding-bottom: 44px !important;
    }

    .rvc-news-single-sidebar {
        margin-top: 52px !important;
    }

    .rvc-news-author-panel {
        max-width: 620px !important;
        margin-right: auto !important;
        margin-bottom: 48px !important;
        margin-left: auto !important;
    }

    .rvc-news-single-sidebar .rvc-news-sidebar-heading {
        text-align: center !important;
    }

    .rvc-news-single-sidebar .rvc-news-sidebar-heading::after {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .rvc-news-author-card {
        grid-template-columns: minmax(0, 150px) minmax(0, 260px) !important;
        justify-content: center !important;
    }

    .rvc-news-author-details {
        text-align: left !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-news-single-main {
        padding-top: 42px !important;
        padding-bottom: 34px !important;
    }

    .rvc-news-single-header {
        margin-bottom: 24px !important;
    }

    .rvc-news-single-top-meta {
        margin-bottom: 24px !important;
        gap: 4px 14px !important;
    }

    .rvc-news-single-top-meta::before {
        flex-basis: 30px;
        width: 30px;
    }

    .rvc-news-single-title {
        font-size: 27px !important;
    }

    .rvc-news-author-card {
        grid-template-columns: minmax(0, 120px) minmax(0, 260px) !important;
        justify-content: center !important;
        gap: 0 20px !important;
    }
}

@media screen and (max-width: 430px) {
    .rvc-news-single-top-meta::before {
        display: none;
    }

    .rvc-news-single-content > div.wp-block-image {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .rvc-news-single-content > div.wp-block-image:not(:first-child) {
        margin-bottom: 30px !important;
    }

    .rvc-news-single-content .wp-block-image > figure.alignleft {
        float: none !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 auto 20px !important;
    }

    .rvc-news-single-content .wp-block-image > figure.alignleft img {
        display: block !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    .rvc-news-single-sidebar .rvc-news-sidebar-heading {
        text-align: left !important;
    }

    .rvc-news-single-sidebar .rvc-news-sidebar-heading::after {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .rvc-news-author-card {
        grid-template-columns: minmax(0, 1fr) !important;
        justify-items: center !important;
        gap: 18px !important;
    }

    .rvc-news-author-image {
        max-width: 150px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .rvc-news-author-details {
        width: 100% !important;
        text-align: center !important;
    }
}

/* A restrained legacy-style shadow on the primary H1, never the site header. */
main#main h1 {
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4) !important;
}

/* Privacy Policy: preserve the Classic policy block while framing it with
   the news-style hero and a reusable Find a Professional sidebar card. */
.rvc-privacy {
    display: block !important;
}

.rvc-privacy > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rvc-privacy-hero {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100vw !important;
    max-width: none !important;
    min-height: 260px !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 48px 24px !important;
    box-sizing: border-box !important;
    background: linear-gradient(135deg, #67c3c1 0%, #67a6af 100%) !important;
    overflow: hidden !important;
}

.rvc-privacy-hero::before {
    content: "";
    position: absolute;
    inset: 0 -12% 0 54%;
    background: rgba(255, 255, 255, 0.055);
    transform: skew(-45deg);
    pointer-events: none;
}

.rvc-privacy-hero > .uagb-container-inner-blocks-wrap {
    display: flex !important;
    position: relative !important;
    z-index: 1;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.rvc-privacy-hero-heading {
    width: 100% !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-family: "Raleway", sans-serif !important;
    font-size: 52px !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;
    text-align: center !important;
}

.rvc-privacy-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 68px max(24px, calc((100vw - 1120px) / 2)) 50px !important;
    column-gap: 48px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

.rvc-privacy-main > .uagb-container-inner-blocks-wrap {
    display: contents !important;
}

.rvc-privacy-content,
.rvc-privacy-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Spectra renders these policy blocks as direct flex children; its row gap
   otherwise adds space on top of each block's own margin. */
.rvc-privacy-content {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
}

.rvc-privacy-sidebar {
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
}

.rvc-privacy-content > .uagb-container-inner-blocks-wrap,
.rvc-privacy-sidebar > .uagb-container-inner-blocks-wrap {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Copied Classic content became separate Paragraph blocks. Keep their
   spacing consistent without changing paragraph spacing on other pages. */
.rvc-privacy-content p {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

.rvc-privacy-content p:last-child {
    margin-bottom: 0 !important;
}

/* The opening numbered list and PII bullet list need their own separation
   from the following section headings. */
.rvc-privacy-content ol.wp-block-list,
.rvc-privacy-content ul.wp-block-list {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
}

.admin-bar .rvc-privacy-sidebar {
    top: 56px !important;
}

.rvc-privacy-sidebar .rvc-sidebar-cta {
    margin: 0 !important;
}

@media screen and (max-width: 1000px) {
    .rvc-privacy-main {
        grid-template-columns: minmax(0, 1fr) !important;
        padding-right: max(32px, calc((100vw - 760px) / 2)) !important;
        padding-left: max(32px, calc((100vw - 760px) / 2)) !important;
        gap: 36px !important;
    }

    .rvc-privacy-sidebar {
        position: static !important;
        top: auto !important;
    }

    .rvc-privacy-sidebar .rvc-sidebar-cta {
        width: 100% !important;
        min-height: 270px !important;
        padding: 38px 24px !important;
    }
}

@media screen and (max-width: 767px) {
    .rvc-privacy-hero {
        min-height: 190px !important;
        padding: 34px 24px !important;
    }

    .rvc-privacy-hero-heading {
        font-size: 38px !important;
        text-align: center !important;
    }

    .rvc-privacy-main {
        padding: 42px 24px 50px !important;
    }
}

/* Public Sitemap: use the Privacy shell, with readable left-aligned lists. */
.rvc-sitemap {
    width: 100%;
    overflow-x: clip;
    text-align: left;
}

@media screen and (min-width: 1001px) {
    .rvc-sitemap {
        padding-left: 50px;
        box-sizing: border-box;
    }
}

.rvc-sitemap-section + .rvc-sitemap-section {
    margin-top: 38px;
}

.rvc-sitemap h2,
.rvc-sitemap h3 {
    margin: 0 0 14px !important;
    color: #384344 !important;
    font-family: "Raleway", sans-serif !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: left !important;
}

.rvc-sitemap h2 {
    font-size: 28px !important;
}

.rvc-sitemap h3 {
    font-size: 21px !important;
}

.rvc-sitemap-category + .rvc-sitemap-category {
    margin-top: 28px;
}

.rvc-sitemap .rvc-sitemap-links {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.rvc-sitemap .rvc-sitemap-nested-links {
    padding-left: 22px !important;
}

.rvc-sitemap .rvc-sitemap-links li {
    display: list-item !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    list-style: none !important;
    line-height: 1.5 !important;
}

.rvc-sitemap .rvc-sitemap-links a,
.rvc-sitemap h3 a {
    color: #467f87 !important;
    text-decoration: none !important;
    text-underline-offset: 3px;
}

.rvc-sitemap .rvc-sitemap-links a:hover,
.rvc-sitemap .rvc-sitemap-links a:focus-visible,
.rvc-sitemap h3 a:hover,
.rvc-sitemap h3 a:focus-visible {
    color: #315d65 !important;
    text-decoration: underline !important;
}

.rvc-sitemap .rvc-sitemap-links a:focus-visible,
.rvc-sitemap h3 a:focus-visible {
    outline: 2px solid #5ca9b2;
    outline-offset: 3px;
}

.rvc-sitemap-primary .rvc-sitemap-links {
    font-size: 18px;
}

.rvc-sitemap-nested-links {
    font-size: 16px;
}

/* The footer script marks only observed headings and links. They enter as
   they reach the viewport; without JavaScript they remain visible. */
@media (prefers-reduced-motion: no-preference) {
    .rvc-sitemap {
        --rvc-sitemap-travel-x: clamp(150px, 55vw, 600px);
        --rvc-sitemap-travel-y: clamp(110px, 30vh, 240px);
    }

    .rvc-sitemap .rvc-sitemap-reveal.is-pending {
        opacity: 0;
    }

    @keyframes rvc-sitemap-from-left {
        from { opacity: 0; transform: translate3d(calc(-1 * var(--rvc-sitemap-travel-x)), 0, 0); }
        to { opacity: 1; transform: translate3d(0, 0, 0); }
    }

    @keyframes rvc-sitemap-from-right {
        from { opacity: 0; transform: translate3d(var(--rvc-sitemap-travel-x), 0, 0); }
        to { opacity: 1; transform: translate3d(0, 0, 0); }
    }

    @keyframes rvc-sitemap-from-below {
        from { opacity: 0; transform: translate3d(0, var(--rvc-sitemap-travel-y), 0); }
        to { opacity: 1; transform: translate3d(0, 0, 0); }
    }

    @keyframes rvc-sitemap-from-above {
        0% { opacity: 0; transform: translate3d(0, calc(-1 * var(--rvc-sitemap-travel-y)), 0); }
        62% { opacity: 1; transform: translate3d(0, 12px, 0); }
        76% { transform: translate3d(0, -8px, 0); }
        87% { transform: translate3d(0, 5px, 0); }
        94% { transform: translate3d(0, -2px, 0); }
        100% { opacity: 1; transform: translate3d(0, 0, 0); }
    }

    .rvc-sitemap .rvc-sitemap-from-left.is-visible {
        animation: rvc-sitemap-from-left 900ms cubic-bezier(0.2, 0.75, 0.2, 1) both;
    }

    .rvc-sitemap .rvc-sitemap-from-right.is-visible {
        animation: rvc-sitemap-from-right 900ms cubic-bezier(0.2, 0.75, 0.2, 1) both;
    }

    .rvc-sitemap .rvc-sitemap-from-below.is-visible {
        animation: rvc-sitemap-from-below 900ms cubic-bezier(0.2, 0.75, 0.2, 1) both;
    }

    .rvc-sitemap .rvc-sitemap-from-above.is-visible {
        animation: rvc-sitemap-from-above 1150ms ease-out both;
    }
}

@media screen and (max-width: 767px) {
    .rvc-sitemap h2 {
        font-size: 24px !important;
    }

    .rvc-sitemap h3 {
        font-size: 19px !important;
    }

    .rvc-sitemap-primary .rvc-sitemap-links,
    .rvc-sitemap-nested-links {
        font-size: 16px;
    }
}
