/* Container background */
.custom-tab-style {
  background-color: #f1f1f1;
  border-radius: 6px;
  padding: 5px;
}

/* Default tab appearance */
.custom-tab-style .nav-link {
  color: #495057;
  background-color: #e9ecef;
  margin-right: 5px;
  border: 1px solid #dee2e6;
  font-weight: 500;
  border-radius: 4px;
  transition: all 0.3s ease;
}

/* Hover effect */
.custom-tab-style .nav-link:hover {
  background-color: #d4e3f5;
  color: #007bff;
}

/* Active tab appearance */
.custom-tab-style .nav-link.active {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
  font-weight: 600;
}

.select2-container.readonly-select .select2-selection--single {
    background-color: #e9ecef;
    pointer-events: none; 
}

.readonly-radio {
    pointer-events: none;
}
.masked {
  -webkit-text-security: disc;
}

/* ========== ADMIN BACKEND LAYOUT STYLES (Only for admin pages with #leftSidebarNew) ========== */

/* Left sidebar (fixed) - target the new sidebar id used in blades */
#leftSidebarNew {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 230px;
  z-index: 1030;
  overflow-y: auto;
  background: #2c3136 !important; /* darker blue-slate */
  border-right: 1px solid rgba(0,0,0,0.08);
  transition: width 0.2s ease, background 0.2s ease;
}

/* Prevent scrolling ONLY when admin sidebar exists */
body:has(#leftSidebarNew) {
  overflow: hidden;
}

body:has(#leftSidebarNew) .content-wrapper {
  -webkit-overflow-scrolling: touch;
}

#leftSidebarNew .brand-link {
  display: flex;
  align-items: center;
  padding: 0.7rem 1rem;
  background: #0f1a20;
  border-bottom: 1px solid rgba(255,255,255,0.03);
}
#leftSidebarNew .brand-image { width:42px; height:auto; margin-right:10px }
#leftSidebarNew .brand-text { color: #ffffff; font-weight:700; font-size:15px; letter-spacing:0.4px }
#leftSidebarNew .nav-sidebar .nav-link { color: #c7e0f6; padding: 10px 14px; display:flex; align-items:center }
#leftSidebarNew .nav-sidebar .nav-link .nav-icon { color: #79b4d9; width:26px; text-align:center }
#leftSidebarNew .nav-sidebar .nav-link p { margin:0 0 0 8px; color:#d8eefc }
#leftSidebarNew .nav-sidebar .nav-link:hover { background: rgba(255,255,255,0.02); color: #fff }
#leftSidebarNew .nav-sidebar .nav-link.active { background: rgba(255,255,255,0.03); color: #fff; box-shadow: inset 4px 0 0 #2fa4d8 }

/* Top nav fixed and offset to the right of the fixed sidebar */
#topNav {
  position: fixed;
  top: 0;
  left: 230px; /* matches sidebar width */
  right: 0;
  z-index: 1025;
  height: 64px;
  background: #fbfcfd;
  border-bottom: 1px solid rgba(15,23,42,0.06);
  display: flex;
  align-items: center;
  padding: 0 18px;
  box-shadow: 0 1px 0 rgba(0,0,0,0.02);
}

/* Ensure main content respects the fixed top nav and left sidebar */
body > .wrapper, .content-wrapper {
  padding-top: 0; /* JS will compute exact top spacing and content height */
  transition: margin-left 0.2s ease, padding-top 0.2s ease;
  background: #ffffff;
  min-height: 0;
  box-sizing: border-box;
}

/* Collapsed sidebar: icons-only */
body.sidebar-collapsed #leftSidebarNew { width: 64px }
body.sidebar-collapsed #leftSidebarNew .brand-text { display:none }
body.sidebar-collapsed #leftSidebarNew .brand-image { margin-right:0 }
body.sidebar-collapsed #leftSidebarNew .nav-sidebar .nav-link p { display:none }
body.sidebar-collapsed #leftSidebarNew .nav-sidebar .nav-link { text-align:center }
body.sidebar-collapsed #topNav { left:64px }
body.sidebar-collapsed body > .wrapper, body.sidebar-collapsed .content-wrapper { margin-left:64px }

/* small adjustments */
#sidebarToggle {
  background: transparent;
  border: none;
  font-size: 18px;
  padding: 6px 10px;
  cursor: pointer;
}
#sidebarToggle:focus { outline: none }

/* Make content-wrapper scrollable internally when page scroll is hidden */
.content-wrapper {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* mobile hamburger (hidden on desktop, visible on small screens) */  
.mobile-hamburger { display: none; background: transparent; border: none; cursor: pointer }
.mobile-hamburger svg { color: #1f2937 }

@media (max-width: 768px) {
  /* on small screens collapse by default to allow space */
  .mobile-hamburger { display: inline-block }
  #leftSidebarNew { left: -230px }
  #leftSidebarNew.open { left: 0 }
  body > .wrapper, .content-wrapper { margin-left: 0; padding-top: 64px }
  #topNav { left: 0 }
}

/* ========== FRONTEND TABLE STYLES ========== */

/* Trade/Tender Table */
.trade-table {
    width: 100%;
    table-layout: fixed;
}

.trade-table thead th {
    background-color: #1e3a5f;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    padding: 12px;
    border: 1px solid #dee2e6;
    vertical-align: middle;
}

.trade-table tbody td {
    padding: 12px;
    font-size: 15px;
    vertical-align: middle;
    border: 1px solid #dee2e6;
}

.trade-table tbody tr:hover {
    background-color: #f8f9fa;
}

/* Download Action Button */
.action-btn {
    background: transparent;
    border: none;
    color: #000;
    font-size: 18px;
    transition: color 0.2s ease;
}

.action-btn:hover {
    color: #004a99;
}

/* Career/Bill Payment Table */
.career-table {
    width: 100%;
    table-layout: auto;
}

.career-table thead th {
    background-color: #1e3a5f;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    padding: 12px;
    vertical-align: middle;
    border: 1px solid #152847;
}

.career-table tbody td {
    padding: 12px;
    vertical-align: middle;
    border-bottom: 1px solid #dee2e6;
}

.career-table tbody tr:hover {
    background-color: #f8f9fa;
}

/* Download Button */
.download-btn {
    background-color: #1e3a5f;
    border-color: #1e3a5f;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
}

.download-btn:hover {
    background-color: #152847;
    border-color: #152847;
    color: #fff;
    transform: translateY(-2px);
}

/* Content Text */
.investors-content-text {
    font-size: 15px;
    color: #333;
    line-height: 1.5;
}

/* Pagination Wrapper */
.pagination-wrapper {
    display: flex;
    justify-content: center;
    margin-top: 2rem;
}

.pagination-wrapper .pagination {
    margin: 0;
}

/* Documents Wrapper */
.documents-wrapper {
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
}

/* Content Title */
.content-title {
    color: #1e3a5f;
    font-size: 1.5rem;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .trade-table {
        font-size: 13px;
    }

    .career-table thead th,
    .career-table tbody td {
        padding: 8px;
        font-size: 12px;
    }

    .download-btn {
        padding: 0.25rem 0.5rem;
        font-size: 12px;
    }
}

/* ========== FRONTEND PAGE-SPECIFIC STYLES ========== */

/* PMN Table - About Page */
.pmn-table {
    border: 1px solid #dee2e6;
}

.pmn-table thead th {
    background: #1f3a5f;
    color: #ffffff;
    font-weight: 600;
    padding: 14px 12px;
    vertical-align: middle;
}

.pmn-table tbody td {
    padding: 16px 14px;
    vertical-align: middle;
}

.pmn-table tbody tr:hover {
    background: #f8f9fa;
}

.pmn-title {
    font-size: 15px;
    line-height: 1.6;
    color: #000000ff;
}

.pmn-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #000000ff;
    text-decoration: none;
}

.pmn-action-btn:hover {
    color: #084298;
}

/* About Content Text */
.about-content-text {
    font-size: 15px;
    color: #212529;
    line-height: 1.8;
    text-align: justify;
}

.about-content-text p,
.about-content-text span,
.about-content-text div,
.about-content-text li,
.about-content-text h1,
.about-content-text h2,
.about-content-text h3,
.about-content-text h4,
.about-content-text h5,
.about-content-text h6 {
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.75 !important;
}


.about-content-text img {
    max-width: 100%;
    height: auto;
    margin: 15px 0;
}

.about-wrapper {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 350px;
}

/* Contact Us - Department Cards */
.section-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 26px 20px;
    height: 100%;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

.section-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.18);
}

.section-card .icon-wrap {
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #fff;
}

.section-card h6 {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 6px;
}

.section-card p {
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 10px;
}

.card-link {
    font-size: 13px;
    font-weight: 600;
}

.section-card:hover h6,
.section-card:hover p,
.section-card:hover .card-link {
    color: #fff;
}

/* Color Variants */
.bg-1 .icon-wrap { background: #0d6efd; } .bg-1:hover { background: #0d6efd; }
.bg-2 .icon-wrap { background: #198754; } .bg-2:hover { background: #198754; }
.bg-3 .icon-wrap { background: #6f42c1; } .bg-3:hover { background: #6f42c1; }
.bg-4 .icon-wrap { background: #fd7e14; } .bg-4:hover { background: #fd7e14; }
.bg-5 .icon-wrap { background: #20c997; } .bg-5:hover { background: #20c997; }
.bg-6 .icon-wrap { background: #0dcaf0; } .bg-6:hover { background: #0dcaf0; }
.bg-7 .icon-wrap { background: #dc3545; } .bg-7:hover { background: #dc3545; }
.bg-8 .icon-wrap { background: #6610f2; } .bg-8:hover { background: #6610f2; }
.bg-9 .icon-wrap { background: #495057; } .bg-9:hover { background: #495057; }

/* Board / Profile Card */
.board-card-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.profile-card {
    background: #ffffff;
    border: 1px solid #e2e6ea;
    border-radius: 14px;
    padding: 20px;
    text-align: center;
    flex: 1 1 calc(25% - 20px);
    min-width: 220px;
    transition: all 0.25s ease;
}

.profile-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.12);
}

.profile-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 2px solid #0d3b66;
    margin: 0 auto 14px;
    overflow: hidden;
}

.profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
}

.profile-role {
    font-size: 14px;
    color: #374151;
    margin-bottom: 4px;
}

.profile-contact {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 2px;
}

/* Citizens Corner & EHS Page */
.citizens-corner-page-section,
.ehs-page-section {
    min-height: 60vh;
}

.citizens-corner-wrapper,
.ehs-wrapper {
    flex: 1;
    min-width: 350px;
    text-align: center;
}

.citizens-corner-image,
.ehs-image {
    width: 100%;
    border-radius: 12px;
    object-fit: cover;
}

.citizens-corner-content-text img,
.ehs-content-text img {
    max-width: 100%;
    height: auto;
}

.document-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #0d6efd;
    transition: all 0.3s ease;
}

.document-item:hover {
    background: #e9ecef;
    transform: translateX(5px);
}

.document-content {
    display: flex;
    align-items: center;
    flex: 1;
}

.document-content i {
    font-size: 1.25rem;
}

.document-title {
    font-weight: 500;
    color: #333;
}

.document-download-btn {
    white-space: nowrap;
}

.content-text {
    text-align: justify;
    line-height: 1.8;
}

/* CSR Table */
.csr-table {
    width: 100%;
    table-layout: fixed;
}

.csr-table thead th {
    background-color: #1e3a5f;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    padding: 12px;
    border: 1px solid #dee2e6;
    white-space: nowrap;
}

.csr-table tbody td {
    padding: 12px;
    font-size: 15px;
    vertical-align: middle;
    border: 1px solid #dee2e6;
}

.csr-table tbody tr:hover {
    background-color: #f8f9fa;
}

/* Download Forms Table */
.download-table {
    width: 100%;
    table-layout: fixed;
}

.download-table thead th {
    background-color: #1e3a5f;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    padding: 12px;
    border: 1px solid #dee2e6;
}

.download-table tbody td {
    padding: 12px;
    font-size: 15px;
    vertical-align: middle;
    border: 1px solid #dee2e6;
}

.download-table tbody tr:hover {
    background-color: #f8f9fa;
}

/* Financial Performance & Investors Page */
.investors-content-text * {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.investors-content-text {
    text-align: justify;
}

.documents-wrapper {
    margin-top: 20px;
}

.documents-wrapper h5 {
    font-weight: 600;
    color: #333;
    margin-bottom: 20px;
}

.doc-box {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 16px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 14px 18px;
    margin-bottom: 12px;
    transition: all 0.2s ease;
}

.doc-box:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border-color: #b0b8c1;
}

.doc-left {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 0;
}

.doc-left i {
    font-size: 22px;
    color: #0066cc;
    flex-shrink: 0;
}

.doc-left i.bi-file-earmark-text {
    font-size: 22px;
    color: #0066cc;
    margin-right: 4px;
}

.doc-info {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.doc-title {
    font-size: 15px;
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.4;
    color: #212529;
}

.doc-download {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
}

.doc-size-col {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 90px;
}

.doc-size {
    font-size: 14px;
    color: #6c757d;
    white-space: nowrap;
    font-weight: 400;
}

/* Download Button with Tooltip */
.download-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    color: #0066cc;
    font-size: 18px;
    padding: 8px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.download-btn:hover {
    color: #0052a3;
}

.download-btn::after {
    content: "Download";
    position: absolute;
    bottom: 120%;
    left: 50%;
    transform: translateX(-50%);
    background: #000;
    color: #fff;
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 10;
}

.download-btn::before {
    content: "";
    position: absolute;
    bottom: 110%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #000;
    opacity: 0;
    transition: opacity 0.2s ease;
    z-index: 10;
}

.download-btn:hover::after,
.download-btn:hover::before {
    opacity: 1;
}

/* PDF Card */
.pdf-card {
    display: flex;
    align-items: flex-start;
    padding: 10px 15px;
    background: #0c2558;
    border-radius: 8px;
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    text-decoration: none;
    color: #fff;
    transition: transform 0.2s;
    flex-shrink: 0;
}

.pdf-card:hover {
    transform: translateY(-2px);
}

.pdf-icon {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

.pdf-icon i {
    font-size: 20px;
    color: #ff2d2d;
}

.pdf-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
}

.pdf-title {
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pdf-meta {
    font-size: 12px;
    color: #ccc;
    margin-top: 2px;
    white-space: nowrap;
}

/* Pagination Styling */
.pagination-wrapper {
    justify-content: center;
    margin-top: 30px;
}

.pagination-wrapper nav {
    justify-content: center;
}

.pagination-wrapper .pagination {
    align-items: center;
    gap: 5px;
    margin: 0;
    padding: 0;
}

.pagination-wrapper .page-item {
    margin: 0;
}

.pagination-wrapper .page-link {
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 8px 12px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    color: #0066cc;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.2s ease;
    background: #fff;
    margin: 0;
}

.pagination-wrapper .page-link:hover {
    background: #0066cc;
    color: #fff;
    border-color: #0066cc;
    z-index: 2;
}

.pagination-wrapper .page-item.active .page-link {
    background: #0066cc;
    color: #fff;
    border-color: #0066cc;
    z-index: 3;
}

.pagination-wrapper .page-item.disabled .page-link {
    color: #adb5bd;
    pointer-events: none;
    cursor: not-allowed;
    background: #f8f9fa;
    border-color: #dee2e6;
}

.pagination-wrapper .page-link svg {
    width: 12px;
    height: 12px;
    vertical-align: middle;
}

/* Home Page Styles */
.service-box {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 20px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

.service-box p {
    flex-grow: 1;
}

.view-all-btn {
    margin-top: auto;
    align-self: flex-end;
}

.govt-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.govt-card .govt-body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.govt-card .view-all-btn {
    margin-top: auto;
    align-self: anchor-center;
}

.partners-section {
    background-color: #f8f9fa;
}

.partners-title {
    font-size: 32px;
    font-weight: 700;
    color: #1e3a5f;
    margin-bottom: 10px;
}

.partners-sub {
    font-size: 16px;
    color: #6c757d;
    margin-bottom: 0;
}

.partner-logo-box {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.partner-logo-box:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    transform: translateY(-3px);
}

.partner-logo {
    max-width: 100%;
    max-height: 80px;
    object-fit: contain;
    transition: all 0.3s ease;
}

.partner-logo-box a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

#partnersCarousel .carousel-control-prev,
#partnersCarousel .carousel-control-next {
    width: 50px;
    height: 50px;
    background-color: rgba(30, 58, 95, 0.8);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.8;
}

#partnersCarousel .carousel-control-prev {
    left: -60px;
}

#partnersCarousel .carousel-control-next {
    right: -60px;
}

#partnersCarousel .carousel-control-prev:hover,
#partnersCarousel .carousel-control-next:hover {
    opacity: 1;
    background-color: rgba(30, 58, 95, 1);
}

.carousel-control-prev-icon-custom,
.carousel-control-next-icon-custom {
    font-size: 24px;
    color: #fff;
}

/* Layout Page Styles */
.lang-label {
    font-weight: 600;
    text-align: left;
}

.mobile-icons .mobile-icon-btn {
    border: none;
    background: transparent;
    font-size: 1.15rem;
    text-align: left;
}

.hero-stats-fixedrow {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    flex-wrap: nowrap;
    text-align: left !important;
}

.hero-stat-card {
    min-width: 100px;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.07);
    color: #fff;
    text-align: left !important;
}

.hero-stat-card .stat-big {
    font-size: 1.4rem;
    font-weight: 700;
}

.hero-stat-card .stat-label {
    font-size: 0.85rem;
    opacity: 0.95;
}

/* Footer Styles */
.visitor-counter {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.digit-box {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 38px;
    background-color: #0d6efd;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    font-size: 16px;
}

.footer-logo {
    width: 100px;
    height: 70px;
}

.footer-logo-text-title {
    font-size: 16px;
    padding-top: 13px;
}

/* Port Operations - Terminal Cards */
.port-operations-page-section {
    min-height: 60vh;
}

.terminal-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 26px 20px;
    height: 100%;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.terminal-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.18);
    background: var(--card-color);
}

.terminal-card .icon-wrap {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--card-color);
    color: #ffffff;
    font-size: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    transition: all 0.3s ease;
}

.terminal-card h6 {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
}

.terminal-card .card-link {
    font-size: 13px;
    font-weight: 600;
    margin-top: auto;
}

.terminal-card:hover h6,
.terminal-card:hover .card-link {
    color: #ffffff;
}

.terminal-card:hover .icon-wrap {
    background: #ffffff;
    color: var(--card-color);
}

.port-operations-content-text img {
    max-width: 100%;
    height: auto;
}

/* Screen Reader Access */
.content-wrapper {
    background: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.content-text h1,
.content-text h2,
.content-text h3,
.content-text h4,
.content-text h5,
.content-text h6 {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    font-weight: 600;
    color: #1e3a5f;
}

.content-text p {
    margin-bottom: 1rem;
}

.content-text ul,
.content-text ol {
    margin-bottom: 1rem;
    padding-left: 2rem;
}

.content-text li {
    margin-bottom: 0.5rem;
}

.content-text table {
    width: 100%;
    margin-bottom: 1.5rem;
    border-collapse: collapse;
}

.content-text table th,
.content-text table td {
    padding: 12px;
    border: 1px solid #dee2e6;
    text-align: center;
}
.content-text table th {
    font-weight: 600;
}


.content-text a {
    color: #ffffff;
    text-decoration: none !important;
}

.content-text a:hover {
    color: #ffffff;
}

.content-text img {
    max-width: 100%;
    height: auto;
    margin:  0;
    border-radius: 8px;
}

/*.content-text a {
    color: #0066cc;
    text-decoration: underline;
}

.content-text a:hover {
    color: #004499;
}

.content-text img {
    max-width: 100%;
    height: auto;
    margin: 1rem 0;
    border-radius: 8px;
}*/

/* Table Styling Global */
.table-responsive {
    overflow-x: auto;
    margin-bottom: 20px;
}

.table thead th {
    background-color: #1e3a5f;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    padding: 12px 10px;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #dee2e6;
}

.table tbody td {
    padding: 10px;
    font-size: 15px;
    color: #212529;
    vertical-align: middle;
    border: 1px solid #dee2e6;
}

.table-hover tbody tr:hover {
    background-color: #f8f9fa;
}

/* Width Helpers */
.w-5 { width: 5%; }
.w-10 { width: 10%; }
.w-30 { width: 30%; }
.w-60 { width: 60%; }
.w-65 { width: 65%; }

/* ========== RESPONSIVE MEDIA QUERIES ========== */

@media (max-width: 992px) {
    #partnersCarousel .carousel-control-prev {
        left: 10px;
    }
    
    #partnersCarousel .carousel-control-next {
        right: 10px;
    }
}

@media (max-width: 768px) {
    .about-content-text {
        font-size: 13px;
    }

    .document-item {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .document-download-btn {
        width: 100%;
    }

    .csr-table {
        font-size: 13px;
    }

    .doc-box {
        grid-template-columns: 1fr auto;
        gap: 12px;
    }
    
    .doc-size-col {
        grid-column: 1 / -1;
        justify-content: flex-start;
        margin-left: 32px;
    }

    .partner-logo-box {
        height: 100px;
        padding: 15px;
    }
    
    .partner-logo {
        max-height: 60px;
    }
    
    .partners-title {
        font-size: 24px;
    }

    .content-wrapper {
        padding: 20px;
    }
    
    .content-text {
        font-size: 15px;
    }
}

@media (max-width: 576px) {
    .hide-mobile {
        display: none !important;
    }

    .hero-stats-fixedrow {
        flex-wrap: wrap;
        gap: 10px;
        text-align: left;
    }

    .hero-stat-card {
        min-width: 80px;
        padding: 10px;
        text-align: left;
    }

    .pdf-card {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        min-width: 100%;
    }

    .pdf-icon {
        margin-right: 0;
        margin-bottom: 8px;
    }
}