/*
==========================================================================
BLUEPRINT — FOOTER
==========================================================================
*/

.rw-footer-logo-size img {
    max-width: var( --footer-logo-size, 200px );
    width: 100%;
    height: auto;
    filter: var(--footer-logo-color);
}


.rw-footer-pad > .fl-row-content-wrap,
.rw-footer-copyright-wrapper > .fl-row-content-wrap {
    background-color: var( --cta-section-bg, var(--rw-color-tertiary) );
}

/*
==========================================================================
COMBINED CONTENT LAYOUT — [blueprint_footer_content]
==========================================================================
*/

.rw-footer-content {
    display: flex;
    align-items: flex-start;
    gap: 40px;
    width: 100%;
}

/* Nav wrapper inside combined layout */
.rw-footer-content .rw-footer-nav-wrapper {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
    flex: 1 1 0;
    min-width: 0;
}

/* Message inside combined layout */
.rw-footer-content .rw-footer-message {
    flex-shrink: 0;
}

/* 2 columns + message — nav ~55%, message ~45% */
.rw-footer-content.rw-footer-cols-2.rw-footer-has-message .rw-footer-nav-wrapper {
    flex: 0 0 55%;
}
.rw-footer-content.rw-footer-cols-2.rw-footer-has-message .rw-footer-message {
    flex: 1 1 0;
}

/* 3 columns + message — nav ~65%, message ~35% */
.rw-footer-content.rw-footer-cols-3.rw-footer-has-message .rw-footer-nav-wrapper {
    flex: 0 0 65%;
}
.rw-footer-content.rw-footer-cols-3.rw-footer-has-message .rw-footer-message {
    flex: 1 1 0;
}

/* No message — nav takes full width */
.rw-footer-content.rw-footer-no-message .rw-footer-nav-wrapper {
    flex: 1 1 100%;
}

/* Nav columns inside wrapper */
.rw-footer-content .rw-footer-col {
    flex: 1 1 0;
    min-width: 0;
}


/*
==========================================================================
STANDALONE NAV — [blueprint_footer_nav]
==========================================================================
*/

.rw-footer-nav-wrapper {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
    width: 100%;
}

.rw-footer-cols-2 .rw-footer-col {
    flex: 1 1 calc( 50% - 20px );
}

.rw-footer-cols-3 .rw-footer-col {
    flex: 1 1 calc( 33.33% - 28px );
}


/*
==========================================================================
NAV TITLE
==========================================================================
*/

.rw-footer-nav-title {
    color:          var( --footer-title-color );
    font-size:      var( --footer-title-size, inherit );
    font-weight:    var( --footer-title-weight, inherit );
    text-transform: var( --footer-title-transform, uppercase );
    letter-spacing: var( --footer-title-spacing, 0px );
    margin: 0 0 16px;
    padding: 0;
}


/*
==========================================================================
NAV LIST
==========================================================================
*/

.rw-footer-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rw-footer-nav-list li {
    margin: 0;
    padding: 0;
}

.rw-footer-nav a {
    color:          var( --footer-link-color );
    font-size:      var( --footer-link-size, inherit );
    font-weight:    var( --footer-link-weight, inherit );
    text-transform: var( --footer-link-transform, none );
    letter-spacing: var( --footer-link-spacing, 0px );
    text-decoration: underline;
    transition: color 0.2s ease;
}

.rw-footer-nav a:hover {
    color: var( --footer-link-hover );
}


/*
==========================================================================
MESSAGE BLOCK
==========================================================================
*/

.rw-footer-message {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.rw-footer-message-text {
    color:          var( --footer-message-color, inherit );
    font-size:      var( --footer-message-size, inherit );
    font-weight:    var( --footer-message-weight, inherit );
    text-transform: var( --footer-message-transform, none );
    letter-spacing: var( --footer-message-spacing, 0px );
    line-height: 1.6;
    margin: 0;
}

/*
==========================================================================
COPYRIGHT TEXT/BORDER BLOCK
==========================================================================
*/

.rw-footer-copyright-wrapper > .fl-row-content-wrap {
    border-top-width: var( --footer-copyright-border-size, 1px );
    border-color: var( --footer-copyright-border-color, #000000 );
}

.site-credits{
    color:          var( --footer-copyright-color, inherit );
    font-size:      var( --footer-copyright-size, inherit );
    font-weight:    var( --footer-copyright-weight, inherit );
    text-transform: var( --footer-copyright-transform, none );
    letter-spacing: var( --footer-copyright-spacing, 0px );
    line-height: 1.6;
    margin: 0;
}


/*
==========================================================================
NAV LINK — HEADING STYLE MODIFIERS
Mimics H2-H6 font styles on nav links when selected
==========================================================================
*/

.rw-footer-nav-list--h2 a { font-size: var( --h2-font-size, inherit ); font-family: var( --h2-font-family, inherit ); font-weight: var( --h2-font-weight, inherit ); }
.rw-footer-nav-list--h3 a { font-size: var( --h3-font-size, inherit ); font-family: var( --h3-font-family, inherit ); font-weight: var( --h3-font-weight, inherit ); }
.rw-footer-nav-list--h4 a { font-size: var( --h4-font-size, inherit ); font-family: var( --h4-font-family, inherit ); font-weight: var( --h4-font-weight, inherit ); }
.rw-footer-nav-list--h5 a { font-size: var( --h5-font-size, inherit ); font-family: var( --h5-font-family, inherit ); font-weight: var( --h5-font-weight, inherit ); }
.rw-footer-nav-list--h6 a { font-size: var( --h6-font-size, inherit ); font-family: var( --h6-font-family, inherit ); font-weight: var( --h6-font-weight, inherit ); }

/* Button rendered by rw_render_single_btn() — styled by .rw-btn + .rw-single-btn--custom in buttons.css */

/*
==========================================================================
RESPONSIVE
==========================================================================
*/

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

    .rw-footer-content {
        flex-direction: column;
        gap: 40px;
    }

    .rw-footer-content.rw-footer-cols-2.rw-footer-has-message .rw-footer-nav-wrapper,
    .rw-footer-content.rw-footer-cols-3.rw-footer-has-message .rw-footer-nav-wrapper,
    .rw-footer-content .rw-footer-message {
        flex: 1 1 100%;
        width: 100%;
    }

}

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

    .rw-footer-nav-wrapper,
    .rw-footer-content .rw-footer-nav-wrapper {
        display: none;
    }

    .rw-footer-cols-2 .rw-footer-col,
    .rw-footer-cols-3 .rw-footer-col,
    .rw-footer-content .rw-footer-col {
        flex: 1 1 100%;
    }

}