/* =============================================================
   MINSA HOSPITAL — Single Post CSS
   Scoped ONLY to: .blog-page
   Colors: #BC0002 (Red) / #0154B4 (Blue)
   No font changes | No footer | No body changes
   ============================================================= */

.blog-page {
    --blue:   #0154B4;
    --blue-d: #013d87;
    --blue-l: #e8f1fb;
    --red:    #BC0002;
    --red-d:  #8a0001;
    --red-l:  #fdecea;
    --text:   #1a2332;
    --muted:  #4b5563;
    --light:  #64748b;
    --border: #e2e8f0;
    --bg:     #eef2f7;
    --card:   #ffffff;
    --dark:   #0a0f1e;
}

/* ════════════════════════════════════════
   ARTICLE CARD
════════════════════════════════════════ */
.blog-page article.post {
    background:    var(--card) !important;
    border-radius: 16px !important;
    box-shadow:    0 4px 32px rgba(188,0,2,0.07), 0 1px 4px rgba(0,0,0,0.04) !important;
    overflow:      hidden !important;
    border:        none !important;
    margin-bottom: 0 !important;
}

.blog-page .right-contents {
    float:  none !important;
    width:  100% !important;
    margin: 0 !important;
    padding:0 !important;
}

.blog-page article.post.clearfix::after {
    content: '';
    display: table;
    clear:   both;
}

/* ════════════════════════════════════════
   DATE BOX
════════════════════════════════════════ */
.blog-page .left_meta {
    float:          none !important;
    display:        flex !important;
    flex-direction: column !important;
    align-items:    center !important;
    gap:            6px !important;
    padding:        0 !important;
    margin:         0 !important;
    position:       absolute !important;
    top:            20px !important;
    left:           20px !important;
    z-index:        10 !important;
}

.blog-page time.entry-date,
.blog-page .entry-date {
    display:        flex !important;
    flex-direction: column !important;
    align-items:    center !important;
    justify-content:center !important;
    background:     var(--red) !important;
    color:          #fff !important;
    border-radius:  12px !important;
    padding:        10px 14px !important;
    font-size:      11px !important;
    font-weight:    600 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
    box-shadow:     0 4px 16px rgba(188,0,2,0.35) !important;
    border:         none !important;
    min-width:      60px !important;
    text-align:     center !important;
    line-height:    1.2 !important;
}

.blog-page time.entry-date strong {
    display:     block !important;
    font-size:   30px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    color:       #fff !important;
}

.blog-page .entry-comments-link {
    background:    rgba(188,0,2,0.1) !important;
    color:         var(--red) !important;
    font-size:     9px !important;
    padding:       3px 8px !important;
    border-radius: 20px !important;
    display:       block !important;
    text-align:    center !important;
    font-weight:   600 !important;
}

/* ════════════════════════════════════════
   FEATURED IMAGE — dark gradient overlay
════════════════════════════════════════ */
.blog-page .entry-header {
    border-bottom: 2px solid var(--bg) !important;
}
.blog-page .entry-header figure {
    margin:   0 !important;
    padding:  0 !important;
    display:  block !important;
    width:    100% !important;
    overflow: hidden !important;
    position: relative !important;
    line-height: 0 !important;
    font-size:   0 !important;
}

.blog-page .entry-header figure::after {
    content:  '' !important;
    position: absolute !important;
    bottom:   0 !important;
    left:     0 !important;
    right:    0 !important;
    height:   50% !important;
    background: linear-gradient(to top, rgba(10,15,30,0.65) 0%, transparent 100%) !important;
    pointer-events: none !important;
}

.blog-page .entry-header figure a {
    display:     block !important;
    line-height: 0 !important;
    border:      none !important;
}

.blog-page .entry-header figure img,
.blog-page .entry-header .wp-post-image {
    width:           100% !important;
    height:          400px !important;
    object-fit:      cover !important;
    object-position: center top !important;
    display:         block !important;
    border-radius:   0 !important;
    margin:          0 !important;
    padding:         0 !important;
    box-shadow:      none !important;
    max-width:       none !important;
}

/* ════════════════════════════════════════
   TITLE & AUTHOR
════════════════════════════════════════ */
.blog-page h1.entry-title {
    font-size:     27px !important;
    font-weight:   700 !important;
    color:         var(--text) !important;
    line-height:   1.4 !important;
    padding:       26px 30px 6px !important;
    margin:        0 !important;
    word-break:    normal !important;
    overflow-wrap: break-word !important;
    hyphens:       none !important;
    border-bottom: none !important;
    background:    transparent !important;
}

.blog-page h1.entry-title::after {
    content:       '' !important;
    display:       block !important;
    width:         56px !important;
    height:        3px !important;
    background:    var(--red) !important;
    border-radius: 2px !important;
    margin-top:    12px !important;
}

.blog-page .entry-author {
    display:       none !important;
    padding:       4px 30px 16px !important;
    font-size:     12px !important;
    color:         var(--light) !important;
    border-bottom: 2px solid var(--bg) !important;
}

.blog-page .entry-author a {
    color:          var(--red) !important;
    font-weight:    600 !important;
    text-decoration:none !important;
    border-bottom:  none !important;
}
/* ════════════════════════════════════════
   ENTRY CONTENT
════════════════════════════════════════ */
.blog-page .entry-content {
    padding:       24px 30px 32px !important;
    font-size:     14.5px !important;
    line-height:   1.9 !important;
    color:         var(--muted) !important;
    overflow-wrap: break-word !important;
    word-break:    normal !important;
    background:    #fff !important;
}

.blog-page .entry-content::after {
    content: '';
    display: table;
    clear:   both;
}

/* ════════════════════════════════════════
   PARAGRAPHS
════════════════════════════════════════ */
.blog-page .entry-content p,
.blog-page .entry-content .wp-block-paragraph {
    margin-bottom: 16px !important;
    color:         var(--muted) !important;
    font-size:     14.5px !important;
    line-height:   1.9 !important;
}

.blog-page .entry-content mark {
    background: transparent !important;
    color:      var(--text) !important;
    font-weight:600 !important;
}

.blog-page .entry-content strong,
.blog-page .entry-content b {
    font-weight: 700 !important;
    color:       var(--text) !important;
}

/* ════════════════════════════════════════
   HEADINGS
════════════════════════════════════════ */
.blog-page .entry-content h2 {
    font-size:     21px !important;
    font-weight:   700 !important;
    color:         var(--text) !important;
    margin:        32px 0 14px !important;
    padding:       13px 20px !important;
    background:    var(--red-l) !important;
    border-left:   5px solid var(--red) !important;
    border-radius: 0 10px 10px 0 !important;
    line-height:   1.35 !important;
}

.blog-page .entry-content h3,
.blog-page .entry-content .elementor-heading-title.elementor-size-default:is(h3),
.blog-page .entry-content .elementor-widget-heading h3 {
    font-size:     19px !important;
    font-weight:   700 !important;
    color:         var(--text) !important;
    margin:        28px 0 12px !important;
    padding:       0 0 10px !important;
    border-bottom: 2px solid var(--border) !important;
    position:      relative !important;
    line-height:   1.4 !important;
    background:    transparent !important;
    display:       block !important;
}

.blog-page .entry-content h3::after {
    content:    '' !important;
    position:   absolute !important;
    bottom:     -2px !important;
    left:       0 !important;
    width:      50px !important;
    height:     2px !important;
    background: var(--red) !important;
}

/* H4 — doctor / section title bar — BLUE */
.blog-page .entry-content h4,
.blog-page .entry-content .elementor-heading-title.elementor-size-default:is(h4),
.blog-page .entry-content .elementor-widget-heading h4,
.blog-page .entry-content .elementor-widget-text-editor h4 {
    font-size:      15px !important;
    font-weight:    700 !important;
    color:          #fff !important;
    margin:         26px 0 0 !important;
    padding:        12px 18px !important;
    background:     var(--blue) !important;
    border-radius:  10px 10px 0 0 !important;
    line-height:    1.4 !important;
    display:        block !important;
    letter-spacing: 0.2px !important;
    border-bottom:  3px solid rgba(255,255,255,0.12) !important;
}

.blog-page .entry-content h4 strong,
.blog-page .entry-content .elementor-widget-text-editor h4 strong {
    color:       #fff !important;
    font-weight: 700 !important;
}

.blog-page .entry-content h4 a,
.blog-page .entry-content h4 strong a {
    color:          #fff !important;
    text-decoration:none !important;
    border-bottom:  none !important;
}

.blog-page .entry-content h4 + p {
    margin-top:    0 !important;
    padding:       9px 18px 12px !important;
    background:    var(--blue-l) !important;
    border-left:   4px solid rgba(1,84,180,0.25) !important;
    border-radius: 0 !important;
    margin-bottom: 6px !important;
    font-size:     13.5px !important;
    color:         var(--blue-d) !important;
    font-style:    italic !important;
    line-height:   1.65 !important;
}

.blog-page .entry-content h5 {
    font-size:      13px !important;
    font-weight:    700 !important;
    color:          var(--red) !important;
    margin:         18px 0 6px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding-left:   12px !important;
    border-left:    3px solid var(--red) !important;
}

.blog-page .entry-content h6 {
    font-size:  13px !important;
    font-weight:700 !important;
    color:      var(--light) !important;
    margin:     14px 0 6px !important;
}

/* Remove anchor pointer on heading anchors */
.blog-page .entry-content h2 > a,
.blog-page .entry-content h3 > a,
.blog-page .entry-content h4 > a,
.blog-page .entry-content h5 > a,
.blog-page .entry-content h6 > a {
    color:          inherit !important;
    text-decoration:none !important;
    border-bottom:  none !important;
    pointer-events: none !important;
    font-weight:    inherit !important;
}

/* ════════════════════════════════════════
   LINKS
════════════════════════════════════════ */
.blog-page .entry-content a {
    color:          var(--blue) !important;
    text-decoration:none !important;
    font-weight:    500 !important;
    border-bottom:  1px solid rgba(1,84,180,0.22) !important;
    transition:     all 0.2s !important;
}
.blog-page .entry-content a:hover {
    color:              var(--red) !important;
    border-bottom-color:var(--red) !important;
}
.blog-page .entry-content a img,
.blog-page .entry-content .gallery-item a,
.blog-page .entry-content .elementor-widget-image a,
.blog-page .entry-content figure a {
    border-bottom: none !important;
}

/* ════════════════════════════════════════
   ELEMENTOR IMAGE WIDGET
════════════════════════════════════════ */

.blog-page .entry-content .elementor-widget-image img {
    border-radius:   12px !important;
    box-shadow:      0 4px 24px rgba(0,0,0,0.12) !important;
}

/* ════════════════════════════════════════
   ELEMENTOR DIVIDER
════════════════════════════════════════ */
.blog-page .entry-content .elementor-widget-divider {
    margin: 8px 0 !important;
    padding:0 !important;
}
.blog-page .entry-content .elementor-divider-separator {
    border-top: 1px solid var(--border) !important;
    display:    block !important;
    width:      100% !important;
}

/* ════════════════════════════════════════
   GALLERY — FULL WIDTH, FULL CELL
   Fixes WP inline styles: float:left; width:33%; border:2px
════════════════════════════════════════ */
.blog-page .entry-content .gallery,
.blog-page .entry-content .elementor-image-gallery .gallery,
.blog-page .entry-content [id^="gallery-"] {
    display:   grid !important;
    gap:       5px !important;
    margin:    24px -40px !important;
    width:     calc(100% + 80px) !important;
    clear:     both !important;
    float:     none !important;
    background:var(--dark) !important;
}

.blog-page .entry-content .gallery.gallery-columns-1,
.blog-page .entry-content [id^="gallery-"].gallery-columns-1 { grid-template-columns: 1fr !important; }
.blog-page .entry-content .gallery.gallery-columns-2,
.blog-page .entry-content [id^="gallery-"].gallery-columns-2 { grid-template-columns: repeat(2,1fr) !important; }
.blog-page .entry-content .gallery.gallery-columns-3,
.blog-page .entry-content [id^="gallery-"].gallery-columns-3 { grid-template-columns: repeat(3,1fr) !important; }
.blog-page .entry-content .gallery.gallery-columns-4,
.blog-page .entry-content [id^="gallery-"].gallery-columns-4 { grid-template-columns: repeat(4,1fr) !important; }
.blog-page .entry-content .gallery.gallery-columns-5,
.blog-page .entry-content [id^="gallery-"].gallery-columns-5 { grid-template-columns: repeat(5,1fr) !important; }
.blog-page .entry-content .gallery:not([class*="gallery-columns"]) { grid-template-columns: repeat(3,1fr) !important; }

/* DL = grid cell */
.blog-page .entry-content .gallery dl.gallery-item,
.blog-page .entry-content [id^="gallery-"] dl.gallery-item {
    float:        none !important;
    width:        100% !important;
    max-width:    100% !important;
    margin:       0 !important;
    padding:      0 !important;
    display:      block !important;
    overflow:     hidden !important;
    border:       none !important;
    border-radius:0 !important;
    line-height:  0 !important;
}

/* DT icon wrapper */
.blog-page .entry-content .gallery dt.gallery-icon,
.blog-page .entry-content [id^="gallery-"] dt.gallery-icon {
    float:       none !important;
    width:       100% !important;
    height:      240px !important;
    overflow:    hidden !important;
    display:     block !important;
    margin:      0 !important;
    padding:     0 !important;
    border:      none !important;
    line-height: 0 !important;
}

/* Anchor wrapper */
.blog-page .entry-content .gallery dt.gallery-icon a,
.blog-page .entry-content [id^="gallery-"] dt.gallery-icon a {
    display:     block !important;
    width:       100% !important;
    height:      240px !important;
    overflow:    hidden !important;
    border:      none !important;
    line-height: 0 !important;
}

/* THE IMAGE — full width, cover, no border */
.blog-page .entry-content .gallery img,
.blog-page .entry-content .gallery dl img,
.blog-page .entry-content .gallery dt img,
.blog-page .entry-content .gallery .gallery-icon img,
.blog-page .entry-content [id^="gallery-"] img,
.blog-page .entry-content .elementor-image-gallery .gallery img {
    display:         block !important;
    width:           100% !important;
    min-width:       100% !important;
    height:          240px !important;
    max-height:      240px !important;
    object-fit:      cover !important;
    object-position: center top !important;
    border:          none !important;
    border-radius:   0 !important;
    margin:          0 !important;
    padding:         0 !important;
    box-shadow:      none !important;
    transition:      transform 0.35s ease !important;
    vertical-align:  top !important;
}

.blog-page .entry-content .gallery dl:hover img,
.blog-page .entry-content [id^="gallery-"] dl:hover img {
    transform: scale(1.05) !important;
}

.blog-page .entry-content .gallery-caption,
.blog-page .entry-content .gallery dd {
    display:     block !important;
    font-size:   11px !important;
    color:       rgba(255,255,255,0.55) !important;
    font-style:  italic !important;
    text-align:  center !important;
    padding:     5px 8px !important;
    background:  rgba(0,0,0,0.5) !important;
    margin:      0 !important;
    line-height: 1.4 !important;
}

/* Kill WP br clear */
.blog-page .entry-content .gallery br,
.blog-page .entry-content [id^="gallery-"] br { display: none !important; }

.blog-page .entry-content .elementor-image-gallery { width: 100% !important; margin: 0 !important; }

/* ════════════════════════════════════════
   WP-CAPTION / GUTENBERG IMAGES
════════════════════════════════════════ */
.blog-page .entry-content .wp-caption {
    border:     none !important;
    padding:    0 !important;
    width:      100% !important;
    max-width:  100% !important;
    margin:     20px 0 !important;
    background: transparent !important;
}

.blog-page .entry-content .wp-caption img {
    width:           100% !important;
    min-width:       100% !important;
    height:          280px !important;
    object-fit:      cover !important;
    object-position: center top !important;
    border-radius:   12px !important;
    box-shadow:      0 4px 24px rgba(0,0,0,0.12) !important;
    margin:          0 !important;
    border:          none !important;
}

.blog-page .entry-content .wp-caption-text {
    font-size:     11px !important;
    color:         var(--light) !important;
    font-style:    italic !important;
    text-align:    center !important;
    padding:       6px 10px !important;
    background:    #f8fafc !important;
    border-radius: 0 0 12px 12px !important;
    margin:        0 !important;
}

.blog-page .entry-content .wp-block-image {
    margin: 20px 0 !important;
    width:  100% !important;
}

.blog-page .entry-content .wp-block-image img {
    width:         100% !important;
    min-width:     100% !important;
    height:        300px !important;
    object-fit:    cover !important;
    border-radius: 12px !important;
    box-shadow:    0 4px 24px rgba(0,0,0,0.12) !important;
    margin:        0 !important;
    border:        none !important;
}

.blog-page .entry-content figure { margin: 18px 0 !important; width: 100% !important; }
.blog-page .entry-content figcaption { font-size: 11px !important; color: var(--light) !important; font-style: italic !important; padding: 6px 12px !important; text-align: center !important; background: #f8fafc !important; margin: 0 !important; }

.blog-page .entry-content .alignleft  { float: left !important;  margin: 4px 20px 16px 0 !important; max-width: 44% !important; }
.blog-page .entry-content .alignright { float: right !important; margin: 4px 0 16px 20px !important;  max-width: 44% !important; }
.blog-page .entry-content .aligncenter { float: none !important; display: block !important; margin: 18px auto !important; }

/* ════════════════════════════════════════
   LISTS
════════════════════════════════════════ */
.blog-page .entry-content ul,
.blog-page .entry-content ol,
.blog-page .entry-content .wp-block-list {
    padding-left: 0 !important;
    margin:       10px 0 16px !important;
    list-style:   none !important;
    background:   transparent !important;
}

.blog-page .entry-content ul li,
.blog-page .entry-content .wp-block-list li {
    position:     relative !important;
    padding:      9px 12px 9px 30px !important;
    font-size:    14px !important;
    color:        var(--muted) !important;
    border-bottom:1px solid #f3f4f6 !important;
    line-height:  1.7 !important;
    background:   transparent !important;
    list-style:   none !important;
    transition:   background 0.15s !important;
}
.blog-page .entry-content ul li:last-child { border-bottom: none !important; }
.blog-page .entry-content ul li::before,
.blog-page .entry-content .wp-block-list li::before {
    content:       '' !important;
    position:      absolute !important;
    left:          10px !important;
    top:           18px !important;
    width:         7px !important;
    height:        7px !important;
    background:    var(--red) !important;
    border-radius: 50% !important;
    display:       block !important;
}

.blog-page .entry-content ol { counter-reset: ol-c !important; }

.blog-page .entry-content ol li {
    position:          relative !important;
    padding:           9px 12px 9px 38px !important;
    font-size:         14px !important;
    color:             var(--muted) !important;
    border-bottom:     1px solid #f3f4f6 !important;
    counter-increment: ol-c !important;
    list-style:        none !important;
    line-height:       1.7 !important;
    background:        transparent !important;
}
.blog-page .entry-content ol li:last-child { border-bottom: none !important; }
.blog-page .entry-content ol li::before {
    content:       counter(ol-c) !important;
    position:      absolute !important;
    left:          8px !important;
    top:           10px !important;
    width:         22px !important;
    height:        22px !important;
    background:    var(--red) !important;
    color:         #fff !important;
    font-size:     10px !important;
    font-weight:   700 !important;
    border-radius: 50% !important;
    text-align:    center !important;
    line-height:   22px !important;
    display:       block !important;
}

/* ════════════════════════════════════════
   TABLES
════════════════════════════════════════ */
.blog-page .entry-content .wp-block-table {
    overflow-x:    auto !important;
    margin:        24px 0 !important;
    border-radius: 14px !important;
    box-shadow:    0 2px 16px rgba(1,84,180,0.08) !important;
}

.blog-page .entry-content .wp-block-table table,
.blog-page .entry-content table {
    width:           100% !important;
    border-collapse: collapse !important;
    margin:          0 !important;
    font-size:       13.5px !important;
    border-radius:   14px !important;
    overflow:        hidden !important;
}

.blog-page .entry-content table thead {
    border-bottom: 3px solid #013d87 !important;
}

.blog-page .entry-content table thead td,
.blog-page .entry-content table thead th {
    background:  var(--blue) !important;
    color:       #fff !important;
    padding:     13px 16px !important;
    font-weight: 700 !important;
    font-size:   13px !important;
    text-align:  left !important;
    border:      none !important;
    line-height: 1.4 !important;
}

.blog-page .entry-content table tbody td,
.blog-page .entry-content table tbody th {
    padding:        11px 16px !important;
    border:         none !important;
    border-bottom:  1px solid var(--border) !important;
    color:          var(--muted) !important;
    font-size:      13.5px !important;
    line-height:    1.6 !important;
    vertical-align: top !important;
    background:     #fff !important;
}

.blog-page .entry-content table tbody tr:nth-child(even) td { background: #f0f6ff !important; }
.blog-page .entry-content table tbody tr:last-child td { border-bottom: none !important; }
.blog-page .entry-content table a { color: var(--blue) !important; font-weight: 600 !important; border-bottom: 1px solid rgba(1,84,180,0.25) !important; }

/* ════════════════════════════════════════
   BLOCKQUOTE
════════════════════════════════════════ */
.blog-page .entry-content blockquote {
    background:    var(--dark) !important;
    border:        none !important;
    border-radius: 14px !important;
    padding:       20px 22px 20px 62px !important;
    margin:        24px 0 !important;
    position:      relative !important;
    overflow:      hidden !important;
}
.blog-page .entry-content blockquote::before {
    content:     '\201C' !important;
    position:    absolute !important;
    top:         2px !important;
    left:        14px !important;
    font-size:   58px !important;
    color:       var(--red) !important;
    font-family: Georgia, serif !important;
    line-height: 1 !important;
    opacity:     0.75 !important;
}
.blog-page .entry-content blockquote p {
    color:      #e2e8f0 !important;
    font-size:  14.5px !important;
    font-style: italic !important;
    line-height:1.8 !important;
    margin:     0 !important;
    background: transparent !important;
    border:     none !important;
    padding:    0 !important;
}
.blog-page .entry-content blockquote cite {
    display:    block !important;
    margin-top: 10px !important;
    font-size:  11px !important;
    font-weight:700 !important;
    color:      var(--red) !important;
    font-style: normal !important;
}
/* ════════════════════════════════════════
   MESSAGE BOXES — .message.bg-info / .bg-warning
   HTML: <p class="message bg-info text-info">
         <p class="message bg-warning text-warning">
════════════════════════════════════════ */

/* Base shared styles */
.blog-page .entry-content p.message,
.blog-page .entry-content .message {
    display:       flex !important;
    align-items:   flex-start !important;
    gap:           12px !important;
    padding:       14px 16px !important;
    border-radius: 10px !important;
    margin:        18px 0 !important;
    font-size:     13.5px !important;
    line-height:   1.7 !important;
    position:      relative !important;
    border-left:   5px solid !important;
}

/* INFO — blue */
.blog-page .entry-content p.message.bg-info,
.blog-page .entry-content .message.bg-info {
    background:  #e8f1fb !important;
    border-color:#0154B4 !important;
    color:       #013d87 !important;
}

.blog-page .entry-content p.message.bg-info strong {
    color:       #0154B4 !important;
    font-weight: 700 !important;
}

/* WARNING — amber */
.blog-page .entry-content p.message.bg-warning,
.blog-page .entry-content .message.bg-warning {
    background:  #fffbeb !important;
    border-color:#d97706 !important;
    color:       #92400e !important;
}

.blog-page .entry-content p.message.bg-warning strong {
    color:       #d97706 !important;
    font-weight: 700 !important;
}

/* SUCCESS — green (bonus, common pattern) */
.blog-page .entry-content p.message.bg-success,
.blog-page .entry-content .message.bg-success {
    background:  #f0fdf4 !important;
    border-color:#16a34a !important;
    color:       #14532d !important;
}

.blog-page .entry-content p.message.bg-success strong {
    color:       #16a34a !important;
    font-weight: 700 !important;
}

/* DANGER — red (bonus, common pattern) */
.blog-page .entry-content p.message.bg-danger,
.blog-page .entry-content .message.bg-danger {
    background:  var(--red-l) !important;
    border-color:var(--red) !important;
    color:       var(--red-d) !important;
}

.blog-page .entry-content p.message.bg-danger strong {
    color:       var(--red) !important;
    font-weight: 700 !important;
}

/* Close button inside message */
.blog-page .entry-content .message .close {
    display:   none !important;
    position:   absolute !important;
    top:        10px !important;
    right:      12px !important;
    background: transparent !important;
    border:     none !important;
    font-size:  16px !important;
    cursor:     pointer !important;
    opacity:    0.5 !important;
    line-height:1 !important;
    padding:    0 !important;
    color:      inherit !important;
}
.blog-page .entry-content .message .close:hover {
    opacity: 1 !important;
}
/* ════════════════════════════════════════
   HR / INFO BOX
════════════════════════════════════════ */
.blog-page .entry-content hr { border: none !important; height: 1px !important; background: var(--border) !important; margin: 24px 0 !important; clear: both !important; }
.blog-page .entry-content .info-box,
.blog-page .entry-content .notice,
.blog-page .entry-content .alert { background: var(--blue-l) !important; border-left: 5px solid var(--blue) !important; border-radius: 0 10px 10px 0 !important; padding: 14px 16px !important; margin: 18px 0 !important; font-size: 13.5px !important; color: var(--blue-d) !important; line-height: 1.7 !important; border-top: none !important; border-right: none !important; border-bottom: none !important; }

/* ════════════════════════════════════════
   ENTRY FOOTER
════════════════════════════════════════ */
.blog-page .entry-footer {
    padding:     16px 30px !important;
    background:  #fafafa !important;
    border-top:  2px solid var(--red-l) !important;
    display:     flex !important;
    align-items: center !important;
    flex-wrap:   wrap !important;
    gap:         8px !important;
}
.blog-page .entry-footer .entry-meta { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; background: transparent !important; border: none !important; font-size: 12px !important; color: var(--light) !important; align-items: center !important; }
.blog-page .entry-footer .fa { color: var(--red) !important; }
.blog-page .entry-footer a,
.blog-page .entry-categories a { background: var(--red-l) !important; color: var(--red-d) !important; font-size: 12px !important; font-weight: 600 !important; padding: 4px 14px !important; border-radius: 20px !important; border: 1px solid rgba(188,0,2,0.18) !important; border-bottom: 1px solid rgba(188,0,2,0.18) !important; text-decoration: none !important; transition: all 0.2s !important; }
.blog-page .entry-footer a:hover { background: var(--red) !important; color: #fff !important; border-color: var(--red) !important; }

/* ════════════════════════════════════════
   BREADCRUMB
════════════════════════════════════════ */
.blog-page .bread-crumb { font-size: 12px !important; color: var(--light) !important; display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 4px !important; line-height: 1.4 !important; }
.blog-page .bread-crumb a { color: var(--red) !important; font-weight: 600 !important; text-decoration: none !important; border-bottom: none !important; }
.blog-page .bread-crumb .divider::after { content: ' › ' !important; color: #bbb !important; }

/* ════════════════════════════════════════
   SIDEBAR WIDGETS
════════════════════════════════════════ */
.blog-page aside.sidebar { padding: 0 !important; }

.blog-page aside.sidebar section.widget,
.blog-page aside.sidebar .widget {
    background:    var(--card) !important;
    border-radius: 14px !important;
    overflow:      hidden !important;
    margin-bottom: 20px !important;
    box-shadow:    0 2px 16px rgba(188,0,2,0.07) !important;
    border:        none !important;
    padding:       0 !important;
}

/* Widget title — RED */
.blog-page aside.sidebar h3.title,
.blog-page aside.sidebar .widget-title,
.blog-page aside.sidebar .widgettitle {
    background:     var(--red) !important;
    color:          #fff !important;
    font-size:      13px !important;
    font-weight:    700 !important;
    padding:        13px 18px !important;
    margin:         0 !important;
    border-radius:  0 !important;
    border:         none !important;
    letter-spacing: 0.3px !important;
    line-height:    1.3 !important;
    display:        block !important;
    text-transform: none !important;
}

/* Tabs widget */
.blog-page .tabs-widget .tab-head { display: inline-block !important; padding: 10px 16px !important; font-size: 12px !important; font-weight: 700 !important; color: var(--light) !important; cursor: pointer !important; border-bottom: 2px solid transparent !important; background: #f8f9fa !important; margin: 0 !important; transition: all 0.2s !important; }
.blog-page .tabs-widget .tab-head h6 { font-size: 12px !important; font-weight: 700 !important; margin: 0 !important; color: inherit !important; }
.blog-page .tabs-widget .tab-head.active { color: var(--red) !important; border-bottom-color: var(--red) !important; background: #fff !important; }

.blog-page .tabs-widget .tab-post-listing { display: flex !important; align-items: flex-start !important; gap: 12px !important; padding: 10px 14px !important; border-bottom: 1px solid #f0f4f8 !important; transition: background 0.15s !important; }
.blog-page .tabs-widget .tab-post-listing:last-child { border-bottom: none !important; }
.blog-page .tabs-widget .tab-post-listing:hover { background: var(--red-l) !important; }
.blog-page .tabs-widget .tab-post-listing figure { margin: 0 !important; padding: 0 !important; flex-shrink: 0 !important; width: 56px !important; height: 56px !important; border-radius: 8px !important; overflow: hidden !important; line-height: 0 !important; }
.blog-page .tabs-widget .tab-post-listing figure img,
.blog-page .tabs-widget .tabs-thumb { width: 56px !important; height: 56px !important; object-fit: cover !important; border-radius: 8px !important; box-shadow: none !important; display: block !important; margin: 0 !important; }
.blog-page .tabs-widget .tab-post-listing .post-content { flex: 1 !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; gap: 4px !important; }
.blog-page .tabs-widget .tab-post-listing .post-content h6 { font-size: 12px !important; font-weight: 600 !important; color: var(--text) !important; margin: 0 !important; line-height: 1.45 !important; }
.blog-page .tabs-widget .tab-post-listing .post-content h6 a { color: var(--text) !important; text-decoration: none !important; border-bottom: none !important; font-weight: 600 !important; transition: color 0.2s !important; }
.blog-page .tabs-widget .tab-post-listing .post-content h6 a:hover { color: var(--red) !important; }
.blog-page .tabs-widget .tab-post-listing .post-content span { font-size: 10px !important; color: var(--light) !important; font-weight: 400 !important; display: block !important; background: transparent !important; padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; width: auto !important; text-align: left !important; border: none !important; }

/* ════════════════════════════════════════
   CATEGORIES — with folder icon
════════════════════════════════════════ */
.blog-page .widget_categories ul {
    list-style: none !important;
    padding:    8px 14px 10px !important;
    margin:     0 !important;
    background: transparent !important;
}

.blog-page .widget_categories ul li.cat-item {
    display:       flex !important;
    align-items:   center !important;
    gap:           10px !important;
    padding:       9px 0 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    background:    transparent !important;
    list-style:    none !important;
    position:      static !important;
    transition:    background 0.15s !important;
}
.blog-page .widget_categories ul li.cat-item:last-child { border-bottom: none !important; }

.blog-page .widget_categories ul li.cat-item a {
    font-size:      13px !important;
    font-weight:    500 !important;
    color:          var(--text) !important;
    text-decoration:none !important;
    border-bottom:  none !important;
    flex:           1 !important;
    transition:     color 0.2s !important;
}
.blog-page .widget_categories ul li.cat-item a:hover { color: var(--red) !important; }

.blog-page .widget_categories ul li.cat-item .count {
    background:    var(--red-l) !important;
    color:         var(--red) !important;
    font-size:     10px !important;
    font-weight:   700 !important;
    padding:       2px 8px !important;
    border-radius: 20px !important;
    flex-shrink:   0 !important;
    min-width:     22px !important;
    text-align:    center !important;
    display:       inline-block !important;
}

/* ════════════════════════════════════════
   ARCHIVES — with calendar icon
════════════════════════════════════════ */
.blog-page .widget_archive ul {
    list-style: none !important;
    padding:    8px 14px 10px !important;
    margin:     0 !important;
    background: transparent !important;
}

.blog-page .widget_archive ul li {
    display:       flex !important;
    align-items:   center !important;
    gap:           10px !important;
    padding:       9px 0 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    background:    transparent !important;
    list-style:    none !important;
    position:      static !important;
    transition:    background 0.15s !important;
}
.blog-page .widget_archive ul li:last-child { border-bottom: none !important; }

.blog-page .widget_archive ul li a {
    font-size:      13px !important;
    font-weight:    500 !important;
    color:          var(--text) !important;
    text-decoration:none !important;
    border-bottom:  none !important;
    flex:           1 !important;
    transition:     color 0.2s !important;
}
.blog-page .widget_archive ul li a:hover { color: var(--blue) !important; }

/* ════════════════════════════════════════
   TAGS CLOUD
════════════════════════════════════════ */
.blog-page .widget_tag_cloud .tagcloud {
    display:    flex !important;
    flex-wrap:  wrap !important;
    gap:        7px !important;
    padding:    14px !important;
    margin:     0 !important;
    background: transparent !important;
}

.blog-page .widget_tag_cloud .tagcloud a,
.blog-page .widget_tag_cloud a.tag-cloud-link {
    display:        inline-block !important;
    background:     var(--red-l) !important;
    color:          var(--red-d) !important;
    font-size:      12px !important;
    padding:        5px 14px !important;
    border-radius:  20px !important;
    text-decoration:none !important;
    border:         1px solid rgba(188,0,2,0.18) !important;
    border-bottom:  1px solid rgba(188,0,2,0.18) !important;
    font-weight:    600 !important;
    line-height:    1.5 !important;
    margin:         0 !important;
    transition:     all 0.2s !important;
}
/* Override WP's varying inline font-size */
.blog-page .widget_tag_cloud .tagcloud a[style] { font-size: 12px !important; }
.blog-page .widget_tag_cloud .tagcloud a:hover { background: var(--red) !important; color: #fff !important; border-color: var(--red) !important; }

/* ════════════════════════════════════════
   SEARCH WIDGET
════════════════════════════════════════ */

.blog-page .widget_search form {
    padding: 16px !important;
}

.blog-page .widget_search .searchform > div {
    display: flex !important;
    gap: 0 !important;
}

.blog-page .widget_search #s {
    flex: 1 !important;
    height: 42px !important;
    border: 1px solid var(--border) !important;
    border-right: none !important;
    border-radius: 8px 0 0 8px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
    color: var(--text) !important;
    background: #fff !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

.blog-page .widget_search #s:focus {
    border-color: var(--red) !important;
}

.blog-page .widget_search #searchsubmit {
    height: 42px !important;
    background-color: var(--red) !important;
    border: 1px solid var(--red) !important;
    color: #fff !important;
    padding: 0 18px !important;
    border-radius: 0 8px 8px 0 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.blog-page .widget_search #searchsubmit:hover {
    background-color: var(--red-d) !important;
    border-color: var(--red-d) !important;
}

.blog-page .widget_search .screen-reader-text {
    display: none !important;
}
/* ════════════════════════════════════════
   COMMENTS
════════════════════════════════════════ */
/*
.blog-page .comments-wrapper { margin-top: 24px !important; }
.blog-page #comments-section { background: var(--card) !important; border-radius: 14px !important; padding: 24px 30px !important; box-shadow: 0 2px 14px rgba(188,0,2,0.07) !important; }
.blog-page .comment-respond { background: var(--red-l) !important; border-radius: 12px !important; padding: 20px !important; margin-top: 20px !important; }
.blog-page .comment-form input[type="text"],
.blog-page .comment-form input[type="email"],
.blog-page .comment-form textarea { border: 1px solid var(--border) !important; border-radius: 8px !important; padding: 10px 14px !important; font-size: 13.5px !important; width: 100% !important; background: #fff !important; color: var(--text) !important; outline: none !important; box-shadow: none !important; transition: border-color 0.2s !important; }
.blog-page .comment-form input:focus,
.blog-page .comment-form textarea:focus { border-color: var(--red) !important; box-shadow: 0 0 0 3px rgba(188,0,2,0.10) !important; }
.blog-page .comment-form input[type="submit"],
.blog-page .form-submit input[type="submit"] { background: var(--red) !important; color: #fff !important; border: none !important; border-radius: 8px !important; padding: 10px 26px !important; font-size: 13px !important; font-weight: 700 !important; cursor: pointer !important; transition: background 0.2s !important; }
.blog-page .comment-form input[type="submit"]:hover { background: var(--red-d) !important; }
*/
/* ════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════ */
@media (max-width: 991px) {
    .blog-page aside.sidebar { margin-top: 24px !important; }
}

@media (max-width: 768px) {
    .blog-page h1.entry-title { font-size: 21px !important; padding: 18px 18px 8px !important; }
    .blog-page .entry-content { padding: 16px 16px 22px !important; }
    .blog-page .entry-header figure img { height: 240px !important; }
    .blog-page .entry-content .gallery,
    .blog-page .entry-content [id^="gallery-"] { margin: 16px 0 !important; width: 100% !important; }
    .blog-page .entry-content .gallery.gallery-columns-3,
    .blog-page .entry-content [id^="gallery-"].gallery-columns-3 { grid-template-columns: repeat(2,1fr) !important; }
    .blog-page .entry-content .gallery dt.gallery-icon,
    .blog-page .entry-content .gallery dt.gallery-icon a,
    .blog-page .entry-content .gallery img,
    .blog-page .entry-content [id^="gallery-"] img { height: 150px !important; max-height: 150px !important; }
    .blog-page .entry-content .elementor-widget-image img { height: 220px !important; }
    .blog-page .entry-content h3 { font-size: 17px !important; }
    .blog-page .entry-content h4 { font-size: 14px !important; padding: 10px 14px !important; }
    .blog-page .entry-content table { font-size: 12px !important; }
    .blog-page .entry-footer { padding: 14px 18px !important; }
    .blog-page .left_meta { position: static !important; flex-direction: row !important; padding: 14px 18px 0 !important; }
}