

/* ---- Desktop sidebar widget spacing ---- */
#secondary .widget,
#secondary .sidebar-widget{
    margin-bottom:5px!important;
    padding-bottom:2px!important;
}
#secondary .widget:first-child,
#secondary .sidebar-widget:first-child{
    margin-top:5px!important;
    padding-top:0!important;
}
#secondary .sidebar-logo{
    margin-bottom:5px!important;
    padding-bottom:1px!important;
}
#secondary .sidebar-logo img{
    padding:0!important;
    margin-bottom:5px!important;
}
/* Targeted spacing (not wildcard) */
#secondary .widget ul{margin-bottom:4px!important}
#secondary .widget li{margin-bottom:2px!important}
#secondary .widget p{margin-bottom:4px!important}
#secondary .widget-title{margin-bottom:4px!important}

/* ---- Header / logo vertical rhythm ---- */
.site-branding{margin-bottom:5px}
.site-header{padding-bottom:0;margin-bottom:0}

@media screen and (min-width:59.6875em){
    .site-content #secondary{
        padding-top:0!important;
        margin-top:-8em!important;
    }
    .site-header{
        margin-top:4%!important;
    }
}

/* ---- Mobile: dark slide-out sidebar ---- */
@media screen and (max-width:59.6875em){
    #sidebar,
    .site-header,
    #secondary{
        background:#000!important;
        color:#fff!important;
    }
    #sidebar,
    #sidebar p,
    #sidebar li,
    #sidebar .widget,
    #sidebar .widget-title,
    .site-title a,
    .site-description{
        color:#fff!important;
    }
    #sidebar a,
    #sidebar a:visited,
    #secondary a,
    #secondary a:visited,
    .main-navigation a,
    .social-navigation a{
        color:#fff!important;
    }
    #sidebar a:hover,
    #sidebar a:focus,
    .main-navigation a:hover,
    .main-navigation a:focus{
        color:#f5c542!important;
    }
    .main-navigation,
    .main-navigation ul,
    .main-navigation li{
        background:transparent!important;
    }
    .main-navigation li,
    .widget{
        border-color:rgba(255,255,255,0.15)!important;
    }
    .secondary-toggle{
        background:#000!important;
        color:#fff!important;
        border-color:rgba(255,255,255,0.25)!important;
    }
    .secondary-toggle:hover,
    .secondary-toggle:focus{
        background:#111!important;
        color:#fff!important;
    }
    #sidebar input[type="search"],
    #sidebar input[type="text"],
    #sidebar input[type="email"],
    #sidebar input[type="url"],
    #sidebar textarea{
        background:#111!important;
        color:#fff!important;
        border-color:rgba(255,255,255,0.25)!important;
    }
    /* Widget link compact spacing */
    #sidebar .widget ul,
    #secondary .widget ul{
        margin-top:6px!important;
    }
    #sidebar li.widget_links.li,
    #secondary li.widget_links.li{
        margin:0!important;
        padding:2px 0!important;
        line-height:1.2!important;
        border:none!important;
    }
    #sidebar li.widget_links.li > a,
    #secondary li.widget_links.li > a{
        display:block!important;
        margin:0!important;
        padding:2px 0 2px 14px!important;
        line-height:1.2!important;
    }
    #sidebar li.widget_links.li + br,
    #secondary li.widget_links.li + br{
        display:none!important;
    }
    #sidebar li.widget_links.li p,
    #secondary li.widget_links.li p{
        margin:0!important;
    }
    #sidebar .widget-title,
    #secondary .widget-title{
        font-weight:700;
    }
}

/* ---- Safari/browser first-paint background + safe area ---- */
html,
body{
    background-color:#fff!important;
}
@media screen and (min-width:59.6875em){
    html,
    body{
        background-color:#fff!important;
        min-height:100%;
    }
    body:before,
    #sidebar,
    #secondary,
    .site-header{
        background:#000!important;
    }
    body.twk-nuclear-css #page,
    body.twk-nuclear-css .site,
    body.twk-nuclear-css .site-content{
        min-height:calc(100vh - 260px)!important;
    }
}
body{padding-bottom:env(safe-area-inset-bottom)}

/* ---- Heading spacing (frontend) ---- */
h1,h2,h3,h4,h5,h6{
    margin-top:1.2em!important;
    margin-bottom:0.5em!important;
}
.breadcrumb{margin-bottom:1rem}

