/* ============================================================
   BAPCO Pages CSS — All Pages Figma Match
   News, Jobs, Gallery, Blogs, Contact, Tenders, Tender Detail,
   About, Vendor Registration
   ============================================================ */

/* ── Shared page background ── */
.bapco-page-bg { background: #FAFCFD; }
.bapco-page-bg-white { background: #FFFFFF; }

/* ── Shared inner page hero (page title section) ── */
.bapco-page-hero {
    position: relative;
    min-height: 306px;
    background: url('/web/static/img/placeholder.png') center/cover no-repeat;
    display: flex;
    align-items: center;
}
.bapco-page-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(53, 31, 25, 0.94);
    z-index: 1;
}
.bapco-page-hero-inner {
    position: relative;
    z-index: 2;
    width: 100%;
    text-align: center;
    padding: 60px 46px 40px;
}
.bapco-page-hero h1 {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 70px !important;
    line-height: 1.0 !important;
    color: #FFFFFF !important;
    text-transform: capitalize !important;
    margin: 0 !important;
}
/* Breadcrumb */
.bapco-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    margin-bottom: 18px;
}
.bapco-breadcrumb a {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #FFFFFF;
    text-decoration: none;
    text-transform: uppercase;
}
.bapco-breadcrumb .sep {
    color: #F55B14;
    font-size: 14px;
}
.bapco-breadcrumb .current {
    font-family: 'Rubik', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #F55B14;
}

/* ── Container ── */
.bapco-container {
    max-width: 1492px;
    padding-left: 46px;
    padding-right: 46px;
    margin: 0 auto;
}

/* ============================================================
   NEWS PAGE
   ============================================================ */
.bapco-news-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 52px 0 60px;
}
.bapco-news-item {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
    border-radius: 14px;
    display: flex;
    overflow: hidden;
    min-height: 304px;
    margin-bottom: 24px;
}
.bapco-news-item-image {
    width: 400px;
    min-width: 400px;
    background: #F1F5F9;
    overflow: hidden;
}
.bapco-news-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bapco-news-item-content {
    flex: 1;
    padding: 45px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.bapco-news-item-date {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #62748E;
    margin-bottom: 18px;
}
.bapco-news-item-date i { color: #62748E; font-size: 16px; }
.bapco-news-item-title {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    line-height: 30px !important;
    color: #1D293D !important;
    margin-bottom: 14px !important;
}
.bapco-news-item-excerpt {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 30px;
    color: #3F4957;
    margin: 0;
}
/* News hero subtitle */
.bapco-news-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #DBEAFE;
    margin-top: 18px;
    text-align: center;
}

/* ============================================================
   JOBS / CAREERS PAGE
   ============================================================ */
.bapco-jobs-page { background: #FFFFFF; }
.bapco-jobs-filter-card {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
    border-radius: 14px;
    padding: 25px;
    margin-bottom: 36px;
}
.bapco-jobs-filter-card .row { align-items: flex-end; }
.bapco-jobs-filter-label {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #314158;
    margin-bottom: 8px;
    display: block;
}
.bapco-jobs-filter-card .form-control,
.bapco-jobs-filter-card .form-select {
    border: 1px solid #CAD5E2;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    height: 46px;
}
.bapco-jobs-count {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #45556C;
    margin-bottom: 20px;
}
.bapco-jobs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
/* Job Card */
.bapco-job-card {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}
.bapco-job-card:hover { text-decoration: none; color: inherit; box-shadow: 0 8px 20px rgba(0,0,0,0.15); }
.bapco-job-card-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(90deg, #FB2C36 0%, #E7000B 100%);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #FFFFFF;
}
.bapco-job-card-badge.normal { background: transparent; min-height: 36px; }
.bapco-job-card-body { padding: 24px; flex: 1; }
.bapco-job-card-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 20px !important;
    line-height: 28px !important;
    color: #1D293D !important;
    margin-bottom: 12px !important;
}
.bapco-job-card-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 12px;
}
.bapco-job-card-meta-row {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #45556C;
}
.bapco-job-card-meta-row i { color: #45556C; font-size: 15px; }
.bapco-job-card-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.bapco-job-tag-type {
    background: #DBEAFE;
    color: #1447E6;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 12px;
    border-radius: 100px;
}
.bapco-job-tag-dept {
    background: #F1F5F9;
    color: #314158;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    padding: 4px 12px;
    border-radius: 100px;
}
.bapco-job-card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    line-height: 20px;
    color: #45556C;
    margin-bottom: 0;
}
.bapco-job-card-footer {
    border-top: 1px solid #F1F5F9;
    padding: 16px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.bapco-job-card-footer a {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #155DFC;
    text-decoration: none;
}

/* ============================================================
   GALLERY PAGE
   ============================================================ */
.bapco-gallery-page { background: #FFFFFF; }
.bapco-gallery-top-row {
    display: grid;
    grid-template-columns: 264px 1fr 264px;
    gap: 12px;
    margin-bottom: 12px;
}
.bapco-gallery-top-side {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.bapco-gallery-top-side img {
    width: 264px;
    height: 316px;
    object-fit: cover;
    display: block;
}
.bapco-gallery-featured {
    position: relative;
    overflow: hidden;
    background: #333;
}
.bapco-gallery-featured img {
    width: 100%;
    height: 640px;
    object-fit: cover;
    display: block;
    filter: brightness(0.8);
}
.bapco-gallery-featured-controls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(0deg, rgba(13,15,20,0.9) 0%, rgba(13,15,20,0) 100%);
    padding: 24px 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}
.bapco-gallery-pairs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 12px;
}
.bapco-gallery-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.bapco-gallery-img {
    width: 100%;
    height: 467px;
    object-fit: cover;
    display: block;
}
.bapco-gallery-section {
    padding: 40px 0 60px;
}

/* ============================================================
   TENDERS LIST PAGE
   ============================================================ */
.bapco-tenders-page { background: #FAFCFD; }
.bapco-tenders-search-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    padding: 21px;
    margin-bottom: 28px;
}
.bapco-tenders-search-input {
    position: relative;
}
.bapco-tenders-search-input i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #99A1AF;
}
.bapco-tenders-search-input input {
    border: 1px solid #D1D5DC;
    border-radius: 8.75px;
    padding: 10.5px 14px 10.5px 40px;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: #0A0A0A;
    height: 44px;
    width: 100%;
}
.bapco-tenders-showing {
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #4A5565;
    margin-bottom: 20px;
}
/* Tender cards grid */
.bapco-tenders-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 21px;
}
.bapco-tender-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.bapco-tender-card-header {
    background: #351F19;
    padding: 0 21px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.bapco-tender-card-id {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #FFFFFF;
}
.bapco-tender-status-open {
    background: #ECFFF3;
    color: #008236;
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    font-weight: 500;
    padding: 3.5px 10.5px;
    border-radius: 100px;
}
.bapco-tender-status-closed {
    background: #F3F4F6;
    color: #364153;
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    font-weight: 500;
    padding: 3.5px 10.5px;
    border-radius: 100px;
}
.bapco-tender-card-body {
    padding: 20px 21px 0;
    flex: 1;
}
.bapco-tender-card-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 21px !important;
    color: #101828 !important;
    margin-bottom: 16px !important;
}
.bapco-tender-dates {
    display: flex;
    flex-direction: column;
    gap: 10.5px;
    margin-bottom: 16px;
}
.bapco-tender-date-row {
    display: flex;
    align-items: flex-start;
    gap: 10.5px;
}
.bapco-tender-date-row i { color: #99A1AF; font-size: 14px; margin-top: 2px; }
.bapco-tender-date-label {
    font-family: 'Inter', sans-serif;
    font-size: 10.5px;
    color: #6A7282;
    display: block;
    margin-bottom: 2px;
}
.bapco-tender-date-value {
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    color: #101828;
}
.bapco-tender-card-btn {
    display: block !important;
    background: #F55B14 !important;
    color: #FFFFFF !important;
    text-align: center !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    border-radius: 8.75px !important;
    padding: 10px !important;
    margin: 16px 21px 0 !important;
    text-decoration: none !important;
}
.bapco-tender-card-btn:hover { background: #e04818 !important; color: #fff !important; }
.bapco-tender-card-footer {
    background: #F9FAFB;
    border-top: 1px solid #F3F4F6;
    padding: 11.5px 21px;
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    color: #6A7282;
    margin-top: 12px;
}
/* Pagination */
.bapco-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    margin-top: 40px;
}
.bapco-page-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32.94px;
    height: 31.5px;
    border-radius: 8.75px;
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    font-weight: 500;
    border: 1px solid #D1D5DC;
    background: #FFFFFF;
    color: #364153;
    text-decoration: none;
    cursor: pointer;
}
.bapco-page-btn.active { background: #F55B14; border-color: #F55B14; color: #FFFFFF; }
.bapco-page-btn:hover:not(.active) { background: #F3F4F6; }

/* ============================================================
   TENDER DETAIL PAGE
   ============================================================ */
.bapco-tender-detail-page { background: #FAFCFD; }
.bapco-tender-detail-layout {
    display: grid;
    grid-template-columns: 1fr 373px;
    gap: 40px;
    padding: 48px 0 80px;
    align-items: start;
}
/* Detail breadcrumb */
.bapco-detail-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    margin-bottom: 24px;
}
.bapco-detail-breadcrumb a { color: #59413A; text-decoration: none; }
.bapco-detail-breadcrumb .sep { color: #59413A; }
.bapco-detail-breadcrumb .current { color: #1B1C1A; }

/* Tender header */
.bapco-tender-header-label {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: #A93203;
    margin-bottom: 8px;
}
.bapco-tender-header-title {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 33px !important;
    line-height: 48px !important;
    color: #1B1C1A !important;
    margin-bottom: 8px !important;
}
.bapco-tender-header-desc {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 19px;
    line-height: 32px;
    color: #59413A;
}
.bapco-tender-header-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #FFDBD0;
    border-radius: 12px;
    padding: 8px 16px;
}
.bapco-tender-header-badge .dot {
    width: 8px; height: 8px;
    background: #A93203;
    border-radius: 50%;
}
.bapco-tender-header-badge span {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #3A0B00;
}

/* Specs card */
.bapco-specs-card {
    background: #F7F7F7;
    border-radius: 8px;
    padding: 30px 32px;
    margin: 24px 0;
}
.bapco-specs-card h4 {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    line-height: 32px !important;
    color: #1B1C1A !important;
    margin-bottom: 20px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid rgba(225,191,182,0.15) !important;
}
.bapco-specs-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.bapco-spec-item-label {
    font-family: 'Teko', sans-serif;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #59413A;
    margin-bottom: 4.5px;
}
.bapco-spec-item-value {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #1B1C1A;
}

/* White content card */
.bapco-detail-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    padding: 28px;
    margin-bottom: 24px;
}
.bapco-detail-card h3 {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    line-height: 24px !important;
    color: #101828 !important;
    margin-bottom: 20px !important;
}
.bapco-scope-item {
    display: flex;
    align-items: flex-start;
    gap: 17.5px;
    margin-bottom: 20px;
}
.bapco-scope-dot {
    width: 7px; height: 7px;
    background: #ED8B00;
    border-radius: 50%;
    margin-top: 8px;
    flex-shrink: 0;
}
.bapco-scope-item-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 19px;
    color: #101828;
    margin-bottom: 2px;
}
.bapco-scope-item-desc {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 16px;
    color: #4A5565;
    margin: 0;
}
/* Requirements */
.bapco-req-item {
    display: flex;
    align-items: flex-start;
    gap: 10.5px;
    margin-bottom: 20px;
}
.bapco-req-item i { color: #ED8B00; margin-top: 3px; }
/* Documents */
.bapco-doc-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    height: 72px;
    border: 1px solid #E5E7EB;
    border-radius: 8.75px;
    margin-bottom: 10.5px;
}
.bapco-doc-icon {
    width: 42px; height: 42px;
    background: #F3F4F6;
    border-radius: 8.75px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4A5565;
    flex-shrink: 0;
}
.bapco-doc-info { flex: 1; padding: 0 14px; }
.bapco-doc-name {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: #101828;
    margin-bottom: 2px;
}
.bapco-doc-meta {
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    color: #6A7282;
}
.bapco-doc-btn {
    border: 1px solid #D1D5DC;
    border-radius: 8.75px;
    background: #FFFFFF;
    padding: 6px 12px;
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    font-weight: 500;
    color: #364153;
    white-space: nowrap;
    text-decoration: none;
}
/* Action buttons */
.bapco-action-btn-primary {
    background: #ED8B00 !important;
    border-radius: 8.75px !important;
    color: #FFFFFF !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12.25px !important;
    font-weight: 600 !important;
    padding: 8px 20px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.bapco-action-btn-outline {
    border: 2px solid #ED8B00 !important;
    border-radius: 8.75px !important;
    background: #FFFFFF !important;
    color: #ED8B00 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12.25px !important;
    font-weight: 600 !important;
    padding: 8px 20px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.bapco-action-btn-ghost {
    border: 1px solid #D1D5DC !important;
    border-radius: 8.75px !important;
    background: #FFFFFF !important;
    color: #364153 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12.25px !important;
    font-weight: 600 !important;
    padding: 8px 20px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* ── Aside (right column) ── */
.bapco-aside { display: flex; flex-direction: column; gap: 32px; }
/* Quick Actions */
.bapco-quick-actions {
    background: #F5F3F0;
    border-radius: 8px;
    padding: 24px;
}
.bapco-quick-actions h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    color: #59413A !important;
    margin-bottom: 16px !important;
    padding-bottom: 8px !important;
}
.bapco-quick-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px;
    background: #FFFFFF;
    border-radius: 4px;
    margin-bottom: 8px;
    text-decoration: none;
    color: #1B1C1A;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 500;
}
.bapco-quick-link:hover { color: #F55B14; }
/* Need Help card */
.bapco-need-help {
    background: linear-gradient(135deg, #1B1C1A 0%, #30312F 100%);
    border-radius: 8px;
    padding: 32px;
    position: relative;
    overflow: hidden;
}
.bapco-need-help::after {
    content: '';
    position: absolute;
    right: -32px;
    bottom: -32px;
    width: 128px;
    height: 128px;
    background: rgba(169,50,3,0.2);
    filter: blur(32px);
    border-radius: 12px;
}
.bapco-need-help h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    margin-bottom: 8px !important;
}
.bapco-need-help p {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: rgba(255,255,255,0.6);
    line-height: 23px;
    margin-bottom: 20px;
}
.bapco-need-help-contact { margin-bottom: 20px; }
.bapco-need-help-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #FFFFFF;
}
.bapco-need-help-row i { color: #FFDBD0; font-size: 16px; }
.bapco-need-help-btn {
    display: block;
    background: #FFFFFF;
    border-radius: 8px;
    text-align: center;
    padding: 16px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 17px;
    color: #1B1C1A;
    text-decoration: none;
    position: relative;
    z-index: 1;
}
.bapco-need-help-btn:hover { background: #f5f5f5; color: #1B1C1A; }
/* Key Dates card */
.bapco-key-dates {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    padding: 21px;
}
.bapco-key-dates h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #101828 !important;
    margin-bottom: 20px !important;
}
.bapco-key-date-row {
    display: flex;
    align-items: flex-start;
    gap: 10.5px;
    margin-bottom: 14px;
}
.bapco-key-date-row i { color: #ED8B00; margin-top: 2px; }
.bapco-key-date-label {
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    color: #6A7282;
    margin-bottom: 2px;
}
.bapco-key-date-value {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #101828;
}

/* Related tenders (in aside) */
.bapco-related-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    overflow: hidden;
}
.bapco-related-card-header {
    background: #071773;
    padding: 0 21px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.bapco-related-card-header .tid {
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    font-weight: 500;
    color: #FFFFFF;
}
.bapco-related-card-body { padding: 21px; }
.bapco-related-card-title {
    font-family: 'Inter', sans-serif;
    font-size: 12.25px;
    color: #101828;
    margin-bottom: 14px;
}
.bapco-related-view-btn {
    display: block !important;
    background: #ED8B00 !important;
    border-radius: 8.75px !important;
    text-align: center !important;
    padding: 7px 14px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.25px !important;
    font-weight: 500 !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* ── LOI Upload Section ── */
.bapco-loi-section {
    background: #FFFFFF;
    border: 1px solid rgba(225,191,182,0.15);
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    border-radius: 8px;
    padding: 41px;
    margin: 24px 0;
}
.bapco-loi-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
}
.bapco-loi-icon-wrap {
    width: 48px; height: 48px;
    background: #FFDBD0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #A93203;
}
.bapco-loi-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #1B1C1A !important;
    margin-bottom: 4px !important;
}
.bapco-loi-desc {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: #59413A;
    margin: 0;
}
.bapco-upload-zone {
    background: #F5F3F0;
    border: 2px dashed #E1BFB6;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    cursor: pointer;
    margin-bottom: 24px;
    min-height: 192px;
}
.bapco-upload-zone i { color: #8D7169; font-size: 32px; margin-bottom: 12px; }
.bapco-upload-zone p { font-family: 'Inter', sans-serif; font-size: 16px; color: #1B1C1A; margin-bottom: 4px; }
.bapco-upload-zone small { font-family: 'Inter', sans-serif; font-size: 14px; color: #59413A; }
.bapco-loi-submit-btn {
    background: linear-gradient(90deg, #A93203 0%, #CB4A1D 100%) !important;
    border-radius: 8px !important;
    color: #FFFFFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border: none !important;
    cursor: pointer !important;
}

/* ============================================================
   VENDOR REGISTRATION PAGE
   ============================================================ */
.bapco-vendor-page { background: #FAFCFD; }
.bapco-stepper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 40px;
    position: relative;
}
.bapco-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
    min-width: 160px;
}
.bapco-step-circle {
    width: 43px; height: 42px;
    border-radius: 50%;
    background: #00A63E;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 18px;
    margin-bottom: 8px;
}
.bapco-step-circle.active { background: #FC5220; }
.bapco-step-label {
    font-family: 'Poppins', sans-serif;
    font-size: 19px;
    font-weight: 600;
    color: #6A7282;
    text-align: center;
}
.bapco-step-label.active { color: #000000; }
.bapco-step-line {
    height: 3.5px;
    background: #00A63E;
    border-radius: 3.5px;
    flex: 1;
    margin-top: -21px;
    position: relative;
    z-index: 0;
}
.bapco-vendor-form-card {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12.75px;
    padding: 42px;
}
.bapco-vendor-form-card h3 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #101828 !important;
    margin-bottom: 28px !important;
}
.bapco-form-label {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #364153;
    margin-bottom: 10px;
    display: block;
}
.bapco-form-input,
.bapco-form-textarea,
.bapco-form-select {
    border: 1px solid #D1D5DC;
    border-radius: 8.75px;
    padding: 10.5px 14px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 15px;
    color: rgba(10,10,10,0.9);
    width: 100%;
    height: 44px;
    outline: none;
}
.bapco-form-textarea { height: auto; min-height: 107px; resize: vertical; }
.bapco-vendor-form-footer {
    border-top: 1.38px solid #E5E7EB;
    padding-top: 20px;
    display: flex;
    justify-content: flex-end;
    gap: 14px;
    margin-top: 32px;
}
.bapco-btn-prev {
    height: 50px; padding: 0 32px;
    background: #FFFFFF; border: 1px solid #D1D5DC; border-radius: 4px;
    font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 15px;
    color: #364153; letter-spacing: 0.5px; text-transform: uppercase; cursor: pointer;
}
.bapco-btn-next, .bapco-btn-submit {
    height: 50px; padding: 0 32px;
    background: #FC5220; border: none; border-radius: 4px;
    font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 15px;
    color: #FFFFFF; letter-spacing: 0.5px; text-transform: uppercase; cursor: pointer;
}
.bapco-btn-next:hover, .bapco-btn-submit:hover { background: #E04A0A; }
.bapco-upload-zone {
    border: 2px dashed #E1BFB6; border-radius: 8px;
    background: #F5F3F0; height: 160px;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 10px; cursor: pointer; transition: border-color .2s;
}
.bapco-upload-zone:hover { border-color: #FC5220; }
.bapco-upload-zone .uz-icon { font-size: 2rem; color: #8D7169; }
.bapco-upload-zone .uz-text { font-family: 'Inter',sans-serif; font-size: 15px; color: #1B1C1A; }
.bapco-upload-zone .uz-sub  { font-family: 'Inter',sans-serif; font-size: 13px; color: #59413A; }

/* ── FAQ Accordion (dynamic) ── */
.bapco-faq-item { border-bottom: 1px solid #EFEFEF; overflow: hidden; }
.bapco-faq-btn {
    width: 100%; text-align: left; background: transparent; border: none;
    padding: 20px 24px; cursor: pointer;
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    font-family: 'Plus Jakarta Sans', sans-serif; transition: background 0.15s;
}
.bapco-faq-btn:hover { background: #FFF8F5; }
.bapco-faq-icon {
    width: 28px; height: 28px; border-radius: 50%;
    border: 2px solid #FC5220; color: #FC5220;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.1rem; font-weight: 700; flex-shrink: 0; line-height: 1; transition: all 0.2s;
}
.bapco-faq-body {
    display: none; padding: 0 24px 20px;
    font-family: 'Inter', sans-serif; font-size: 15px; color: #555; line-height: 1.8;
    border-top: 1px solid #F5F5F5;
}

/* ── Highlights tab animation ── */
.bapco-hl-tab { transition: background 0.2s; }
.bapco-hl-panel { animation: bapco-fadein 0.25s ease; }
@keyframes bapco-fadein { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* ── News page specific classes ── */
.bapco-news-item-img { flex-shrink: 0; }
.bapco-news-item-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bapco-news-item-body { flex: 1; padding: 28px 32px; display: flex; flex-direction: column; justify-content: center; }
.bapco-news-item-date { display: flex; align-items: center; gap: 8px; font-family: 'Inter', sans-serif; font-size: 14px; color: #62748E; margin-bottom: 12px; }
.bapco-news-item-title { font-family: 'Poppins', sans-serif; font-size: 24px; font-weight: 600; color: #1D293D; line-height: 30px; margin-bottom: 12px; }
.bapco-news-item-excerpt { font-family: 'Inter', sans-serif; font-size: 15px; color: #64748B; line-height: 1.7; }

/* ── News page hero ── */
.bapco-page-hero-section {
    position: relative; background: rgba(53,31,25,0.94);
    padding: calc(84px + 84px) 0 48px; text-align: center;
}
.bapco-hero-breadcrumb {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 600;
    color: rgba(255,255,255,0.6); margin-bottom: 16px; text-transform: uppercase;
}
.bapco-hero-breadcrumb a { color: rgba(255,255,255,0.6); text-decoration: none; }
.bapco-hero-breadcrumb .sep { color: #F55B14; }
.bapco-hero-breadcrumb .current { color: #F55B14; }

@media (max-width: 768px) {
    .bapco-news-item { flex-direction: column; }
    .bapco-news-item-img { width: 100% !important; height: 220px; }
    .bapco-news-item-body { padding: 20px; }
}

/* Terms of Services numbered circles */
.bapco-sec-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #E8541A;
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    margin-right: 12px;
    flex-shrink: 0;
}
.bapco-terms-section {
    padding: 28px 0;
    border-bottom: 1px solid #F0F0F0;
}
.bapco-terms-section:last-child { border-bottom: none; }
.bapco-terms-section h3 {
    display: flex;
    align-items: center;
    font-family: 'Poppins', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #1C0A00;
    margin-bottom: 14px;
}

/* ── Services Sidebar ── */
.bapco-cat-btn:hover { background:#FFF8F5 !important; border-left-color:#F55B14 !important; }
.bapco-svc-btn:hover { background:#FFF0E8 !important; color:#E8541A !important; }

/* ── Project Cards ── */
.bapco-project-card:hover img { transform:scale(1.06); }

/* ── Org Chart ── */
.bapco-org-row {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.bapco-org-row::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 2px;
    background: #C0C0C0;
    width: var(--bar-w, 0px);
}
.bapco-org-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 10px;
}

/* ══ RTL Arabic Support ══ */
[dir="rtl"] body,
html[lang="ar"] body {
    direction: rtl;
    text-align: right;
    font-family: 'Tajawal', 'Cairo', 'Poppins', sans-serif;
}
[dir="rtl"] .bapco-navbar ul,
html[lang="ar"] .bapco-navbar ul { flex-direction: row-reverse; }
[dir="rtl"] .bapco-nav-drop-menu,
html[lang="ar"] .bapco-nav-drop-menu { left: auto; right: 0; }
[dir="rtl"] .row,
html[lang="ar"] .row { direction: rtl; }
[dir="rtl"] .bapco-news-item,
html[lang="ar"] .bapco-news-item { flex-direction: row-reverse; }
[dir="rtl"] .bapco-news-item-body,
html[lang="ar"] .bapco-news-item-body { padding: 28px 32px 28px 0; }
[dir="rtl"] .bapco-step,
html[lang="ar"] .bapco-step { flex-direction: row-reverse; }
