/*
Theme Name: Mediavine Trellis Child
Theme URI: https://github.com/mediavine/mediavine-trellis
Author: Mediavine
Author URI: https://www.mediavine.com
Description: The Trellis core theme framework
Requires at least: WordPress 4.9.6
Version: 0.9.2
Template: mediavine-trellis
Text Domain: mediavine
Tags: two-column, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, sticky-post, threaded-comments, translation-ready
*/

/*
@media only screen and (min-width: 960px) {
    .content-container {
        max-width: 1110px!important;
    }
    .wrapper {
        max-width: 1500px!important;
    }
}
*/

.home .featured-hero-container {
    padding: 0px;
}

.full {
    width: 100%!important;
    max-width: 100%!important;
    min-width: 100%!important;
}

.flex {
    display: flex;
}

.author-avatar-left {
    /*width: 124px;*/
    width: 112px;
    flex-shrink: 0;
}

.author-avatar-left.sml {
    /*width: 64px;*/
    width: 56px;
}

.author-avatar-left img {
    border-radius: 50%;
    margin-top: 1px;
}

.author-meta-right {
    flex-grow: 1;
    padding-left: 15px;
    font-weight: normal!important;
}

.author-meta-right.sml {
    padding: 6px 15px;
    font-size: 16px!important;
}

.author-position {
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
}

.author-social {
    font-size: 24px;
    margin-top: 10px;
}

.author-info-meta,
.taxonomy-description {
    margin: 10px 0 20px 0;
}

.author-email {
    margin-top: 10px;
}

.excerpt-container {
    border-top: 1px solid #ccc;
    align-items: start!important;
}

.excerpt-title h2 {
    margin-top: 15px!important;
    font-size: 1.4rem !important;
    font-weight: bold;
    line-height: 1.5rem !important;
}

.excerpt-author {
    font-size: 1rem;
}

h1.archive-heading,
h1.article-heading,
.article-meta {
    margin: 0!important;
}

.article-meta {
    text-transform: inherit!important;
}

.header-archive {
    padding: 0!important;
}

.author-name {
    font-weight: 500;
    font-size: 16px;
    margin: 5px 0 3px;
    color: #222222 !important;
}

.author-name a,
.author-name a:hover {
    color: #000000;
    font-weight: bold !important;
    text-decoration: none;
}

.post-meta-datetime {
    font-size: 14px;
    line-height: 18px;
    color: #222222;
}


@media screen and (max-width: 959px) {
    .excerpt-container {
        flex-direction: row!important;
    }

    .excerpt-title h2 {
        font-size: 1.1rem!important;
        margin: auto 15px!important;
        text-align: left;
    }


    .home .excerpt-photo,
    .archive .excerpt-photo,
    .category .excerpt-photo {
        margin: auto!important;
        width: 30% !important;
        min-width: auto!important;
        padding: 0;
        margin: 0;
    }

    .excerpt-post-data {
        display: block!important;
    }
    
    .excerpt-author {
        text-align: left;
        font-size: 0.8rem;
        width: 100%;
        margin: auto 15px;
    }

    h2.featured-hero-title.excerpt-title {
        font-size: 1.1rem!important;
    }

}

.footer-social-title {
    font-weight: bold;
}

.footer-social-title,
.footer-social {
    text-align: center;
}

.footer-social a {
    display: inline-block;
    margin: 5px 10px;
    font-size: 20px;
}

.tri-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.tri-grid > div {
    padding: 20px 20px 20px 0px;
}

.header-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto!important;
    top: 3px!important;
    position: relative!important;
}

.header-logo-img {
    height: auto!important;
}

.home-pre-content .wrapper {
    padding: 0 20px;
}

@media screen and (max-width: 959px) {
    .article {
        padding-bottom: 10px!important;
    }

    .tri-grid {
        display: block;
    }

    .sidebar .widget-container.mv_trellis_mobile_hide {
        display: block!important;
        padding:0 !important;
        width: 100%!important;
        max-width: 100%!important;
    }

    .featured-image {
        margin: 0 -20px;
    }
    
    .wp-block-image {
        margin: 0 -10px;
    }
}

.sidebar {
    min-width: auto!important;
}

@media screen and (min-width: 960px) {
    .sidebar {
        margin-top: 10px!important;
    }
}

.header-logo picture {
    display: flex;
    align-items: center;
}

.nav-list .menu-item {
    margin: 0;
}

.hidden {
    display: none;
}

.view-more {
    cursor: pointer;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    padding: 20px;
}

#mobile-nav {
    background: #bf0000;
    color: white;
}

#menu-mobile-top-nav {
    padding: 0;
    margin: 0;
    display: flex;
    max-width: 1200px;
    margin: auto;
    overflow-x: auto;
    overflow-y: hidden;
}

#menu-mobile-top-nav li {
    padding: 10px 20px;
    margin: 0;
    min-width: fit-content;
    order: 2;
    margin-bottom: 3px;
}

#menu-mobile-top-nav li a {
    color: #fff;
    border-bottom-width: 0px;
    font-size: 14px;
}

#menu-mobile-top-nav li.current-menu-item,
#menu-mobile-top-nav li.current-menu-parent,
#menu-mobile-top-nav li.current-post-parent {
    order: 1;
}

#menu-mobile-top-nav li.current-menu-item a,
#menu-mobile-top-nav li.current-menu-parent a,
#menu-mobile-top-nav li.current-post-parent a {
    border-bottom: 1px solid #fff;
}

#mobile-search {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60px;
    flex: 0 0 60px;
    min-height: 50px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 3;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: center;
}

#nav-toggle2 svg.opened,
#mobile-search svg.opened {
    display: none;
}

#nav-toggle2 svg.closed,
#mobile-search svg.closed {
    display: block;
}

#nav-toggle2.open svg.opened,
#mobile-search.open svg.opened {
    display: block;
}

#nav-toggle2.open svg.closed,
#mobile-search.open svg.closed {
    display: none;
}

#mobile-search svg {
    fill: #fff;
    width: 22px;
    height: 22px;
}

#mobile-search-form {
    display: none;
    position: absolute;
    width: 100%;
    background: #bf0000;
    padding: 8px;
    z-index: 10;
}

#mobile-search-form.open {
    display: flex;
}

#mobile-search-form form {
    display: flex;
    justify-content: center;
    margin: auto;
    width: 100%;
}

#mobile-search-form input {
    flex-grow: 1;
    padding: 10px;
    border-radius: 0;
    border: none;
    font-size: 16px;
    height: 40px;
}

#mobile-search-form button {
    flex-shrink: 0;
    width: 60px;
    background: #fff;
    display: flex;
    align-items: center;
    height: 40px;
}

.header-logo {
    -webkit-box-flex: 1!important;
    -ms-flex: 1 1 auto!important;
    flex: 1 1 auto!important;
    -ms-flex: 1 1 calc(100% - 120px)!important;
    flex: 1 1 calc(100% - 120px)!important;
    -webkit-box-ordinal-group: 3!important;
    -ms-flex-order: 2!important;
    order: 2!important;
}

.header-logo img {
    margin: auto;
}

.nav {
    -webkit-box-flex: 0!important;
    -ms-flex: 0 0 60px!important;
    flex: 0 0 60px!important;
    min-height: 50px!important;
    -webkit-box-ordinal-group: 2!important;
    -ms-flex-order: 1!important;
    order: 1!important;
    text-align: left!important;
    display: flex;
    align-items: center;
}

.nav-container {
    padding: 0!important;
    height: auto!important;
    width: 100%!important;
}

.nav-open {
    position: absolute!important;
    overflow-x: auto;
    height: 100vh;
}

.nav-list2 {
    background: #111;
    width: 100%;
}

.nav-closed {
    display: none!important;
}

.nav-toggle2 {
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: -webkit-transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out,
    -webkit-transform .3s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0px;
    border-radius: 0;
    color: #000;
    background: 0 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-align: left;
    margin: 5px auto;
}

.nav-toggle2 svg {
    -webkit-transition: fill .3s ease-in-out;
    transition: fill .3s ease-in-out;
    width: 22px;
    height: 22px;
    margin-top: 3.2px;
    fill: #fff;
}

.nav-list2 .menu-item a {
    border-bottom: 1px solid #e1e1e1!important;
    padding: 20px!important;
    color: #FFF !important;
}

.nav-wrapper2 {
    display: flex;
    background: #111!important;
    color: #FFF!important;
    border-top: 0px !important;
    width: 100%;
    z-index: 999;
}

.nav-wrapper2 > div {
    width: 33.33%;
    padding: 20px;
}

.nav .btn:focus, 
.nav .btn:focus-within, 
.nav .btn:hover, 
.nav .trellis-comment-form input[type=submit]:focus, 
.nav .trellis-comment-form input[type=submit]:focus-within, 
.nav .trellis-comment-form input[type=submit]:hover, 
.nav button:focus, 
.nav button:focus-within, 
.nav button:hover {
    background: inherit;
    outline: none;
}

.nav .wrapper {
    border-top: none!important;
    height: auto!important;
}

.nav-wrapper2 .title {
    font-weight: bold;
    font-size: 20px;
}

#nav-menu {
    display: none;
    position: relative;
}

#nav-menu.open {
    display: block;
}

@media screen and (max-width: 959px) {
    .nav-wrapper2 {
        display: block;
        padding: 20px 20px 200px 20px;
    }

    .nav-wrapper2 > div {
        width: 100%;
        padding: 20px 50px 20px 20px;
    }
}

.before-content {
    height: 90px;
}

.header {
    min-height: 50px;
    width: 100%;
    top: 0;
    position: fixed;
    z-index: 1;
}

.header-logo {
    height: auto!important;
    padding: 0!important;
}

.header-logo picture {
    height: auto!important;
}

.header-container {
    height: 50px;
}

.sidebar .widget-container:first-of-type:not(.about-author) {
    padding: inherit!important;
    border: 0px!important;
}

.related-grid-wrapper {
    margin: 40px 0;
    border: none!important;
    display: block!important;
    padding: 0 30px!important;
}

.related-post-a {
    text-decoration: none;
}

.related-post {
    display: block;
    align-items: center;
    justify-content: center;
    color: #000;
    /*border-top: 1px solid #ccc;*/
}

.related-post-image {
    width: 100%;
    flex-shrink: 0;
}

.related-post-image img {
    margin: 0;
    padding: 0;
    display: block;
}

.related-post-title {
    flex-grow: 1;
    padding: 12px 0;
}

.related-count {
    padding: 5px;
}

.related-post-title div:first-child {
    text-transform: uppercase;
    display: block;
    color: #275f62;
    font-size: 0.8rem;
    line-height: 1.2rem;
}

.related-post-title div:last-child {
    font-size: 0.9rem;
    font-weight: bold;
    line-height: 1.2rem;
}

.related-grid-title {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 10px;
}

.related-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 10px;
}

.overflow-hidden {
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    #tertiary-nav {
        padding-bottom: 40px;
    }

    main.content-container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .most-read-now {
        display: none;
    }
    
    .related-grid-wrapper {
        display: none!important;
    }

    .related-grid {
        display: block;
    }
    
    .widget_trending_posts_widget {
        margin: 15px 0;
    }

    .related-post-title div:last-child {
        font-size: 1rem;
    }
}

.admin-bar .header {
    top: 32px;
}

.author-social a {
    text-decoration: none;
}

.entry-footer .tags-links a {
    font-size: .8rem !important;
    margin: 5px 10px 5px 0 !important;
    padding: 4px 8px !important;
    background: #bf0000 !important;
    color: #fff !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

.header-singular {
    background: none !important;
}

.cat-links a {
    display: inline-block;
    font-size: .8rem !important;
    margin: 5px 10px 5px 0 !important;
    padding: 4px 8px !important;
    background: #bf0000 !important;
    color: #fff !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    margin-bottom: 5px;
}

.menu-item>a:after,
.sub-menu li a:after {
    display: none!important;
}

#nav_menu-2 .widget-title {
    text-align: center;
    color: #fff;
    line-height: 30px;
    margin: auto;
    padding: 0 20px;
}