.module-section-articles {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    
    margin: 0 auto;
    background-color: #ffffff;
    padding: 60px 0;
}

.module-section-articles .section-header-mobile {
    margin-bottom: 30px;
}

.module-section-articles .section-header-mobile .section-title-mobile {
    margin: 0;
}

/* Desktop Grid - 2 cards 1/4 width + 1 card 1/2 width */
.blog-grid-desktop {
    display: grid;
    grid-template-columns: 1fr 1fr 2fr;
    gap: 10px;
    margin-bottom: 40px;
    align-items: stretch;
}

.blog-card {
    background-color: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease;
    text-decoration: none;
    color: inherit;
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    height: 100%;
}

.blog-card:hover {
    transform: translateY(-4px);
    text-decoration: none;
    color: inherit;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.blog-card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    height: 100%;
}

.blog-card-link:hover {
    text-decoration: none;
    color: inherit;
}

/* Desktop Image - larger, equal height */
.blog-card-image-desktop {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 10px;
}

/* Mobile Image - smaller height, no border-radius */
.blog-card-image-mobile {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.blog-card-content {
    padding: 10px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

/* Mobile content - more spacing (airier) */
.blog-card-content-mobile {
    padding: 30px 20px 25px 20px;
}

.blog-card-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #000000;
    line-height: 1.4;
    margin-bottom: 0;
    height: 2.8em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.blog-card-date {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    font-size: 14px;
    color: #999999;
    margin-bottom: 12px;
}

.blog-card-description {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    font-size: 14px;
    color: #333333;
    line-height: 1.6;
    flex-grow: 1;
}



/* Mobile Carousel */
.blog-carousel-mobile {
    margin-bottom: 40px;
}

.blog-carousel {
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .owl-stage-outer {
    padding: 10px 0 40px 0;
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .owl-wrapper {
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .owl-wrapper-outer {
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .owl-item {
    padding: 0 15px;
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .item {
    padding: 0 5px;
    border: none !important;
    box-shadow: none !important;
}

.blog-carousel .owl-dots {
    text-align: center;
    margin-top: 30px;
}

.blog-carousel .owl-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ddd !important;
    display: inline-block;
    margin: 0 6px;
    transition: all 0.3s ease;
}

.blog-carousel .owl-dot.active {
    background: #ff6b35 !important;
    width: 8px;
    height: 8px;
}

/* Owl Carousel controls - оранжевые активные, серые неактивные */
.owl-controls .owl-page.active span {
    background: rgb(240, 86, 52) !important;
}

.owl-controls .owl-page span {
    background: #808080 !important;
}

/* Mobile: оранжевые активные, серые неактивные */
@media (max-width: 768px) {
    .blog-carousel .owl-dot {
        background: #808080 !important;
    }
    
    .blog-carousel .owl-dot.active {
        background: rgb(240, 86, 52) !important;
    }
    
    .owl-controls .owl-page.active span {
        background: rgb(240, 86, 52) !important;
    }
    
    .owl-controls .owl-page span {
        background: #808080 !important;
    }
}

.blog-carousel .owl-nav {
    display: none;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .module-section-articles {
        padding: 30px 0;
        overflow-y: auto;
    }
    
    .blog-card-mobile {
        width: 100%;
        margin-bottom: 0;
        border: none !important;
        border-radius: 0 !important;
        background-color: #ffffff;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-card-mobile * {
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
    }
    
    .blog-card-link {
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-card-image-mobile {
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-card-content-mobile {
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-card-content-mobile * {
        border: none !important;
        box-shadow: none !important;
    }
    
    /* Мобильная версия - карточки в карусели, полная ширина */
    .blog-carousel-mobile {
        margin-bottom: 20px;
    }
    
    .blog-carousel {
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-carousel .owl-stage-outer {
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .blog-carousel .owl-wrapper {
        border: none !important;
        box-shadow: none !important;
    }
    
    .blog-carousel .owl-item {
        border: none !important;
        box-shadow: none !important;
    }
    
    .blog-carousel .item {
        padding: 0;
        width: 100%;
        border: none !important;
        box-shadow: none !important;
    }
    
    .blog-carousel .owl-item {
        padding: 0;
        border: none !important;
        box-shadow: none !important;
    }
    
    .blog-carousel .owl-stage-outer {
        padding: 0 0 20px 0;
        border: none !important;
        box-shadow: none !important;
    }
    
    .blog-carousel .owl-dots {
        margin-top: 20px;
        padding-bottom: 10px;
    }
}

/* Bootstrap utility classes для модуля - ограничены областью .module-section-articles */
.module-section-articles .d-none {
    display: none !important;
}

.module-section-articles .d-md-none {
    display: none !important;
}

@media (min-width: 769px) {
    .module-section-articles .d-md-none {
        display: none !important;
    }
    
    .module-section-articles .d-md-block {
        display: block !important;
    }
    
    .module-section-articles .d-md-grid {
        display: grid !important;
    }
}

@media (max-width: 768px) {
    .module-section-articles .d-md-none {
        display: block !important;
    }
    
    .module-section-articles .d-md-block {
        display: none !important;
    }
    
    .module-section-articles .d-md-grid {
        display: none !important;
    }
    
    .module-section-articles .d-block {
        display: flex !important;
    }
}

/* Blog List Page - Bootstrap 3 columns on desktop, 1 column on mobile */
.blog-list-page .blog-grid {
    margin-bottom: 40px;
}

.blog-list-page .blog-grid.row {
    margin-left: -5px !important;
    margin-right: -5px !important;
}

.blog-list-page .blog-grid > div,
.blog-list-page .blog-grid .col-xs-12,
.blog-list-page .blog-grid .col-md-4,
.blog-list-page .blog-grid [class*="col-"],
.blog-list-page .blog-grid.row > div,
.blog-list-page .blog-grid.row .col-xs-12,
.blog-list-page .blog-grid.row .col-md-4,
.blog-list-page .blog-grid.row [class*="col-"] {
    padding-left: 5px !important;
    padding-right: 5px !important;
    padding-top: 0 !important;
    padding-bottom: 10px !important;
    display: flex;
}

.blog-list-page .blog-card {
    background-color: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease;
    text-decoration: none;
    color: inherit;
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    width: 100%;
    height: 100%;
}

.blog-list-page .blog-card.blog-card-desktop {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.blog-list-page .blog-card:hover {
    transform: translateY(-4px);
    text-decoration: none;
    color: inherit;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.blog-list-page .blog-card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    height: 100%;
}

.blog-list-page .blog-card-link:hover {
    text-decoration: none;
    color: inherit;
}

.blog-list-page .blog-card-image-desktop {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 10px;
}

.blog-list-page .blog-card-content {
    padding: 10px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.blog-list-page .blog-card-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #000000;
    line-height: 1.4;
    margin-bottom: 0;
    height: 2.8em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.blog-list-page .blog-card-date {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    font-size: 14px;
    color: #999999;
    margin-bottom: 12px;
}

.blog-list-page .blog-card-description {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    font-size: 14px;
    color: #333333;
    line-height: 1.6;
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word;
    flex-shrink: 0;
}
