/*
 * Isolated third-party sidebar widgets — layouts 3 and 4.
 * Provider code is rendered inside srcdoc iframes so CMS theme rules cannot
 * change its dimensions, typography, lists, images or internal spacing.
 */
.cms-sidebar-widget-editor-target{
    box-sizing:border-box;
    display:block;
    max-width:100%;
    overflow:visible;
    width:100%;
}

#widget_edit .cms-sidebar-widgets,
#widget_edit .cms-sidebar-widget{
    margin:0 !important;
}

.cms-sidebar-widgets{
    align-items:flex-start;
    box-sizing:border-box;
    display:flex;
    flex-wrap:wrap;
    gap:clamp(18px,3vw,38px);
    justify-content:center;
    max-width:100%;
    min-width:0;
    overflow:visible;
    padding:0;
    width:100%;
}

.cms-sidebar-widget{
    align-items:flex-start;
    box-sizing:border-box;
    display:flex;
    flex:0 0 auto;
    justify-content:center;
    max-width:100%;
    min-width:0;
    overflow:visible;
    padding:0;
}

.cms-sidebar-widget--native{
    align-items:stretch;
    flex:1 1 100%;
    justify-content:stretch;
    width:100%;
}

.cms-sidebar-widget-native{
    box-sizing:border-box;
    color:inherit;
    display:block;
    font-family:inherit;
    font-size:inherit;
    line-height:inherit;
    max-width:100%;
    min-width:0;
    text-align:inherit;
    width:100%;
}

/* Native editorial widgets must follow the site's text font. Icon fonts stay untouched. */
.cms-sidebar-widget-native p,
.cms-sidebar-widget-native a,
.cms-sidebar-widget-native span,
.cms-sidebar-widget-native strong,
.cms-sidebar-widget-native b,
.cms-sidebar-widget-native em,
.cms-sidebar-widget-native small,
.cms-sidebar-widget-native li,
.cms-sidebar-widget-native label,
.cms-sidebar-widget-native button,
.cms-sidebar-widget-native input,
.cms-sidebar-widget-native textarea,
.cms-sidebar-widget-native select{
    font-family:inherit;
}

.cms-sidebar-widget-frame{
    background:transparent;
    border:0;
    box-shadow:none;
    display:block;
    flex:none;
    margin:0;
    max-width:100%;
    min-height:1px;
    overflow:hidden;
    padding:0;
}

.cms-footer-widget-content,
.cms-footer-widget-content #widget_edit,
.cms-contact-widget-content{
    overflow:visible;
}

@media screen and (max-width:640px){
    .cms-sidebar-widgets{
        align-items:center;
        flex-direction:column;
        flex-wrap:nowrap;
        gap:18px;
    }

    .cms-sidebar-widget{
        width:100%;
    }
}
