/*
Theme Name: bibliograf
Theme URI: https://example.com
Author: Dmitriy
Description: Трёхколоночная стартовая тема. Хедер: инфо, картинка, меню.
Version: 1.0
Text Domain: bibliograf
*/

:root {
    --container: 100%;
    /* увеличено с 1200px */
    --gap: 16px;
    --accent: #d31616;
    /* красные плашки */
    --bg: #f3f3f3;
    --text: #222;
}

* {
    box-sizing: border-box
}

html,
body {
    margin: 0;
    padding: 0;

}

body {
    font: 14px/1.6 Arial, Helvetica, sans-serif;
    /* Arial как основной шрифт, размер 14px */
    color: var(--text);
    background: #E1E1E1;
}

/* Header (3 блока) */
.site-header {
    background: var(--bg);
    border-bottom: 1px solid #e5e5e5
}

.header-inner {
    max-width: var(--container);
    margin: 0 auto;
    padding: 0
}

.header-info {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fe0000;
    border-radius: 0;
    padding: 8px 12px;
    font-size: 18px;
    color: #fff;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    text-transform: uppercase;
        letter-spacing: 1px;
}

.header-hero {
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    border-radius: 0;
    overflow: hidden;
    background: #ddd;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
        position: relative;
}

.header-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.header-nav {
    background: #fe0000;
    border-radius: 0;
    padding: 8px 12px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
}

.header-nav .menu {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 0 auto;
    padding: 0;
}

.header-nav .menu a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 8px 12px;
    /* background: rgba(255, 255, 255, .1); */
    font-weight: 700;
    font-size: .7vw;
}

.header-nav .menu a:hover {
    border-bottom: 1px solid #fff;
}

.header-nav .menu .current-menu-item>a {
    border-bottom: 1px solid #fff;
    color: #fff
}

/* Layout 3 колонки */
.container {
    max-width: var(--container);
    margin: 20px auto;
    padding: 0px;
    width: 80vw;
}
section.journal-layout {
    display: grid
;
    grid-template-columns: 1fr 3fr;
    gap: 20px;
}
.container--home .grid {
    display: grid;
    grid-template-columns: 14vw 1fr 22vw;
    gap: var(--gap);
}
.entry--news .entry__thumb { display: none; }
.sidebar {}

.content {}

/* Виджеты */
.widget {
    margin-bottom: 18px
}

.widget-title {
    background: #fe0000;
    color: #fff;
    padding: 6px 10px;
    margin: 0 0 10px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    font-family: Helvetica;
}

.widget ul {
    list-style: disc;
    padding-left: 16px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0px;
    color: #fe0000;
}

.widget ul li {
    margin: 6px 0
}

/* Посты */
.post {}

.post h2 {
    margin: 0 0 8px;
    font-size: 22px
}

.post .meta {
    font-size: 13px;
    color: #666;
    margin-bottom: 8px
}

.read-more {
    display: inline-block;
    margin-top: 8px;
    text-decoration: none;
    color: #d31616
}

/* Footer */
.site-footer {
    margin-top: 32px;
    background: #111;
    color: #bbb
}

.footer-inner {
    max-width: var(--container);
    margin: 0 auto;
    padding: 20px var(--gap);
    font-size: 14px
}

/* Адаптив */
@media (max-width: 1024px) {
    .grid {
        grid-template-columns: 220px 1fr 220px
    }
}

@media (max-width: 860px) {
    .grid {
        grid-template-columns: 1fr !important;
    }

    .sidebar {
        order: 2
    }

    .content {
        order: 1
    }
}

.footer-widgets {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 16px
}

.footer-nav .footer-menu {
    list-style: none;
    margin: 0 0 12px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.footer-nav .footer-menu a {
    text-decoration: none;
    color: #bbb
}

.site-info {
    font-size: 14px;
    color: #bbb
}

@media (max-width:860px) {
    .footer-widgets {
        grid-template-columns: 1fr
    }
}

.wp-block-search__input{
        appearance: none;
    border: 1px solid #949494;
    flex-grow: 1;
    margin-left: 0;
    margin-right: 0;
    min-width: 3rem;
    padding: 2px 8px;
    text-decoration: unset !important;
}
.header-nav__inner {
    width: 80vw;
    margin: 0 auto;
    align-items: center;
    position: relative;
}
.widget_search {
    margin-bottom: 0px;
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translate(0, -50%);
}
.header-nav__menu {
    display: grid
;
    justify-content: center;
}
.wp-block-search__label {
    display: none;
}

.widget_search {
    margin-bottom: 0px;
}

h1.entry-title {
    color: #fe0000;
}

.post-navigation {
    display: none;
}

.entry-content {
    background: #fff;
    padding: 10px 20px 30px;
    border-radius: 20px;
}

.entry-meta {
    display: none;
}

h2.wp-block-heading {}

.widgettitle {
    background: #fe0000;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    padding: 5px;
}

a.widget-plans__title,
a.widget-digests__title,
a.widget-docs__title,
.widget-announces__title,
.bj-card a,
.topics-cats__item a {
    font-family: times;
    font-size: 14px;
    color: #4c4c4c;
    text-decoration: none;
}

a.widget-plans__title:hover,
a.widget-digests__title:hover,
a.widget-docs__title:hover,
.widget-announces__title:hover,
.bj-card a:hover,
.topics-cats__item a:hover {
    border-bottom: 1px solid;
}

header.journal__header {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.journal__cover img {
    width: 100%;
    height: auto;
    border-radius: 20px;
    overflow: hidden;
    /* margin: 0 auto; */
    display: block;
    margin-top: -30px;
}

.journal__title {
    padding: 0px;
    margin: 0px;
    text-align: left;
    color: #fe0000;
}

.journal {
    background: #fff;
    border-radius: 20px;
    margin-top: 30px;
}

.journal__two-cols {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 20px;
}

.bj-grid.bj-col-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}


.bj-cover img {
    width: 100%;
    height: auto;
}

.bj-num a {
    font-size: 1.1vw;
    font-weight: bold;
    color: #fe0000;
}

.bj-rubrics li {
    padding: 0px;
    margin: 0px !important;
}

.bj-rubrics li a,
.bj-theme a {
    font-size: 14px;
}

.bj-theme a {
    font-weight: bold;
}


h1.entry__title,
.page-title {
    color: #fe0000;
    margin-top: 0px;
    line-height: 100%;
}

.news-item__date {
    color: #fe0000;
    font-size: 14px;
}

.meta-date {
    color: #fe0000;
    display: none;
}

.teaser__more a {
    color: #fe0000;
}

.teaser__title a {
    color: #000;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
    line-height: 120%;
}

.teaser__excerpt {
    font-size: 14px;
    line-height: 120%;
}

.teaser__title a:hover {
    text-decoration: underline;
}

.topics-archive {
    background: #fff;
    padding: 20px;
    border-radius: 20px;
}

.entry__content,
.content-card {
    background: #fff;
    padding: 20px;
    border-radius: 20px;
}

.wp-block-image img {
    width: 100%;
}

.journal-hero__grid {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 10px;
}

.journal-hero__cover {
    margin-top: -50px;
    margin-left: -20px;
    border-radius: 20px;
    overflow: hidden;
}

.journal-hero__cover img {
    width: 100%;
    height: auto;
}

.entry--journal__content {
    margin-top: 50px;
}

.journal-hero__meta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

ul.journal-rubrics__list {
    list-style: disc;
    padding-left: 16px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0px;
    color: #fe0000;
}

.teaser__inner {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 10px;
}

.teaser__inner--no-thumb {
    grid-template-columns: 1fr;
}

.teaser__thumb {
    border-radius: 20px;
    overflow: hidden;
}

.teaser__thumb img {
    width: 100%;
    height: auto;
}

.listing--topic__content {}

.entry__thumb img {
    width: 100%;
    height: auto;
}

.news-list {
    list-style: none;
    padding: 0px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

li.news-item {
    display: grid
;
    grid-template-columns: 1fr 3fr;
    gap: 10px;
    align-items: stretch;
}

a.news-item__title {
    color: #000;
    font-size: 14px;
    text-decoration: none;
    font-weight: bold;
}

a.news-item__title:hover {
    text-decoration: underline;
}

.news-item__body {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.news-item__excerpt {
    font-size: 14px;
    line-height: 120%;
}

.news-list__more {
    text-align: center;
    margin-top: 20px;
}

.news-list__more a {
    color: #fe0000;
    font-size: 14px;
    text-decoration: none;
    font-weight: bold;
    padding: 10px;
    border-radius: 10px;
    border: 1px solid;
}

h3.teaser__title {
    margin: 0;
}

.teaser__content {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.teaser__thumb img,
.news-item__thumb img {
    width: 100%;
    height: auto;
    /* object-fit: cover; */
    display: block;
}

a.news-item__thumb {
    border-radius: 20px;
    overflow: hidden;
}

ul.jy-grid {
    list-style: none;
    padding: 0px;
}

a.jy-link {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-decoration: none;
}

ul.jy-grid {
    list-style: none;
    padding: 0px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
}

.jy-thumb-wrap img {
    width: 100%;
    height: auto;
}

span.jy-name {
    color: #fe0000;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
}
article.journal-card {
    background: #fff;
    padding: 20px;
    border-radius: 20px;
}
span.journal-theme__label, .journal-theme__link, .journal-rubrics__label{
    font-size: 18px;
}
.journal-theme__link{
    color: #fe0000;
}
.journal-rubrics__link{
        font-family: times;
    font-size: 14px;
    color: #4c4c4c;
    text-decoration: none;
}
@media(max-width:980px){
    .container {
    max-width: var(--container);
    margin: 20px auto;
    padding: 0px;
    width: 90vw;
}
.header-info{
        font-size: 18px;
    line-height: 120%;
}
h1.entry__title, .page-title
 {
    color: #fe0000;
    margin-top: 0px;
    line-height: 100%;
    font-size: 18px;
}
.entry__content, .content-card {
    background: #fff;
    padding: 10px;
    border-radius: 10px;
}
    ul.jy-grid {
        list-style: none;
        padding: 0px;
        display: grid
;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 0px;
    }
    .widget-title {
    background: #fe0000;
    color: #fff;
    padding: 6px 10px;
    margin: 0 0 10px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 15px;
    text-align: center;
}
.widget ul li {
    margin: 0px;
}
.bj-num a {
    font-size: 18px;
    font-weight: bold;
    color: #fe0000;
}
.bj-rubrics li a, .bj-theme a {
    font-size: 14px;
}
.bj-rubrics--title {
    font-size: 14px;
    margin-bottom: 0px;
    margin-top: 5px;
}
.journal-hero__grid {
    display: grid
;
    grid-template: 1fr;
    grid-template-columns: 1fr;
    gap: 10px;
}
.journal-hero__cover {
    margin-top: 0;
    margin-left: 0;
    border-radius: 10px;
    overflow: hidden;
}
.journal-hero__meta {
    display: flex
;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
}
.entry--journal__content {
    margin-top: 10px;
}
.teaser__inner
 {
    display: grid
;
    grid-template-columns: 1fr;
    gap: 10px;
}
.news-list {
    list-style: none;
    padding: 0px;
    display: flex
;
    flex-direction: column;
    gap: 30px;
    margin-top: 0px;
}
li.news-item
 {
    display: grid
;
    grid-template-columns: 1fr;
    gap: 10px;
}
}
/* Бургер */
.header-burger{display:none; background:none; border:0; padding:8px; line-height:0;}
.header-burger__bar{display:block; width:24px; height:2px; margin:5px 0; background:currentColor}

/* Off-canvas */
.mobile-nav{position:fixed; inset:0; z-index:9999;}
.mobile-nav[hidden]{display:none !important;}
.mobile-nav__backdrop{position:absolute; inset:0; background:rgba(0,0,0,.5)}
.mobile-nav__panel{
  position:absolute; top:0; bottom:0; right:0; width:min(86vw,360px);
  background:#fff; padding:16px; overflow:auto;
  box-shadow:-10px 0 30px rgba(0,0,0,.2);
}
.mobile-nav__header{display:flex; align-items:center; justify-content:space-between; margin-bottom:12px;}
.mobile-nav__close{background:none; border:0; font-size:28px; line-height:1; padding:4px 6px;}
.mobile-menu, .mobile-menu ul{list-style:none; margin:0; padding:0}
.mobile-menu > li{border-bottom:1px solid #eee}
.mobile-menu a{display:block; padding:12px 0}

/* Брейкпоинты: показываем бургер на моб., скрываем десктоп-меню */
@media (max-width: 960px){
  .header-burger{display:inline-flex; align-items:center; justify-content:center}
  .header-nav__menu{display:none}
}
@media (min-width: 961px){
  .mobile-nav{display:none !important;}
}


.archive_box {
    background: #fff;
    border-radius: 20px;
    padding: 20px;
    display: grid
;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
}
.archive_box .content-card{
    padding: 0px;
    border-radius: 0px;
}
.archive_box .journal-hero__grid{
        display: grid
;
    grid-template-columns: 1fr;
    gap: 10px;
}
.archive_box .journal-hero__cover{
        margin-top: 0;
    margin-left: 0;
    border-radius: 20px;
    overflow: hidden;
}
.archive_box .journal-hero__meta{
    text-align: center;
}
.archive_box .entry--journal__content {
    margin-top: 0px;
}
@media(max-width:980px){
    
.archive_box {
    background: #fff;
    border-radius: 10px;
    padding: 10px;
    display: grid
;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
}
.news-list__pagination ul.page-numbers {
    list-style: none;
    display: flex
;
    gap: 5px;
    margin: 20px auto 0px;
    align-items: center;
    width: 100%;
    padding: 0px;
    justify-content: center;
}
a.page-numbers {
    color: #fe0000;
    font-size: 14px;
}
.social img{
width: 2vw;
    height: auto;
    object-fit: unset;
}
.social {
    position: absolute;
    right: 5vw;
    top: 73%;
    transform: translate(0px, -50%);
    display: flex
;
    flex-direction: row;
    gap: 2vw;
}
.header-info{
    position: relative;
}