/*
 * Старые страницы на шаблоне gardista — блог (/blog/): правила старого шаблона только этого раздела.
 * Файл собирает local/tools/legacy-css.js — руками не править, правку внести в исходник и пересобрать.
 */

.base-slider__arrow {
    width: 54px;
    height: 54px;
    padding: 0;
    border: 3px solid #444444;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
}

.base-slider__arrow:before {
    content: "";
    display: block;
    width: 22px;
    height: 24px;
}

.base-slider__arrow.left:before {
    background: url("/images/icons/slider-left.svg") no-repeat center/cover;
}

.base-slider__arrow.right:before {
    background: url("/images/icons/slider-right.svg") no-repeat center/cover;
}

.base-slider__arrow:hover {
    border-color: #032755;
    background: #032755;
}

.base-slider__arrow:hover:before {
    -webkit-filter: brightness(10);
    filter: brightness(10);
}

.main-form {
    margin-bottom: 100px;
}

.blog-article {
    margin-bottom: 200px;
}

.blog-article__title {
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 50px;
    color: #0c0c0c;
    margin-bottom: 30px;
}

.blog-article ol li + li {
    margin-top: 24px;
}

@media (max-width: 500px) {
    .base-slider__arrow {
        width: 35px;
        height: 35px;
    }
    .base-slider__arrow:before {
        width: 14px;
        height: 14px;
    }
    .main-form {
        background: #032755 url(/images/main-form-bg.jpg) no-repeat center/cover;
        margin-bottom: 60px;
    }
    .blog-article__title {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 20px;
    }
    .blog-article ol {
        font-size: 12px;
        line-height: 14px;
        margin-bottom: 20px;
    }
    .blog-article ol li + li {
        margin-top: 10px;
    }
    .blog-article {
        margin-bottom: 60px;
    }
}

.curtains__image--small {
    max-width: 500px;
}

@media (max-width: 768px) {
    .curtains__image--small {
        max-width: 100%;
    }
}

.blog-article ol li {
    font-size: 16px;
}

.blog-v2__title {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 40px;
    color: #1a2b23;
    text-align: center;
}

.blog-v2__controls {
    display: flex;
    gap: 15px;
    margin-bottom: 50px;
    align-items: center;
}

.blog-v2__filter,
.blog-v2__input {
    height: 50px;
    border-radius: 12px;
    border: 1px solid #e2e2e2;
    padding: 0 20px;
    background: #fff;
    font-size: 1rem;
}

.blog-v2__filter {
    flex: 1;
    cursor: pointer;
}

.blog-v2__filter-label {
    position: absolute;
    top: -42px;
    opacity: 0;
}

.blog-v2__search-box {
    flex: 2;
}

.blog-v2__input {
    width: 100%;
}

.blog-v2__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 107px;
    grid-auto-flow: dense;
    gap: 20px;
    margin-bottom: 20px;
}

.blog-v2__item--tall {
    grid-row: span 7;
}

.blog-v2__item--low {
    grid-row: span 4;
}

.blog-v2__item--wide {
    grid-row: span 4;
    grid-column: span 3;
}

.blog-v2__item--wide .blog-v2__card {
    flex-direction: row;
}

.blog-v2__item--low .blog-v2__card .blog-v2__image-wrapper {
    height: 200px;
    width: 100%;
}

.blog-v2__item--wide .blog-v2__card .blog-v2__image-wrapper {
    aspect-ratio: 12/9;
}

@media screen and (max-width: 768px) {
    .blog-v2__item--wide {
        grid-row: span 4;
        grid-column: span 1;
    }
    .blog-v2__item--wide .blog-v2__card {
        flex-direction: column;
    }
    .blog-v2__controls {
        flex-direction: column;
    }
    .blog-v2__controls .blog-v2__filter {
        flex: none;
        width: 100%;
    }
    .blog-v2__controls .blog-v2__search-box {
        flex: none;
        width: 100%;
    }
}

.blog-v2__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-v2__content {
    padding: 10px;
    display: flex;
    flex-direction: column;
}

.blog-v2__card {
    display: flex;
    height: 100%;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
    transition: transform 0.3s ease;
}

.blog-v2__card:hover {
    transform: translateY(-8px);
}

.blog-v2__img--logo {
    width: 250px;
}

.blog-v2__image-wrapper--tall {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.blog-v2__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.blog-v2__content {
    padding: 25px;
}

.blog-v2__meta {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    font-size: 0.9rem;
    color: #555;
}

.blog-v2__card-title {
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 10px;
    color: #1a2b23;
}

.blog-v2__preview-text {
    font-size: 14px;
    color: #666;
}

.blog-v2__item--low .blog-v2__preview-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-v2__search-box {
    flex: 2;
    position: relative;
}

.blog-v2__input {
    width: 100%;
    padding-right: 45px;
}

.blog-v2__clear {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 50%;
    background: #eee;
    cursor: pointer;
}

.blog-v2__clear:before,
.blog-v2__clear:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    background: #555;
}

.blog-v2__clear:before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.blog-v2__clear:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

@media (max-width: 768px) {
    .blog-v2__grid {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
    }
}

.blog-v2__seo-text {
    text-align: justify;
    margin: 20px 0;
}

.blog-v2__count {
    text-align: right;
    margin: 20px 0;
    font-size: 14px;
}

.blog-article__wrap {
    text-align: justify;
}
