.dv-site-header{
    position:relative;
    z-index:30;
    background:color-mix(in srgb,var(--dv-surface) 94%,transparent);
    border-bottom:1px solid var(--dv-border);
    box-shadow:0 1px 0 rgba(255,255,255,.35);
    backdrop-filter:blur(14px)
}



.dv-top-widget-bar{
    background:var(--dv-bg-alt);
    border-bottom:2px solid var(--dv-border)
}
.dv-top-widget-bar__inner{
    display:flex;
    align-items:stretch;
    flex-wrap:wrap;
    min-height:20px
}
.dv-top-widget-bar__inner>.widget{
    flex:1 1 240px;
    min-width:0;
    margin:0;
    padding:.65rem 1rem;
    border:0
}
.dv-top-widget-bar .widget-title{
    margin:0 0 .35rem;
    padding:0;
    background:transparent;
    border:0;
    text-align:left
}



 .dv-header-top{
    display:flex;
    align-items:center;
    gap:2rem;
    min-height:92px;
    padding-block:1rem
}



.dv-site-branding{
    flex:0 1 340px
}
.custom-logo-link{
    display:inline-flex
}
.dv-site-branding .custom-logo{
    display:block;
    width:auto;
    max-height:64px
}


 .dv-brand,.dv-footer-brand__fallback{
    display:inline-flex;
    align-items:center;
    gap:.8rem;
    color:var(--dv-heading);
    text-decoration:none
}


.dv-brand__mark{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    color:var(--dv-accent);
    background:var(--dv-accent-soft);
    border:1px solid color-mix(in srgb,var(--dv-accent) 35%,transparent);
    transform:rotate(45deg)
}
.dv-brand__mark i{
    font-style:normal;
    transform:rotate(-45deg)
}
.dv-brand__text{
    display:grid
}
.dv-brand__name{
    font-weight:800;
    letter-spacing:.06em
}
.dv-brand__descriptor{
    color:var(--dv-muted);
    font-size:.67rem;
    letter-spacing:.16em
}



 .dv-header-widget{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    color:var(--dv-muted)
}
.dv-header-widget .widget{
    margin:0
}


.dv-breadcrumb-bar{
    background:var(--dv-surface);
    border-top:1px solid var(--dv-border)
}
.dv-breadcrumb-bar__inner{
    display:flex;
    align-items:center;
    min-height:40px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin
}
.dv-header-breadcrumbs{
    width:100%;
    min-width:max-content;
    color:var(--dv-muted);
    font-size:.90rem
}
.dv-header-breadcrumbs__list{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:0;
    margin:0;
    padding:.55rem 0;
    list-style:none;
    white-space:nowrap
}
.dv-header-breadcrumbs__item{
    display:inline-flex;
    align-items:center
}
.dv-header-breadcrumbs__separator{
    margin-inline:.6rem;
    color:var(--dv-muted)
}
.dv-header-breadcrumbs a{
    color:var(--dv-text);
    text-decoration:none
}
.dv-header-breadcrumbs a:hover,
.dv-header-breadcrumbs a:focus-visible{
    color:var(--dv-accent)
}
.dv-header-breadcrumbs [aria-current="page"]{
    color:var(--dv-heading)
}




.dv-theme-toggle{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    flex:0 0 auto;
    padding:.55rem .7rem;
    color:var(--dv-text);
    background:var(--dv-bg-alt);
    border:1px solid var(--dv-border);
    font-size:.75rem
}
.dv-theme-toggle:hover{
    color:var(--dv-heading);
    background:var(--dv-accent-soft)
}



 .dv-primary-bar{
    background:var(--dv-surface);
    border-top:1px solid var(--dv-border);
    border-bottom:0px solid var(--dv-border)
}
.dv-primary-bar__inner{
    display:flex;
    align-items:center;
    min-height:30px
}


.dv-primary-nav{
    width:100%
}
.nav-menu,.dv-secondary-menu,.dv-footer-menu{
    display:flex;
    align-items:center;
    gap:.2rem;
    margin:0;
    padding:0;
    list-style:none
}
.nav-menu li{
    position:relative
}
.nav-menu a{
    display:block;
    padding:.85rem 1rem;
    color:var(--dv-text);
    font-size:.86rem;
    font-weight:700;
    text-decoration:none
}
.nav-menu>li.current-menu-item>a,.nav-menu>li.current_page_item>a,.nav-menu>li>a:hover{
    color:var(--dv-accent)
}
.nav-menu .sub-menu{
    display:none;
    position:absolute;
    z-index:50;
    min-width:220px;
    margin:0;
    padding:.5rem;
    list-style:none;
    background:var(--dv-surface);
    border:1px solid var(--dv-border);
    border-radius:var(--dv-radius);
    box-shadow:var(--dv-shadow-lg)
}
.nav-menu li:hover>.sub-menu,.nav-menu li:focus-within>.sub-menu{
    display:block
}
 .dv-menu-toggle{
    display:none
}
.dv-secondary-bar{
    background:var(--dv-bg-alt);
    border-bottom:1px solid var(--dv-border)
}
.dv-secondary-menu{
    flex-wrap:wrap;
    min-height:40px
}
.dv-secondary-menu a{
    display:block;
    padding:.55rem .85rem;
    color:var(--dv-muted);
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.06em;
    text-decoration:none;
    text-transform:uppercase
}




 .dv-page-main{
    position:relative;
    padding-block:var(--dv-space-xl)
}

.dv-content-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:2rem;
    align-items:start
}
.dv-content-grid.has-sidepanel{
    grid-template-columns:minmax(220px,280px) minmax(0,1fr)
}


.dv-primary-content{
    min-width:0
}
.dv-blank-content{
    max-width:var(--dv-width)
}



 .dv-sidebar{
    min-width:0
}
.dv-sidebar__inner{
    position:sticky;
    top:1.5rem
}
.dv-sidebar__label{
    margin-bottom:1rem;
    color:var(--dv-muted);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.12em
}



 .dv-site-footer{
    position:relative;
    clear:both;
    color:var(--dv-muted);
    background:var(--dv-surface);
    border-top:0px solid var(--dv-border)
}


.dv-footer-main{
    display:grid;
    grid-template-columns:minmax(170px,240px) minmax(0,1fr);
    gap:2.5rem;
    padding-block:2.75rem
}

.dv-footer-brand .custom-logo{
    width:auto;
    max-width:180px;
    max-height:64px
}
.dv-footer-brand__fallback span:last-child{
    display:grid
}
.dv-footer-brand__fallback small{
    color:var(--dv-muted);
    font-size:.65rem;
    letter-spacing:.12em
}
.dv-footer-widgets{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1.75rem
}
.dv-footer-bottom{
    /* border-top:0px solid var(--dv-border) */
}
.dv-footer-bottom__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1.5rem;
    min-height:68px
}


.dv-footer-menu{
    flex-wrap:wrap;
    gap:1rem
}
.dv-footer-menu a{
    font-size:.78rem;
    text-decoration:none
}


/*
 * Category colors for the custom color picker plugin thing
 * 
 */























 @media(max-width:900px){
    .dv-header-top{
        align-items:flex-start;
        flex-wrap:wrap
    }
    .dv-header-widget{
        order:3;
        flex-basis:100%;
        justify-content:flex-start
    }
    .dv-menu-toggle{
        display:block
    }
    .dv-primary-bar__inner{
        min-height:52px
    }
    .dv-primary-nav{
        display:none
    }
    .dv-primary-bar.is-open .dv-primary-nav{
        display:block
    }
    .dv-primary-bar.is-open .dv-primary-bar__inner{
        display:block;
        padding-block:.4rem
    }
    .dv-primary-nav .nav-menu{
        display:block
    }
    .dv-primary-nav .sub-menu{
        display:block;
        position:static;
        margin-left:1rem;
        background:transparent;
        border:0;
        box-shadow:none
    }
    .dv-content-grid.has-sidepanel{
        grid-template-columns:1fr
    }
    .dv-sidebar__inner{
        position:static
    }
    .dv-footer-main{
        grid-template-columns:1fr
    }
    .dv-footer-widgets{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
 @media(max-width:600px){
    .dv-top-widget-bar__inner>.widget{
        flex-basis:100%
    }
    .dv-header-top{
        display:grid;
        gap:1rem
    }
    .dv-theme-toggle{
        position:absolute;
        top:1rem;
        right:4%
    }
    .dv-secondary-menu{
        display:block;
        padding-block:.35rem
    }
    .dv-secondary-menu a{
        padding:.4rem 0
    }
    .dv-footer-widgets{
        grid-template-columns:1fr
    }
    .dv-footer-bottom__inner{
        display:grid;
        justify-content:start;
        padding-block:1rem
    }
}
 
