/*!
Theme Name: guten_blog
Theme URI: http://underscores.me/
Author: ITCrafter
Author URI: http://itcrafter.ru
Description: blog on gutenbergs block
Version: 1.0.0
Tested up to: 8.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: guten_blog
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, gutetberg blocks
*/

body {
    margin: 0;
    padding: 0;
    /* background-color: #c6d3e3; */
    /* background-color: #f0f0f0; */
    background-color: #EBECF2;
    color: #565872;
    /* font-family: "Noto Sans", sans-serif;
    font-family: 'Montserrat', sans-serif; */
}
.body-wrapper {
    display: flex;
    /* background-color: #fff; */
    /* box-shadow: 0 2px 10px rgba(192, 192, 192, 0.5); */
    /* border: 1px solid silver; */
}
.main-sidebar {
    width: 100%;
    max-width: 300px;
    flex-shrink: 0;
    padding: 10px;
    /* border-right: 1px solid rgba(192, 192, 192, 0.5); */
    max-height: calc(100vh - 2.5em);
    height: fit-content;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    position: sticky;
    top: calc(80px - 1em);
}
.custom-logo-link {
    display: block;
}
.custom-logo {
    width: auto;
    height: 100%;
    max-height: 70px;
    object-fit: contain;
}
.site-title a {
    text-decoration: none;
    color: inherit;
}
.site-title {
    font-size: 2em;
}
.sidebar-body {
    flex-grow: 1;
}
.sidebar-header,
.sidebar-footer {
    flex-shrink: 0;
}
.site-content {
    flex-grow: 1;
    width: 100%;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
a.btn:hover {
    text-decoration: none;
}
.site-header {
    position: sticky;
    top: 0;
    margin-bottom: 1em;
    display: flex;
    background-color: #fff;
    padding: 5px 10px;
    box-shadow: 0 0px 10px rgba(192, 192, 192, 0.5);
    z-index: 99;
}
.header-filler-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 1em;
}
.site-footer {
    margin-top: 1em;
    display: flex;
    background-color: #fff;
    padding: 5px 10px;
    box-shadow: 0 0px 10px rgba(192, 192, 192, 0.5);
}
.footer-filler-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 1em;
}
.arhive-post-block {
    /* border: 1px solid silver; */
    box-shadow: 0 2px 10px rgba(192, 192, 192, 0.5);
    border-radius: 0.5em;
    overflow: hidden;
    height: 100%;
    background-color: #fff;
}
.arhive-post-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.5em;
}
.border-gradient {
    /* border: 1px solid silver; */
    box-shadow: 0 2px 10px rgba(192, 192, 192, 0.5);
    border-radius: 0.5em;
}
.search-box {
    margin-top: 0.5em;
    flex-grow: 1;
}
.search-box form {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}
.site-description {
    font-style: italic;
}
.video-frame-wrapper img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.btn-load-video {
    outline: none;
    border: none;
}
.pills-cell {
    /* background-color: #fff; */
    /* background-color: #EBECF2; */
}
.content-block {
    background-color: #fff;
    padding: 10px;
    border-radius: 0.5em;
    box-shadow: 0 2px 10px rgba(192, 192, 192, 0.5);
}
.row {
    row-gap: 1.5em;
}
.aside-blog-promo-banner img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.wp-block-pullquote {
    padding: 1em;
}
blockquote {
  margin: 2rem 0;
  padding: 1.5rem 2rem;
  border-left: 4px solid #3498db;
  background: #f8f9fa;
  font-style: italic;
}
blockquote {
  quotes: "“" "”" "‘" "’";
}
blockquote:before {
  content: open-quote;
}
blockquote:after {
  content: close-quote;
}
.blog-faq {
    margin-top: 3em;
}
.blog-faq-wrapper .box_faq {
	position: relative;
    padding: 0 1em;
    background-color: #fff;
}
.blog-faq-wrapper .box_faq:not(:last-child){
    border-bottom: 1px solid #fff;
    margin-bottom: 1em;
}
.blog-faq-wrapper .box_faq .label_faq {
	position: relative;
	padding: 20px 0;
	cursor: pointer;
}
.blog-faq-wrapper .box_faq .label_faq::after {
	content: "+";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
	font-size: 25px;
	font-weight: bold;
}
.blog-faq-wrapper .box_faq.active .label_faq::after {
	content: "\2014";
}
.blog-faq-wrapper .box_faq .content_faq {
	position: relative;
	overflow: hidden;
	max-height: 0;
    border-radius: 10px;
	transition: 0.3s;
}
.blog-faq-wrapper .box_faq .content_faq p {
	padding: 20px;
	margin: 0;
}
.block-diagram-wrapper img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.breadcrumbs {
    margin-bottom: 1.5em;
}
.breadcrumbs a {
    color: inherit;
    text-decoration: none;
}
.menu-action {
    width: 24px;
    height: 18px;
    display: none;
    background: none;
    outline: none;
    border: none;
}
.menu-action svg path {
    fill: black;
}
.btn-close {
    display: none;
}
.sidebar-header-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.block-promo-banner-wrapper img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}
math mrow {
    display: flex;
    flex-wrap: wrap;
}
@media screen and (min-width: 1600px) {
    .col-xl-4 {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xl-3>* {
        flex: 0 0 auto;
        width: 25%;
    }
}

@media (max-width: 480px) {
    .footer-filler-wrap {
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .btn-close {
        display: block;
    }
    .main-sidebar {
        position: fixed;
        width: 100%;
        max-width: 400px;
        top: 0;
        left: 0;
        transform: translateX(-100%);
        background-color: #fff;
        height: 100vh;
        z-index: 1000;
        transition: all .2s ease-in-out;
    }
    .admin-bar .main-sidebar {
        top: 46px;
        height: calc(100vh - 46px);
    }
    .main-sidebar.open {
        transform: translateX(0);
    }
    .header-filler-wrap {
        flex-direction: column;
    }
    .menu-action {
        display: block;
    }
    .logo-box {
        width: 100%;
        align-items: center;
        justify-content: space-between;
    }
}

@media (min-width: 768px) and (max-width: 979px) {

}