/* ============================================================
   News & Announcements — Modern UI (Yangiliklar / E'lonlar)
   Adds animations, hover effects, modern pill tabs, polished cards.
   Overrides selected rules in index.css without modifying it.
   ============================================================ */

/* ----- Tab pill container ----- */
.tab_news {
    display: flex !important;
    gap: 6px;
    padding: 6px;
    background: #f1f5f9;
    border-radius: 14px;
    margin: 8px 0 24px;
    width: max-content;
    max-width: 100%;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04);
    border: 1px solid transparent;
}

.tab_news button.tablinks {
    border: none !important;
    background: transparent !important;
    padding: 10px 22px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    position: relative;
    z-index: 1;
    line-height: 1 !important;
    letter-spacing: 0.2px;
}

.tab_news button.tablinks:hover {
    color: #0d57a7 !important;
    background: rgba(13, 87, 167, 0.06) !important;
}

.tab_news button.tablinks.active {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    box-shadow: 0 6px 18px rgba(13, 87, 167, 0.28) !important;
    transform: translateY(-1px);
}

/* Drop the legacy underline / border decoration when present */
.tab_news button.tablinks::after,
.tab_news button.tablinks::before {
    display: none !important;
}

/* ----- Tab content panel — entrance animation ----- */
.tabcontent_news {
    animation: tsulNewsFadeUp 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes tsulNewsFadeUp {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ----- Card grid wrapper ----- */
.news_card_box {
    margin-top: 8px;
}

/* Equal-height cards inside Owl Carousel */
.news_card_box .owl-carousel .owl-stage {
    display: flex !important;
    align-items: stretch !important;
}

.news_card_box .owl-carousel .owl-item {
    display: flex !important;
    height: auto !important;
}

.news_card_box .owl-carousel .owl-item > div {
    width: 100%;
    display: flex;
}

/* ----- Individual card ----- */
.news_items {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1),
                border-color 0.35s ease !important;
    position: relative;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    height: 100%;
    width: 100%;
    display: flex !important;
    flex-direction: column !important;
}

/* The inner <a> stretches and contains image + text in a column */
.news_items > a {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 100%;
}

.news_items:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 22px 44px rgba(13, 87, 167, 0.18) !important;
    border-color: rgba(13, 87, 167, 0.22) !important;
}

.news_items a {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
    height: 100%;
}

/* ----- Card image ----- */
.news_card_image {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 16 / 10;
    overflow: hidden !important;
    background: linear-gradient(135deg, #f8fafc, #e2e8f0) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.news_card_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) !important;
    border-radius: 0 !important;
    display: block !important;
}

.news_items:hover .news_card_image img {
    transform: scale(1.08);
}

/* Soft gradient overlay on hover */
.news_card_image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.35) 0%, transparent 50%);
    opacity: 0;
    transition: opacity 0.35s ease;
    z-index: 1;
    pointer-events: none;
}

.news_items:hover .news_card_image::before {
    opacity: 1;
}

/* Round "read more" arrow that flies in on hover */
.news_card_image::after {
    content: '→' !important;
    position: absolute;
    bottom: 14px;
    right: 14px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    opacity: 0;
    transform: translateX(-8px) scale(0.8);
    transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 2;
    box-shadow: 0 6px 16px rgba(13, 87, 167, 0.4);
    line-height: 1 !important;
    /* Override legacy ::after styles from index.css */
    width: 40px !important;
    height: 40px !important;
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
}

.news_items:hover .news_card_image::after {
    opacity: 1;
    transform: translateX(0) scale(1);
}

/* ----- Text area (grows to fill remaining height, equalising cards) ----- */
.news_card_text {
    padding: 16px 18px 18px !important;
    display: flex !important;
    flex-direction: column;
    gap: 8px;
    background: #fff !important;
    flex: 1 1 auto !important;
}

/* Image keeps its aspect ratio and doesn't shrink in a flex column */
.news_card_image {
    flex-shrink: 0 !important;
}

/* Meta line (date / category) */
.news_card_text > span:nth-child(1) {
    font-size: 12px !important;
    color: #0d57a7 !important;
    font-weight: 700 !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
}

.news_card_text > span:nth-child(1)::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    flex-shrink: 0;
}

/* Title — 3-line clamp + colour shift on hover */
.news_card_text > span:nth-child(2),
.news_card_text > span.truncate {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    line-height: 1.5 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transition: color 0.25s ease !important;
    height: auto !important;
    max-height: 4.5em;
}

.news_items:hover .news_card_text > span:nth-child(2),
.news_items:hover .news_card_text > span.truncate {
    color: #0d57a7 !important;
}

/* ----- "All news" link ----- */
.more_links_to_pages {
    margin-top: 18px !important;
    padding: 0 4px;
}

.more_links_to_pages a {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 10px 18px !important;
    background: transparent !important;
    border: 1.5px solid #0d57a7 !important;
    border-radius: 999px !important;
    color: #0d57a7 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
    line-height: 1 !important;
}

.more_links_to_pages a:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(13, 87, 167, 0.28) !important;
    transform: translateX(2px);
    border-color: transparent !important;
}

.more_links_to_pages a i {
    transition: transform 0.25s ease;
    margin-left: 0 !important;
}

.more_links_to_pages a:hover i {
    transform: translateX(4px);
}

/* ----- Owl carousel navigation ----- */
.news_card_box .owl-nav button,
.news_card_box .owl-nav .owl-prev,
.news_card_box .owl-nav .owl-next {
    background: #fff !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #e2e8f0 !important;
    transition: all 0.25s ease !important;
    color: #0d57a7 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.news_card_box .owl-nav button:hover,
.news_card_box .owl-nav .owl-prev:hover,
.news_card_box .owl-nav .owl-next:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    transform: scale(1.08);
    border-color: transparent !important;
    box-shadow: 0 8px 24px rgba(13, 87, 167, 0.32) !important;
}

.news_card_box .owl-nav button span {
    color: inherit !important;
    font-size: 22px !important;
    line-height: 1 !important;
}

/* Owl dots polished */
.news_card_box .owl-dots .owl-dot span {
    background: #cbd5e1 !important;
    transition: all 0.3s ease;
}
.news_card_box .owl-dots .owl-dot.active span,
.news_card_box .owl-dots .owl-dot:hover span {
    background: #0d57a7 !important;
    width: 24px !important;
    border-radius: 6px !important;
}

/* ============================================================
   /news, /announces, /news/{id}, /announces/{id}
   Listing + detail pages — modern styling
   ============================================================ */

/* ----- Page wrappers ----- */
.news_page,
.rg_page {
    background: #f8fafc;
    padding: 32px 0 48px !important;
    border-top: none !important;
}

/* ----- Breadcrumb ----- */
.content_top_links {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    font-size: 13px;
    color: #64748b !important;
    margin-bottom: 10px;
}
.content_top_links a {
    color: #0d57a7 !important;
    font-weight: 600;
    text-decoration: none !important;
    transition: color 0.2s;
}
.content_top_links a:hover { color: #1e88e5 !important; }
.content_top_links span { color: #94a3b8; }
.content_top_links i { font-size: 9px !important; color: #cbd5e1; }

/* Page title (listing) */
.news_page h4,
.news_page h3 {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin: 6px 0 0 !important;
    letter-spacing: -0.3px;
}
.news_page h4::after {
    content: '';
    display: block;
    width: 60px; height: 4px;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    border-radius: 2px;
    margin-top: 10px;
}

/* ----- Top right social block ----- */
.content_top_social_box {
    background: #fff;
    border-radius: 16px;
    padding: 18px 20px 20px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(13, 87, 167, 0.06);
    width: 100% !important;
}
.content_top_social_box > div {
    width: 100% !important;
}
.content_top_title_of_socials {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #0d57a7 !important;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 14px !important;
    text-align: center !important;
}
/* Force full width and equal distribution across the box */
.content_top_line_socials {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    flex: none !important;
}
.content_top_line_socials > div {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
.content_top_line_socials a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 14px 6px !important;
    background: #f8fafc !important;
    border-radius: 12px !important;
    text-decoration: none !important;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
    border: 1px solid transparent !important;
    width: 100% !important;
    height: 100% !important;
    text-align: center !important;
}
.content_top_line_socials a:hover {
    background: #fff !important;
    border-color: rgba(13, 87, 167, 0.22) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08) !important;
}
.content_top_line_socials a i {
    font-size: 22px !important;
    margin-bottom: 4px !important;
    line-height: 1 !important;
}
.content_top_line_socials a h6 {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}
.content_top_line_socials a span {
    font-size: 11px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

@media (max-width: 480px) {
    .content_top_line_socials { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ----- Featured (main) news card on listing ----- */
.main_news_card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08);
    padding: 0 0 16px;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
    margin-top: 8px;
}
.main_news_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 44px rgba(13, 87, 167, 0.18);
}
.main_news_card_img_box {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: linear-gradient(135deg, #f8fafc, #e2e8f0);
    margin-bottom: 14px;
}
.main_news_card_img_box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.main_news_card:hover .main_news_card_img_box img { transform: scale(1.05); }
.news_main_card_text {
    display: block;
    padding: 0 18px;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    line-height: 1.45;
    text-decoration: none !important;
    transition: color 0.25s;
}
.main_news_card:hover .news_main_card_text { color: #0d57a7 !important; }
.main_news_card .text-end,
.main_news_card .text-secondary {
    padding: 0 18px;
    color: #94a3b8 !important;
}

/* ----- Small news cards on listing ----- */
.news_small_cards {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex !important;
    flex-direction: column;
}
.news_small_cards:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 28px rgba(13, 87, 167, 0.14);
    border-color: rgba(13, 87, 167, 0.2);
}
.news_small_cards_img_box {
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: linear-gradient(135deg, #f8fafc, #e2e8f0);
}
.news_small_cards_img_box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.news_small_cards:hover .news_small_cards_img_box img { transform: scale(1.08); }
.news_small_cards .px-2 {
    padding: 12px 14px 14px !important;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.news_small_cards_text {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    line-height: 1.45;
    text-decoration: none !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.25s;
}
.news_small_cards_text a { color: inherit !important; text-decoration: none !important; }
.news_small_cards:hover .news_small_cards_text,
.news_small_cards:hover .news_small_cards_text a { color: #0d57a7 !important; }

/* Category pill (tag) */
.card_button_links {
    display: inline-block !important;
    background: linear-gradient(135deg, rgba(13, 87, 167, 0.1), rgba(30, 136, 229, 0.1)) !important;
    color: #0d57a7 !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 4px 12px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin: 0 0 4px !important;
    transition: all 0.25s;
}
.card_button_links:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
}

/* Date / secondary text */
.news_small_cards .text-secondary,
.main_news_card .text-secondary {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important;
}

/* Section heading inside listing (e.g. "ОБЪЯВЛЕНИЕ") */
.news_page h5 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin-bottom: 0 !important;
}
.bottom_line_effect {
    border: none !important;
    height: 3px !important;
    background: linear-gradient(90deg, #0d57a7, #1e88e5 60%, transparent) !important;
    border-radius: 2px;
    margin: 8px 0 14px !important;
    opacity: 1 !important;
    width: 80px !important;
}

/* Sidebar announce item (date + title) on /news */
.anons_in_news_card_item {
    display: flex !important;
    gap: 12px;
    padding: 12px 14px;
    background: #fff;
    border-radius: 12px;
    margin-bottom: 10px;
    transition: all 0.25s ease;
    border: 1px solid rgba(0, 0, 0, 0.04);
}
.anons_in_news_card_item:hover {
    transform: translateX(3px);
    box-shadow: 0 6px 14px rgba(13, 87, 167, 0.12);
    border-color: rgba(13, 87, 167, 0.2);
}
.anons_in_news_card_item > div:first-child {
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    color: #fff;
    border-radius: 10px;
    padding: 8px 12px;
    text-align: center;
    min-width: 56px;
    align-self: flex-start;
}
.anons_in_news_card_item > div:first-child span {
    color: #fff !important;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.1;
    display: block;
}
.anons_in_news_card_item > div:first-child span br + * {
    font-size: 11px !important;
    text-transform: uppercase;
    opacity: 0.9;
    font-weight: 600;
}
.anons_in_news_card_item > div:nth-child(2) {
    flex: 1;
    display: flex;
    align-items: center;
}
.anons_in_news_card_item a {
    color: #1e293b !important;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none !important;
    line-height: 1.4;
    transition: color 0.2s;
}
.anons_in_news_card_item:hover a { color: #0d57a7 !important; }

/* ============================================================
   Detail page (/news/X, /announces/X)
   ============================================================ */

/* Wrapper — light page background like /news listing, content in cards */
.rg_page > .container {
    background: transparent !important;
    padding: 0 16px !important;
    box-shadow: none !important;
    border: none !important;
    margin-top: 4px;
}

/* Group article block (title + image + content) in one white card */
.rg_page > .container > .row > .col-xl-9 > .row > div:not(.col-xl-12) {
    background: #fff;
    border-radius: 18px;
    padding: 28px 28px 32px !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-top: 16px;
}

/* Breadcrumb (top row) — same pill style as listing */
.rg_page .col-xl-12:first-child > div {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    font-size: 13px;
    color: #64748b !important;
    margin-bottom: 8px;
}
.rg_page .col-xl-12:first-child > div a {
    color: #0d57a7 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 13px !important;
    transition: color 0.2s;
}
.rg_page .col-xl-12:first-child > div a:hover { color: #1e88e5 !important; }
.rg_page .col-xl-12:first-child > div span { color: #cbd5e1 !important; font-weight: 400 !important; }

/* Detail page title */
.rg_page h3 {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin: 18px 0 18px !important;
    line-height: 1.35 !important;
    letter-spacing: -0.2px;
}
.rg_page h3 b { font-weight: 800 !important; }

/* Featured image — show full (contain), no cropping.
   Override original `.rg_main_left_img { height:400px }` from reg_map.css. */
.rg_main_left_img {
    margin: 12px 0 22px !important;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1);
    background: linear-gradient(135deg, #f8fafc, #e2e8f0);
    width: 100% !important;
    height: auto !important;
    min-height: 220px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
.rg_main_left_img img,
.rg_main_left_img.text-center img {
    width: auto !important;          /* keep natural aspect */
    height: auto !important;
    max-width: 100% !important;
    max-height: 520px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Content body */
.rg_page .card-text {
    display: block !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #374151 !important;
}
.rg_page .card-text p { margin: 0 0 14px !important; }
.rg_page .card-text img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 10px;
    margin: 8px 0;
}

/* Category buttons on detail */
.btn_link_menu {
    background: linear-gradient(135deg, rgba(13, 87, 167, 0.1), rgba(30, 136, 229, 0.1)) !important;
    color: #0d57a7 !important;
    border: 1.5px solid rgba(13, 87, 167, 0.25) !important;
    border-radius: 999px !important;
    padding: 6px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-right: 6px !important;
    margin-bottom: 4px !important;
    transition: all 0.25s !important;
}
.btn_link_menu:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 6px 14px rgba(13, 87, 167, 0.28);
    transform: translateY(-1px);
}

/* "Last news" section — own white card, like listing's "OBYAVLENIE" block */
.last_news_bottom_box {
    background: #fff;
    border-radius: 18px;
    padding: 24px 24px 28px !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.04);
    margin-top: 24px !important;
    padding-top: 24px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
}
.last_news_bottom_box h5 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin-bottom: 14px !important;
    position: relative;
    padding-left: 14px;
}
.last_news_bottom_box h5::before {
    content: '';
    position: absolute;
    left: 0; top: 4px; bottom: 4px; width: 4px;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    border-radius: 2px;
}

/* Kill legacy `.last_news_bottom_box > div::before` purple bar from reg_map.css */
.last_news_bottom_box > div { position: static !important; }
.last_news_bottom_box > div::before { display: none !important; content: none !important; }

/* Last news small card — override original reg_map.css fixed 200px image height */
.last_news_bottom_card {
    margin-top: 14px !important;
    display: flex !important;
    align-items: stretch !important;
}
.last_news_bottom_card > a {
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    text-decoration: none !important;
    color: inherit !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
    height: 100% !important;
    width: 100% !important;
}
.last_news_bottom_card > a:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 28px rgba(13, 87, 167, 0.14) !important;
    border-color: rgba(13, 87, 167, 0.2) !important;
}
/* Image wrapper — override original `div:nth-child(1) { height:200px }` */
.last_news_bottom_card > a > div:first-child,
.last_news_bottom_card > a .text-center:first-child {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #f8fafc, #e2e8f0) !important;
    margin: 0 !important;
    flex-shrink: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.last_news_bottom_card > a > div:first-child img,
.last_news_bottom_card > a .text-center:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
    border-radius: 0 !important;
    display: block !important;
    max-width: none !important;
}
.last_news_bottom_card > a:hover > div:first-child img,
.last_news_bottom_card > a:hover .text-center:first-child img {
    transform: scale(1.08);
}
.last_news_bottom_card .btn_link_menu {
    margin: 12px 14px 0 !important;
    font-size: 11px !important;
    padding: 4px 12px !important;
    align-self: flex-start;
}
.last_news_bottom_card_text {
    padding: 0 14px !important;
    margin: 10px 0 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    line-height: 1.5 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-align: left !important;
    max-width: 100% !important;
    flex: 1 1 auto;
    transition: color 0.25s;
}
.last_news_bottom_card > a:hover .last_news_bottom_card_text { color: #0d57a7 !important; }
.last_news_bottom_card .text-secondary {
    padding: 0 14px 14px !important;
    color: #94a3b8 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

/* ----- Sidebar social box (detail) — full override of legacy reg_map.css rules ----- */
.rg_page .social_box {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 18px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    width: 100% !important;
}
.rg_page .social_box h5 {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 14px !important;
    padding-bottom: 0 !important;
    border: none !important;
}

/* Reset legacy `.social_box > div` rules (border-top, ::before bar, padding, etc.) */
.rg_page .social_box > div {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
}
.rg_page .social_box > div::before { display: none !important; content: none !important; }

/* Modern grid for the 4 social items — fill the box vertically + horizontally */
.rg_page .left_social_box {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    width: 100% !important;
}
.rg_page .left_social_box_items {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 22px 10px !important;
    background: #f8fafc !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, border-color 0.2s ease !important;
    border: 1px solid rgba(13, 87, 167, 0.06) !important;
    text-align: center !important;
    min-height: 120px !important;
    width: 100% !important;
}
.rg_page .left_social_box_items:hover {
    background: #fff !important;
    border-color: rgba(13, 87, 167, 0.3) !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.1) !important;
}
.rg_page .left_social_box_items i {
    font-size: 32px !important;
    margin: 0 !important;
    line-height: 1 !important;
}
.rg_page .left_social_box_items .card-text,
.rg_page .left_social_box_items span {
    display: block !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}
.rg_page .left_social_box_items .card-text,
.rg_page .left_social_box_items span:nth-of-type(1) {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #1e293b !important;
    margin-top: 4px !important;
}
.rg_page .left_social_box_items span:last-child {
    color: #94a3b8 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-transform: lowercase;
    letter-spacing: 0.2px;
}

/* ----- YouTube sidebar box ----- */
.bottom_youtube_box {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 18px !important;
    margin-top: 18px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    width: 100% !important;
}

/* Header row: "YouTube" + red icon */
.bottom_youtube_box > .d-flex:first-child {
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
    margin-bottom: 12px !important;
}
.bottom_youtube_box > .d-flex:first-child a {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    text-decoration: none !important;
    color: #1e293b !important;
    transition: opacity 0.2s;
}
.bottom_youtube_box > .d-flex:first-child a:hover { opacity: 0.8; }
.bottom_youtube_box > .d-flex:first-child span {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #1e293b !important;
}
.bottom_youtube_box > .d-flex:first-child i.fa-youtube {
    font-size: 28px !important;
    color: #FF0000 !important;
}

/* Profile row: avatar + name + "Подписчиков" */
.bottom_youtube_box .youtube_profile {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    overflow: visible;
    flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.bottom_youtube_box .youtube_profile img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}
.bottom_youtube_box .yt_icon_check {
    width: 18px !important;
    height: 18px !important;
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    border: 2px solid #fff !important;
    box-shadow: 0 2px 6px rgba(13, 87, 167, 0.3);
}
.bottom_youtube_box .yt_icon_check i {
    font-size: 9px !important;
    color: #fff !important;
}
.bottom_youtube_box .ml-2 h6 {
    font-size: 15px !important;
    color: #1e293b !important;
    font-weight: 800 !important;
}
.bottom_youtube_box .ml-2 .text-secondary {
    font-size: 12px !important;
    color: #94a3b8 !important;
}

/* Video grid — override 48%/100px with proper aspect ratio */
.bottom_youtube_box .youtube_video_box {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-top: 14px !important;
}
.bottom_youtube_box .youtube_video_box > div {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    margin: 0 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #000;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.bottom_youtube_box .youtube_video_box > div:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}
.bottom_youtube_box .youtube_video_box > div iframe {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    display: block;
}

@media (max-width: 480px) {
    .bottom_youtube_box .youtube_video_box {
        grid-template-columns: 1fr !important;
    }
}

/* Sidebar announces section */
.rg_anons {
    background: #fff;
    border-radius: 16px;
    padding: 18px;
    margin-top: 18px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.04);
}
.rg_anons h5 {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin-bottom: 14px !important;
}
.rg_anons .anons_in_news_card_item {
    background: #f8fafc;
}

/* "Все новости" link variants */
.last_news_bottom_box a[href*="news"],
.rg_anons a[href$="#"] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: transparent;
    border: 1.5px solid #0d57a7;
    border-radius: 999px;
    color: #0d57a7 !important;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.25s ease;
    font-size: 13px !important;
}
.last_news_bottom_box a[href*="news"]:hover,
.rg_anons a[href$="#"]:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(13, 87, 167, 0.28);
}

/* ============================================================
   "Ilmiy maqolalar" + "Yosh olimlar" section (home page)
   ============================================================ */

/* Section titles */
.scientific_articles_title,
.scientific_persons_card_title {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0d57a7 !important;
    margin: 8px 0 16px !important;
    position: relative;
    padding-left: 14px;
    letter-spacing: -0.2px;
}
.scientific_articles_title::before,
.scientific_persons_card_title::before {
    content: '';
    position: absolute;
    left: 0; top: 6px; bottom: 6px; width: 4px;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    border-radius: 2px;
}

/* ----- Scientific articles (left column, vertical list) ----- */
.scientific_article_box {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 14px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    max-height: 520px;
    overflow-y: auto;
    position: relative;
}
.scientific_article_box::-webkit-scrollbar { width: 5px; }
.scientific_article_box::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 3px;
}
.scientific_article_box::-webkit-scrollbar-thumb:hover { background: #0d57a7 !important; }

/* Each article item — row with date pill + content */
.scientific_articles_items {
    display: flex !important;
    gap: 12px;
    padding: 12px;
    margin-bottom: 10px;
    background: #f8fafc;
    border-radius: 12px;
    transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
    border: 1px solid transparent;
    align-items: flex-start;
}
.scientific_articles_items:hover {
    background: #fff;
    border-color: rgba(13, 87, 167, 0.2);
    transform: translateX(3px);
    box-shadow: 0 6px 14px rgba(13, 87, 167, 0.1);
}
.scientific_articles_items:last-child { margin-bottom: 0; }

/* Date pill (left side) */
.scientific_articles_items > span:nth-child(1) {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 8px 10px !important;
    text-align: center !important;
    min-width: 54px !important;
    flex-shrink: 0;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1 !important;
}
.scientific_articles_items > span:nth-child(1) div {
    color: #fff !important;
    line-height: 1.1 !important;
}
.scientific_articles_items > span:nth-child(1) div:first-child {
    font-size: 20px !important;
    font-weight: 800 !important;
}
.scientific_articles_items > span:nth-child(1) div:last-child {
    font-size: 11px !important;
    text-transform: uppercase !important;
    opacity: 0.9;
    margin-top: 2px;
}

/* Article text (right side) */
.scientific_articles_items > span:nth-child(2) {
    flex: 1 1 auto;
    display: flex !important;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}
.scientific_articles_items > span:nth-child(2) > .text-secondary {
    font-size: 11px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.scientific_articles_items > span:nth-child(2) > .text-secondary i {
    color: #0d57a7 !important;
    margin-right: 3px;
}
.scientific_articles_items > span:nth-child(2) > span:nth-child(2) {
    font-size: 14px !important;
    line-height: 1.45 !important;
    color: #1e293b !important;
    font-weight: 600 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s;
}
.scientific_articles_items > span:nth-child(2) > span:nth-child(2) a {
    color: inherit !important;
    text-decoration: none !important;
}
.scientific_articles_items:hover > span:nth-child(2) > span:nth-child(2) a {
    color: #0d57a7 !important;
}

/* Hide the legacy fade-shadow overlay */
.scientific_article_box .articles_box_shadow { display: none !important; }

/* ----- Young scientists (right column, carousel) ----- */
.scientific_card_box .owl-carousel .owl-stage {
    display: flex !important;
    align-items: stretch !important;
}
.scientific_card_box .owl-carousel .owl-item {
    display: flex !important;
    height: auto !important;
}
.scientific_card_box .owl-carousel .owl-item > div {
    width: 100%;
    display: flex;
}

.scientific_items {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.35s ease,
                border-color 0.35s ease !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative;
}
.scientific_items:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 44px rgba(13, 87, 167, 0.18) !important;
    border-color: rgba(13, 87, 167, 0.22) !important;
}

/* Image — override inline 200px height with aspect ratio */
.scientific_items .scientific_card_image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #f8fafc, #e2e8f0) !important;
    border-radius: 0 !important;
    flex-shrink: 0;
    margin: 0 !important;
}
.scientific_items .scientific_card_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) !important;
    border-radius: 0 !important;
    display: block !important;
}
.scientific_items:hover .scientific_card_image img {
    transform: scale(1.08);
}

/* Anchor wrapping the text — fills remaining space */
.scientific_items > a {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    text-decoration: none !important;
    color: inherit !important;
    padding: 0;
}

.scientific_card_text {
    padding: 14px 16px 16px !important;
    display: flex !important;
    flex-direction: column;
    gap: 6px;
    flex: 1 1 auto;
    background: #fff;
}
.scientific_card_text > span:nth-child(1) {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    line-height: 1.4 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.25s;
    margin: 0 !important;
}
.scientific_items:hover .scientific_card_text > span:nth-child(1) { color: #0d57a7 !important; }
.scientific_card_text > span:nth-child(2) {
    font-size: 13px !important;
    color: #64748b !important;
    line-height: 1.55 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 !important;
}

/* Owl nav buttons (young scientists carousel) */
.scientific_card_box .owl-nav button,
.scientific_card_box .owl-nav .owl-prev,
.scientific_card_box .owl-nav .owl-next {
    background: #fff !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #e2e8f0 !important;
    transition: all 0.25s ease !important;
    color: #0d57a7 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}
.scientific_card_box .owl-nav button:hover,
.scientific_card_box .owl-nav .owl-prev:hover,
.scientific_card_box .owl-nav .owl-next:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    transform: scale(1.08);
    border-color: transparent !important;
}
.scientific_card_box .owl-nav button::after,
.scientific_card_box .owl-nav .owl-prev::after,
.scientific_card_box .owl-nav .owl-next::after {
    display: none !important;
    content: none !important;
}
.scientific_card_box .owl-nav span {
    color: inherit !important;
    font-size: 22px !important;
    line-height: 1 !important;
}

/* Owl dots */
.scientific_card_box .owl-dots .owl-dot span {
    background: #cbd5e1 !important;
    transition: all 0.3s ease;
}
.scientific_card_box .owl-dots .owl-dot.active span,
.scientific_card_box .owl-dots .owl-dot:hover span {
    background: #0d57a7 !important;
    width: 24px !important;
    border-radius: 6px !important;
}

/* ============================================================
   Our Teachers (home carousel) — polish ONLY borders / shadows /
   typography / buttons. Photo dimensions stay untouched.
   ============================================================ */

.seventh-part .divHR a { text-decoration: none !important; }

.seventh-part .divHR .card {
    background: #fff !important;
    border: 1px solid rgba(13, 87, 167, 0.08) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
    transition: box-shadow 0.3s ease, border-color 0.3s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
.seventh-part .divHR .card:hover {
    box-shadow: 0 16px 36px rgba(13, 87, 167, 0.18) !important;
    border-color: rgba(13, 87, 167, 0.25) !important;
    transform: translateY(-4px);
}

/* FIO (teacher name) — typography only, no size changes to layout */
.seventh-part .divHR .card p:not(.bgText) {
    color: #1e293b !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    letter-spacing: -0.1px;
    transition: color 0.25s ease;
}
.seventh-part .divHR .card:hover p:not(.bgText) {
    color: #0d57a7 !important;
}

/* Bottom "degree" button — replace flat blue with brand gradient */
.seventh-part .divHR .card .bgText {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.2px !important;
    line-height: 1.4 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
    transition: filter 0.25s ease, letter-spacing 0.25s ease;
}
.seventh-part .divHR .card:hover .bgText {
    filter: brightness(1.08);
    letter-spacing: 0.4px !important;
}

/* "Our teachers" section title + "All teachers list" link — typography only */
.seventh-part .Bunderline h2,
.seventh-part h2.textColor {
    font-weight: 800 !important;
    color: #0d57a7 !important;
    letter-spacing: -0.3px;
    position: relative;
    padding-bottom: 8px;
}
.seventh-part .Bunderline h2::after,
.seventh-part h2.textColor::after {
    content: '';
    position: absolute;
    left: 0; bottom: 0;
    width: 56px; height: 3px;
    background: linear-gradient(135deg, #0d57a7, #1e88e5);
    border-radius: 2px;
}
.seventh-part a.Bline,
.seventh-part a.fw-bold.textColor {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 8px 16px !important;
    border: 1.5px solid #0d57a7 !important;
    border-radius: 999px !important;
    color: #0d57a7 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    background: transparent !important;
    transition: background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease !important;
}
.seventh-part a.Bline:hover,
.seventh-part a.fw-bold.textColor:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(13, 87, 167, 0.3) !important;
    transform: translateX(2px);
    text-decoration: none !important;
}

/* Owl carousel nav buttons — modern circular */
.seventh-part .owl-nav button,
.gtco-testimonials .owl-nav button {
    background: #fff !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #e2e8f0 !important;
    color: #0d57a7 !important;
    transition: all 0.25s ease !important;
}
.seventh-part .owl-nav button:hover,
.gtco-testimonials .owl-nav button:hover {
    background: linear-gradient(135deg, #0d57a7, #1e88e5) !important;
    color: #fff !important;
    transform: scale(1.08);
    border-color: transparent !important;
}
.seventh-part .owl-dots .owl-dot span,
.gtco-testimonials .owl-dots .owl-dot span {
    background: #cbd5e1 !important;
    transition: all 0.3s ease;
}
.seventh-part .owl-dots .owl-dot.active span,
.gtco-testimonials .owl-dots .owl-dot.active span {
    background: #0d57a7 !important;
    width: 22px !important;
    border-radius: 6px !important;
}

/* ============================================================
   Footer — keep original flex layout, add modern visual polish
   ============================================================ */

/* Dark blue gradient overlay; keep the legacy background image faint */
footer.eighth-part {
    position: relative !important;
    overflow: hidden !important;
    margin-top: 60px !important;
    color: #fff !important;
}
.eighth-part .footer_img_box img { filter: brightness(0.4) saturate(1.2); }
.eighth-part .footer_data_box {
    background: linear-gradient(135deg,
        rgba(10, 27, 61, 0.92) 0%,
        rgba(13, 87, 167, 0.92) 60%,
        rgba(30, 136, 229, 0.88) 100%) !important;
    padding: 52px 0 28px !important;
}

/* Column titles */
.eighth-part .footer_title_columns {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #fff !important;
    margin: 0 0 20px !important;
    position: relative;
    padding-bottom: 12px;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}
.eighth-part .footer_title_columns::after {
    content: '';
    position: absolute;
    left: 0; bottom: 0;
    width: 50px; height: 3px;
    background: linear-gradient(135deg, #fff, rgba(255, 255, 255, 0.4));
    border-radius: 2px;
}

/* Logo + about — column 1 */
.eighth-part .footer_logo_box img {
    max-width: 180px !important;
    height: auto !important;
    filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.35));
    margin-bottom: 16px;
}
.eighth-part .footer_about_universty {
    color: rgba(255, 255, 255, 0.85) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

/* Contact list — column 2 */
.eighth-part .footer_box > div:nth-child(2) > div p {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: rgba(255, 255, 255, 0.92) !important;
    margin: 0 0 12px !important;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.eighth-part .footer_box > div:nth-child(2) > div p:last-of-type { border: none; padding-bottom: 0; }
.eighth-part .footer_box > div:nth-child(2) > div p > i {
    display: inline-flex !important;
    align-items: center; justify-content: center;
    flex-shrink: 0;
    width: 30px !important; height: 30px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #fff !important;
    font-size: 12px !important;
    margin: 0 !important;
    transition: background 0.25s ease, color 0.25s ease, transform 0.4s ease;
}
.eighth-part .footer_box > div:nth-child(2) > div p:hover > i {
    background: #fff !important; color: #0d57a7 !important; transform: rotate(360deg);
}
.eighth-part .footer_box > div:nth-child(2) > div p > span {
    flex: 1 1 auto;
    min-width: 0;
    word-break: break-word;
}
.eighth-part .footer_box > div:nth-child(2) > div p a {
    color: #fff !important;
    transition: color 0.2s;
}
.eighth-part .footer_box > div:nth-child(2) > div p a:hover {
    color: #bfdbfe !important;
    text-decoration: underline !important;
}

/* Social icons */
.eighth-part .footer_icons {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
    margin: 6px 8px 0 0 !important;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease !important;
}
.eighth-part .footer_icons:hover {
    background: #fff !important;
    color: #0d57a7 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25) !important;
    border-color: transparent !important;
}
.eighth-part .footer_icons i {
    font-size: 15px !important;
    color: inherit !important;
    background: transparent !important;
    margin: 0 !important;
    width: auto !important; height: auto !important;
    transform: none !important;
    transition: none !important;
}
.eighth-part .footer_icons:hover i { color: #0d57a7 !important; }

/* Map iframe — column 3 (keep original 25% column width!) */
.eighth-part .footer_box > div:nth-child(3) iframe {
    width: 100% !important;
    height: 220px !important;
    border-radius: 14px !important;
    border: 3px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    display: block !important;
    transition: transform 0.3s ease, border-color 0.3s ease;
}
.eighth-part .footer_box > div:nth-child(3) iframe:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 255, 255, 0.4) !important;
}

/* Border between columns 1 & 2 — make it subtle white */
.eighth-part .footer_box > div:nth-child(1) {
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Copyright bar at the bottom of the footer container */
.eighth-part .footer_data_box .container::after {
    content: '© Toshkent davlat yuridik universiteti';
    display: block;
    text-align: center;
    color: rgba(255, 255, 255, 0.6);
    font-size: 13px;
    padding: 20px 0 0;
    margin-top: 32px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    letter-spacing: 0.3px;
}

/* Mobile / tablet */
@media (max-width: 991px) {
    .eighth-part .footer_box {
        flex-wrap: wrap !important;
    }
    .eighth-part .footer_box > div:nth-child(1) {
        width: 100% !important;
        border-right: none !important;
        padding-right: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
        padding-bottom: 24px !important;
        margin-bottom: 24px !important;
    }
    .eighth-part .footer_box > div:nth-child(2),
    .eighth-part .footer_box > div:nth-child(3) {
        width: 48% !important;
    }
}
@media (max-width: 600px) {
    .eighth-part .footer_data_box { padding: 32px 0 20px !important; }
    .eighth-part .footer_box > div:nth-child(2),
    .eighth-part .footer_box > div:nth-child(3) {
        width: 100% !important;
        margin-top: 24px !important;
    }
    .eighth-part .footer_logo_box img { max-width: 140px !important; }
    .eighth-part .footer_title_columns { font-size: 16px !important; }
}

/* ----- Mobile / tablet adjustments ----- */
@media (max-width: 768px) {
    .tab_news {
        width: 100%;
        justify-content: center;
    }
    .tab_news button.tablinks {
        flex: 1;
        padding: 10px 14px !important;
        font-size: 14px !important;
    }
    .news_card_image::after {
        width: 34px !important;
        height: 34px !important;
        font-size: 16px;
        bottom: 10px;
        right: 10px;
    }
    .news_card_text {
        padding: 12px 14px 14px !important;
    }
    .news_card_text > span:nth-child(2),
    .news_card_text > span.truncate {
        font-size: 14px !important;
    }
    /* List pages on mobile */
    .news_page,
    .rg_page { padding: 16px 0 24px !important; }
    .rg_page > .container { padding: 18px 18px 22px !important; border-radius: 12px; }
    .news_page h4 { font-size: 22px !important; }
    .rg_page h3 { font-size: 19px !important; }
    .content_top_social_box { padding: 12px 14px; }
    .content_top_line_socials > div { min-width: 70px; }
    .news_main_card_text { font-size: 16px !important; }
    .left_social_box { grid-template-columns: 1fr 1fr; }
}
