/* ===== CSS Reset & Base ===== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline;
}
html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }
body {
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 18px;
    color: #1a1a1a;
    background: #f7fafc;
    min-height: 100vh;
    line-height: 1.6;
}
a { color: #1E5BC6; text-decoration: none; transition: color .2s; }
a:hover { color: #084494; }
ul { list-style: none; }
img { display: block; max-width: 100%; height: auto; }

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 18px;
    width: 100%;
}

/* ===== Header Styles ===== */
.site-header {
    background: #fff;
    box-shadow: 0 2px 8px rgba(34, 60, 90, 0.04);
    border-bottom: 1px solid #e8ecf1;
    position: sticky;
    top: 0; z-index: 10;
}

.header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 32px 10px 18px;
    position: relative;
    min-height: 72px;
}

.logo-link { display: flex; align-items: center; }
.site-logo { height: 48px; width: auto; }

.main-nav ul {
    display: flex; gap: 30px; align-items: center;
}
.main-nav li a {
    font-weight: 500;
    color: #243c5a;
    font-size: 17px;
    letter-spacing: 0.01em;
    padding: 6px 0;
    transition: color .2s;
}
.main-nav li a:hover,
.main-nav li a:focus { color: #1E5BC6; }

.header-search {
    display: flex; align-items: center;
    margin-left: 36px;
}
.header-search input {
    border: 1px solid #ccd9ed;
    border-radius: 24px 0 0 24px;
    font-size: 16px;
    padding: 8px 16px;
    width: 160px;
    background: #fff;
    transition: border .2s;
}
.header-search input:focus { border: 1.5px solid #1E5BC6; outline: none; }
.header-search button {
    background: #1E5BC6;
    border: none;
    border-radius: 0 24px 24px 0;
    padding: 8px 14px;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background .2s;
}
.header-search button:hover { background: #084494; }
.header-search svg { display: block; }

.header-cart {
    margin-left: 34px;
    position: relative;
    display: flex; align-items: center;
    justify-content: center;
    padding: 0 10px;
}
.header-cart svg { display: block; }
.cart-count {
    position: absolute;
    top: -5px; right: 0;
    background: #ff495c;
    color: #fff; font-size: 13px; font-weight: 600;
    border-radius: 50%;
    min-width: 22px; height: 22px;
    display: flex; align-items: center; justify-content: center;
    border: 2px solid #fff;
}

/* Mobile menu toggle */
.mobile-menu-toggle {
    display: none;
    background: transparent;
    border: none;
    cursor: pointer;
    margin-left: 24px;
    padding: 6px;
}

.catalog-nav {
    background: linear-gradient(90deg,#1E5BC6 0%, #2498d8 100%);
    padding: 0 0 0 12px;
    box-shadow: 0 2px 12px 0 rgba(30,91,198,.04);
}
.catalog-nav ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    min-height: 48px;
}
.catalog-nav li a {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 16px;
    border-radius: 9px 9px 0 0;
    display: block;
    transition: background .18s;
    letter-spacing: 0.01em;
}
.catalog-nav li a:hover,
.catalog-nav li a:focus {
    background: rgba(255,255,255,0.13);
}

/* Адаптивность header */
@media (max-width: 1100px) {
    .header-top { padding: 10px 14px 10px 8px; }
    .catalog-nav ul { gap: 9px; }
}
@media (max-width: 900px) {
    .header-top { flex-wrap: wrap; gap: 10px; min-height: 64px; }
    .main-nav ul { gap: 14px; }
    .header-search { margin-left: 16px; }
    .header-cart { margin-left: 16px; }
}
@media (max-width: 700px) {
    .main-nav, .header-search, .header-cart {
        display: none;
    }
    .mobile-menu-toggle { display: block; }
    .header-top { padding: 10px 8px; }
    .catalog-nav ul { flex-wrap: wrap; gap: 6px; }
}
@media (max-width: 550px) {
    .site-logo { height: 37px; }
    .catalog-nav ul { font-size: 14px; }
}
.visually-hidden {
    position: absolute !important; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0;
}
.site-footer {
    background: #f4f7fa;
    border-top: 1.5px solid #e1e6ef;
    font-size: 16px;
    color: #222;
    margin-top: 40px;
}

.footer-main {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 38px 0 10px 0;
    gap: 40px 24px;
    max-width: 1200px;
    margin: 0 auto;
}

.footer-col { flex: 1 1 210px; min-width: 210px; }
.footer-col h3 {
    font-size: 17px;
    font-weight: 700;
    color: #1E5BC6;
    margin-bottom: 14px;
    letter-spacing: 0.01em;
}

.footer-contact-list > div { margin-bottom: 8px; }
.footer-contact-title {
    display: block;
    font-weight: 600;
    color: #243c5a;
    font-size: 15px;
}
.footer-contact-link, .footer-contact-value {
    color: #1a1a1a;
    font-size: 15px;
    display: block;
    margin-top: 2px;
}
.footer-contact-link:hover { color: #1E5BC6; }

.footer-search {
    display: flex; align-items: center; margin-bottom: 18px;
}
.footer-search input {
    border: 1px solid #ccd9ed;
    border-radius: 24px 0 0 24px;
    font-size: 15px;
    padding: 8px 14px;
    width: 155px;
    background: #fff;
    transition: border .2s;
}
.footer-search input:focus { border: 1.5px solid #1E5BC6; outline: none; }
.footer-search button {
    background: #1E5BC6;
    border: none;
    border-radius: 0 24px 24px 0;
    padding: 8px 10px;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background .2s;
}
.footer-search button:hover { background: #084494; }
.footer-search svg { display: block; }

.footer-news, .footer-articles {
    margin-bottom: 18px;
}
.footer-news ul, .footer-articles ul { padding: 0; margin: 0; }
.footer-news li, .footer-articles li { margin-bottom: 7px; display: flex; flex-direction: column; }
.footer-news a, .footer-articles a { color: #1a1a1a; font-size: 15px; font-weight: 500; }
.footer-news-date, .footer-articles-date {
    font-size: 13px; color: #8d98a6; margin-top: 2px;
}
.footer-article-img {
    width: 30px;
    height: 30px;
    object-fit: cover;
    display: inline-block;
    margin-right: 9px;
    border-radius: 7px;
    vertical-align: middle;
}

.footer-social { margin-bottom: 18px; }
.footer-social-links {
    display: flex;
    gap: 14px;
    margin-top: 6px;
}
.footer-social-links a { display: block; }
.footer-social-links svg {
    display: block; border-radius: 50%;
    transition: box-shadow .2s;
    box-shadow: 0 0 0 0 transparent;
}
.footer-social-links a:hover svg { box-shadow: 0 0 0 3px #d6eaff; }

.footer-links ul { padding: 0; margin: 0; }
.footer-links li { margin-bottom: 7px; }
.footer-links a {
    color: #243c5a; font-size: 15px;
    font-weight: 500;
    transition: color .2s;
}
.footer-links a:hover { color: #1E5BC6; }

.footer-bottom {
    background: #eaf2fc;
    border-top: 1px solid #d9e3f0;
    margin-top: 18px;
    padding: 18px 0 10px 0;
}
.footer-advantages {
    display: flex;
    justify-content: center;
    gap: 48px;
    margin-bottom: 6px;
}
.footer-advantages > div {
    display: flex; align-items: center; gap: 10px;
    font-size: 15px; color: #1a1a1a;
}
.footer-advantages svg {
    display: block;
}
.footer-legal {
    display: flex; flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
    font-size: 13px; color: #7a8796;
    margin-top: 2px;
}
.footer-legal a { color: #1E5BC6; }

@media (max-width: 900px) {
    .footer-main { flex-wrap: wrap; gap: 22px 0; }
    .footer-col { min-width: 180px; flex-basis: 48%; }
    .footer-advantages { gap: 24px; }
}
@media (max-width: 650px) {
    .footer-main { flex-direction: column; gap: 24px 0; }
    .footer-col { min-width: 0; width: 100%; }
    .footer-advantages { flex-direction: column; align-items: flex-start; gap: 12px; }
    .footer-legal { flex-direction: column; gap: 8px; align-items: flex-start; }
}
/* === Hero Block === */
.hero-block {
    background: linear-gradient(90deg,#f7fafc 65%,#eaf2fc 100%);
    position: relative;
    overflow: hidden;
    min-height: 390px;
    padding: 0 0 0 0;
}
.hero-bg {
    position: absolute;
    right: 0; top: 0; bottom: 0;
    width: 60vw; min-width: 390px;
    background: linear-gradient(270deg,#eaf2fc 65%,#f7fafc 100%);
    z-index: 1;
    pointer-events: none;
}
.hero-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    min-height: 390px;
    gap: 40px;
    padding: 40px 0 24px 0;
}
.hero-offer {
    max-width: 480px;
}
.hero-offer h1 {
    font-size: 2.4rem;
    color: #1E5BC6;
    font-weight: 700;
    margin-bottom: 18px;
    letter-spacing: 0.01em;
}
.hero-offer p {
    color: #25385d;
    font-size: 1.16rem;
    margin-bottom: 26px;
}
.hero-features {
    margin-bottom: 30px;
    padding-left: 0;
}
.hero-features li {
    display: flex;
    align-items: center;
    font-size: 1rem;
    color: #243c5a;
    margin-bottom: 6px;
    gap: 8px;
    font-weight: 500;
}
.hero-btn {
    display: inline-block;
    background: #1E5BC6;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 13px 36px;
    border-radius: 30px;
    box-shadow: 0 4px 24px 0 rgba(30,91,198,0.07);
    border: none;
    outline: none;
    transition: background .2s, box-shadow .2s;
}
.hero-btn:hover, .hero-btn:focus { background: #114088; box-shadow: 0 4px 16px 0 #bcd1ef6a; }
.hero-img { min-width: 330px; max-width: 470px; }
.hero-img img { width: 100%; border-radius: 36px 6px 24px 12px; box-shadow: 0 4px 28px 0 #d8eafd55; }

/* === Advantages Section === */
.advantages-section {
    background: #fff;
    padding: 34px 0;
}
.advantages-list {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
}
.advantage-item {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #f7fafc;
    border-radius: 16px;
    padding: 22px 22px 22px 18px;
    min-width: 200px;
    flex: 1 1 220px;
    font-size: 1rem;
    color: #243c5a;
    font-weight: 500;
    box-shadow: 0 2px 10px 0 #d3e3f566;
}

/* === Hits Section === */
.hits-section {
    background: #eaf2fc;
    padding: 42px 0 35px 0;
}
.section-title {
    font-size: 1.7rem;
    color: #1E5BC6;
    font-weight: 700;
    margin-bottom: 28px;
    letter-spacing: 0.01em;
    line-height: 1.2;
}
.hits-slider {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(210px,1fr));
    gap: 32px;
}
.product-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 24px 0 #d1eafd28;
    padding: 18px 18px 15px 18px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: box-shadow .18s;
}
.product-card img {
    height: 130px;
    object-fit: contain;
    margin-bottom: 13px;
}
.product-title {
    font-weight: 600;
    font-size: 1.05rem;
    margin-bottom: 7px;
    color: #25385d;
}
.product-price {
    color: #1E5BC6;
    font-weight: 700;
    margin-bottom: 13px;
    font-size: 1.07rem;
}
.product-btn {
    background: #1E5BC6;
    color: #fff;
    font-weight: 500;
    padding: 9px 22px;
    border-radius: 20px;
    font-size: 1rem;
    transition: background .2s;
    border: none;
    outline: none;
    margin-top: auto;
}
.product-btn:hover, .product-btn:focus { background: #114088; }

/* === Catalog Categories === */
.catalog-categories {
    background: #fff;
    padding: 42px 0;
}
.categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
    gap: 24px;
}
.category-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f7fafc;
    border-radius: 12px;
    padding: 20px 8px 15px 8px;
    box-shadow: 0 2px 12px 0 #d9eafc18;
    transition: box-shadow .18s, transform .12s;
    color: #243c5a;
    font-weight: 600;
    font-size: 1.06rem;
}
.category-card:hover, .category-card:focus {
    box-shadow: 0 4px 18px 0 #c0def855;
    transform: translateY(-4px) scale(1.03);
}
.category-card img {
    width: 54px;
    height: 54px;
    object-fit: contain;
    margin-bottom: 12px;
}
.category-card span {
    text-align: center;
}

/* === Why Section === */
.why-section {
    background: #eaf2fc;
    padding: 34px 0 22px 0;
}
.why-list { }
.why-items {
    display: flex;
    gap: 28px;
    flex-wrap: wrap;
}
.why-item {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 13px;
    padding: 16px 22px;
    gap: 13px;
    min-width: 190px;
    flex: 1 1 215px;
    color: #243c5a;
    font-size: 1.04rem;
    font-weight: 500;
    box-shadow: 0 2px 10px 0 #d3e3f566;
}
.why-icon { min-width: 32px; }

/* === Delivery Info Section === */
.delivery-info-section {
    background: #fff;
    padding: 38px 0 32px 0;
}
.delivery-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 38px;
    flex-wrap: wrap;
}
.delivery-info > div { flex: 1 1 320px; }
.delivery-info h2 { margin-bottom: 10px; }
.delivery-info p { font-size: 1.08rem; color: #25385d; margin-bottom: 19px; }
.delivery-img img {
    width: 205px; min-width: 135px; border-radius: 20px;
    box-shadow: 0 4px 18px 0 #d8eafd66;
    display: block;
    margin: 0 auto;
}
.btn-secondary {
    background: #fff;
    color: #1E5BC6;
    border: 1.5px solid #1E5BC6;
    font-weight: 600;
    padding: 10px 28px;
    border-radius: 24px;
    font-size: 1rem;
    transition: background .2s, color .2s;
}
.btn-secondary:hover, .btn-secondary:focus { background: #eaf2fc; color: #114088; }

/* === Main Blog Section === */
.main-blog-section {
    background: #eaf2fc;
    padding: 40px 0 25px 0;
}
.blog-mini-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 26px;
}
.blog-mini-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px 0 #d9eafc26;
    padding: 17px 13px 12px 13px;
    text-decoration: none;
    color: #243c5a;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: box-shadow .18s, transform .13s;
}
.blog-mini-card:hover, .blog-mini-card:focus { box-shadow: 0 6px 18px 0 #c0def87a; transform: translateY(-3px) scale(1.02);}
.blog-mini-card img {
    width: 100%;
    height: 90px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 10px;
}
.blog-mini-title {
    font-size: 1.04rem;
    font-weight: 600;
    margin-bottom: 6px;
    color: #1E5BC6;
}
.blog-mini-date {
    color: #7a8796;
    font-size: 0.98rem;
    margin-top: 3px;
}

/* === Адаптивность главной страницы === */
@media (max-width: 1200px) {
    .container { max-width: 97vw; }
}
@media (max-width: 1000px) {
    .hero-inner { flex-direction: column; align-items: flex-start; gap: 26px; }
    .hero-img { margin: 0 auto; min-width: 240px; }
    .advantages-list { gap: 10px; }
    .why-items { gap: 12px; }
    .delivery-info { flex-direction: column; gap: 22px; }
}
@media (max-width: 750px) {
    .hero-block, .advantages-section, .hits-section, .catalog-categories, .why-section, .delivery-info-section, .main-blog-section {
        padding-left: 0; padding-right: 0;
    }
    .container { padding: 0 7px; }
    .hero-inner { padding: 27px 0 15px 0; }
    .hero-offer h1 { font-size: 1.38rem; }
    .section-title { font-size: 1.22rem; }
    .advantages-list, .why-items, .categories-grid, .hits-slider, .blog-mini-grid { gap: 8px; }
    .product-card { padding: 9px 6px 11px 6px; }
    .category-card { padding: 9px 3px 10px 3px; }
}
@media (max-width: 540px) {
    .hero-inner { flex-direction: column; padding: 18px 0 7px 0; }
    .hero-offer h1 { font-size: 1.04rem; }
    .hero-offer { max-width: 98vw; }
    .hero-img { min-width: 120px; max-width: 210px; }
    .advantages-list, .why-items, .categories-grid, .hits-slider, .blog-mini-grid { flex-direction: column; grid-template-columns: 1fr; }
    .advantage-item, .why-item { padding: 11px 8px; font-size: .97rem;}
    .product-title, .product-price { font-size: .98rem;}
    .blog-mini-card { padding: 9px 5px 7px 5px; }
    .delivery-img img { width: 94vw; min-width: 60px; }
}

/* === Общие utility-стили, если нужны === */
.btn, .btn-secondary { cursor: pointer; user-select: none; text-align: center; }
.main-content { background: #f7fafc; min-height: 90vh; }
.products-section {
    margin-bottom: 40px;
}
.products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 32px;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 0 auto;
}
.product-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 24px 0 #d1eafd28;
    padding: 18px 18px 15px 18px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: box-shadow .18s;
    min-width: 0;
}
.product-card img {
    height: 120px;
    object-fit: contain;
    margin-bottom: 13px;
    width: 100%;
    max-width: 180px;
    display: block;
}
.product-title {
    font-weight: 600;
    font-size: 1.07rem;
    margin-bottom: 7px;
    color: #25385d;
}
.product-price {
    color: #1E5BC6;
    font-weight: 700;
    margin-bottom: 13px;
    font-size: 1.07rem;
}
.product-btn {
    background: #1E5BC6;
    color: #fff;
    font-weight: 500;
    padding: 9px 22px;
    border-radius: 20px;
    font-size: 1rem;
    transition: background .2s;
    border: none;
    outline: none;
    margin-top: auto;
}
.product-btn:hover, .product-btn:focus { background: #114088; }
@media (max-width: 900px) {
    .products-grid { gap: 16px; }
    .product-card { padding: 12px 9px 10px 9px; }
}
@media (max-width: 700px) {
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    .product-card img { height: 80px; max-width: 94px; }
    .product-card { font-size: .97rem; }
}
@media (max-width: 480px) {
    .products-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .product-card img { height: 64px; max-width: 80vw; }
}
.product-page-main {
    display: flex;
    align-items: flex-start;
    gap: 40px;
    margin-top: 34px;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 4px 24px 0 #d1eafd22;
    padding: 30px 24px;
    flex-wrap: wrap;
}
.product-page-img img {
    width: 290px;
    max-width: 95vw;
    border-radius: 16px;
    background: #f7fafc;
    box-shadow: 0 2px 10px 0 #e1ebf5cc;
}
.product-page-info {
    flex: 1 1 250px;
    min-width: 220px;
}
.product-page-price {
    font-size: 1.4rem;
    font-weight: 700;
    color: #1E5BC6;
    margin: 12px 0 7px 0;
}
.product-page-desc {
    font-size: 1.1rem;
    margin-bottom: 14px;
    color: #25385d;
}
.product-chars {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 19px;
}
.product-chars td {
    font-size: 1rem;
    padding: 4px 10px 4px 0;
    color: #25385d;
}
.product-chars td:first-child {
    color: #748ba7;
    min-width: 108px;
}
.product-buy-btn {
    display: inline-block;
    background: #1E5BC6;
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 13px 36px;
    border-radius: 30px;
    margin-bottom: 9px;
    text-align: center;
    transition: background .18s;
    box-shadow: 0 4px 16px 0 #bcd1ef6a;
    text-decoration: none;
}
.product-buy-btn:hover, .product-buy-btn:focus { background: #114088; }
.product-back {
    display: inline-block;
    margin-top: 12px;
    color: #1E5BC6;
    font-size: 1.01rem;
    text-decoration: underline;
    transition: color .16s;
}
.product-back:hover { color: #0d315d; }
@media (max-width: 950px) {
    .product-page-main { flex-direction: column; gap: 18px; padding: 18px 7px; }
    .product-page-img img { margin: 0 auto; }
}
.blog-hero {
    background: linear-gradient(90deg,#eaf2fc 70%,#f7fafc 100%);
    padding: 42px 0 18px 0;
}
.blog-hero-desc {
    max-width: 630px;
    font-size: 1.14rem;
    color: #243c5a;
    margin-top: 12px;
    margin-bottom: 10px;
}
.blog-articles-list {
    background: #f7fafc;
    padding: 36px 0 34px 0;
}
.blog-articles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}
.blog-article-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 18px 0 #d1eafd23;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: box-shadow .18s, transform .13s;
    position: relative;
    border: 1.5px solid #eaf2fc;
}
.blog-article-card:hover, .blog-article-card:focus {
    box-shadow: 0 8px 36px 0 #c0def888;
    transform: translateY(-3px) scale(1.025);
}
.blog-article-img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    display: block;
    background: #eaf2fc;
    border-bottom: 1px solid #eaf2fc;
}
.blog-article-content {
    padding: 18px 20px 18px 20px;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}
.blog-article-title {
    font-size: 1.17rem;
    font-weight: 700;
    color: #1E5BC6;
    margin-bottom: 7px;
    line-height: 1.18;
}
.blog-article-meta {
    color: #7a8796;
    font-size: .98rem;
    margin-bottom: 10px;
}
.blog-article-text {
    font-size: 1.07rem;
    color: #243c5a;
    line-height: 1.65;
    flex: 1 1 auto;
}
@media (max-width: 900px) {
    .blog-articles-grid { grid-template-columns: 1fr 1fr; gap: 16px;}
    .blog-article-img { height: 120px;}
    .blog-article-content { padding: 12px 10px 13px 10px;}
}
@media (max-width: 700px) {
    .blog-articles-grid { grid-template-columns: 1fr; gap: 10px; }
    .blog-article-img { height: 90px;}
    .blog-article-title { font-size: 1rem; }
    .blog-article-content { padding: 10px 6px 9px 6px;}
}
