/* ==========================================================================
   Compliance & Disclosures Master Stylesheet — Hero Murpani (Murpani Investments)
   Theme: Bentol Native Integration with Brand Palette:
   - Magenta (Primary): #CF0887
   - Lime Green (Accent): #A6CE39
   - Electric Cyan: #00B4F1
   - Deep Indigo: #472F91
   - Dark Navy: #12131C / #181926
   ========================================================================== */

/* ─── Bentol Breadcrumb & Banner (Hub & Detail Pages) ─────────────────────── */
.breadcrumb-section.comp-banner {
    position: relative;
    padding: 150px 0 85px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.breadcrumb-section.comp-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(18, 19, 28, 0.95) 0%, rgba(24, 25, 38, 0.92) 55%, rgba(207, 8, 135, 0.40) 100%);
    z-index: 1;
}

.breadcrumb-section.comp-banner .container {
    position: relative;
    z-index: 2;
}

.comp-banner-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 18px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
    color: #ffffff;
    letter-spacing: 0.5px;
    margin-bottom: 18px;
    backdrop-filter: blur(8px);
}

.comp-banner-tag i {
    color: #A6CE39;
}

.comp-banner-title {
    font-size: 38px;
    line-height: 1.25;
    font-weight: 800;
    color: #ffffff !important;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.comp-banner-desc {
    font-size: 15.5px;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.88);
    max-width: 860px;
    margin: 0 auto 22px;
}

.comp-banner-desc strong {
    color: #ffffff;
}

.comp-badges-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
    justify-content: center;
}

.comp-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(6px);
    border-radius: 24px;
    padding: 6px 15px;
    font-size: 12.5px;
    color: #ffffff;
    font-weight: 500;
}

.comp-badge-pill i {
    color: #00B4F1;
    font-size: 12px;
}

.comp-badge-pill strong {
    color: #A6CE39;
    font-weight: 700;
}

/* Breadcrumb in Banner */
.comp-breadcrumb-nav {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 22px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 30px;
    backdrop-filter: blur(8px);
    margin-top: 12px;
}

.comp-breadcrumb-nav a {
    color: rgba(255, 255, 255, 0.75);
    font-size: 13.5px;
    text-decoration: none;
    transition: color 0.2s ease;
}

.comp-breadcrumb-nav a:hover {
    color: #ffffff;
}

.comp-breadcrumb-nav .sep {
    color: rgba(255, 255, 255, 0.4);
    font-size: 11px;
}

.comp-breadcrumb-nav .current {
    color: #A6CE39;
    font-size: 13.5px;
    font-weight: 600;
}

/* ─── Compliance Hub Grid (Directory View) ───────────────────────────────── */
.comp-hub-section {
    padding: 80px 0 100px;
    background: #F8F9FA;
}

.comp-hub-header {
    text-align: center;
    max-width: 780px;
    margin: 0 auto 50px;
}

.comp-hub-header .sub-title {
    font-size: 13.5px;
    font-weight: 700;
    color: #CF0887;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    display: block;
}

.comp-hub-header .title {
    font-size: 32px;
    font-weight: 800;
    color: #181926;
    line-height: 1.3;
}

.comp-card-item {
    background: #ffffff;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
    text-decoration: none;
}

.comp-card-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 0;
    background: linear-gradient(to bottom, #CF0887, #00B4F1);
    transition: height 0.3s ease;
}

.comp-card-item:hover {
    border-color: rgba(207, 8, 135, 0.3);
    box-shadow: 0 14px 30px rgba(24, 25, 38, 0.08);
    transform: translateY(-4px);
}

.comp-card-item:hover::before {
    height: 100%;
}

.comp-card-icon {
    width: 52px;
    height: 52px;
    border-radius: 10px;
    background: #FDF4F9;
    border: 1px solid rgba(207, 8, 135, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #CF0887;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.comp-card-item:hover .comp-card-icon {
    background: #CF0887;
    color: #ffffff;
    border-color: #CF0887;
}

.comp-card-item h3 {
    font-size: 18px;
    font-weight: 700;
    color: #181926;
    margin-bottom: 10px;
    line-height: 1.35;
    transition: color 0.2s ease;
}

.comp-card-item:hover h3 {
    color: #CF0887;
}

.comp-card-item p {
    font-size: 14px;
    line-height: 1.6;
    color: #64748B;
    margin-bottom: 20px;
    flex-grow: 1;
}

.comp-card-link {
    font-size: 13.5px;
    font-weight: 600;
    color: #CF0887;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: gap 0.2s ease;
}

.comp-card-item:hover .comp-card-link {
    gap: 12px;
    color: #00B4F1;
}

/* ==========================================================================
   DETAIL PAGE CONTAINER & SIDEBAR (Strictly Scoped)
   ========================================================================== */

.cdoc-wrapper {
    padding: 60px 0 90px;
    background: #F8F9FA;
}

.cdoc-card {
    background: #ffffff;
    border: 1px solid #E5E7EB;
    border-radius: 16px;
    box-shadow: 0 4px 25px rgba(24, 25, 38, 0.04);
    padding: 40px 45px;
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 767px) {
    .cdoc-card {
        padding: 24px 16px;
        border-radius: 12px;
    }
}

/* Sidebar Navigation */
.cdoc-nav-sidebar {
    background: #ffffff;
    border: 1px solid #E5E7EB;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 4px 20px rgba(24, 25, 38, 0.04);
    position: sticky;
    top: 100px;
    max-height: calc(100vh - 120px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.cdoc-sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 14px;
    margin-bottom: 12px;
    border-bottom: 1px solid #E5E7EB;
    flex-shrink: 0;
}

.cdoc-sidebar-header h4 {
    font-size: 15px;
    font-weight: 700;
    color: #181926;
    margin: 0;
    display: flex;
    align-items: center;
}

.cdoc-nav-scroll {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding-right: 6px;
    flex: 1 1 auto;
    min-height: 0 !important;
    scrollbar-width: thin;
    scrollbar-color: #CBD5E1 #F1F5F9;
}

.cdoc-nav-scroll::-webkit-scrollbar {
    width: 6px;
}

.cdoc-nav-scroll::-webkit-scrollbar-track {
    background: #F1F5F9;
    border-radius: 6px;
}

.cdoc-nav-scroll::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 6px;
}

.cdoc-nav-scroll::-webkit-scrollbar-thumb:hover {
    background: #CF0887;
}

.cdoc-nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.cdoc-nav-list li {
    margin-bottom: 4px;
}

.cdoc-nav-list a {
    display: flex;
    align-items: center;
    padding: 9px 12px;
    border-radius: 8px;
    font-size: 13px;
    color: #475569;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.2s ease;
}

.cdoc-nav-list a .nav-icon {
    width: 20px;
    font-size: 13px;
    color: #64748B;
    margin-right: 8px;
    text-align: center;
    transition: color 0.2s ease;
}

.cdoc-nav-list a:hover {
    background: #FDF4F9;
    color: #CF0887;
    padding-left: 15px;
}

.cdoc-nav-list a:hover .nav-icon {
    color: #CF0887;
}

.cdoc-nav-list a.active {
    background: linear-gradient(135deg, #CF0887 0%, #472F91 100%);
    color: #ffffff !important;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(207, 8, 135, 0.25);
}

.cdoc-nav-list a.active .nav-icon {
    color: #ffffff !important;
}

.cdoc-nav-list a.active .active-arrow {
    font-size: 11px;
    opacity: 0.9;
}

.cdoc-contact-box {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px;
    margin-top: 16px;
    flex-shrink: 0;
}

.cdoc-cb-title {
    font-size: 12px;
    font-weight: 700;
    color: #181926;
    margin-bottom: 2px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.cdoc-cb-name {
    font-size: 13.5px;
    font-weight: 700;
    color: #CF0887;
    margin-bottom: 2px;
}

.cdoc-cb-badge {
    font-size: 11.5px;
    color: #64748B;
    font-weight: 500;
}

@media (max-width: 991px) {
    .cdoc-nav-sidebar {
        margin-top: 30px;
        position: static;
        max-height: none;
    }
}

/* ==========================================================================
   DETAIL DOCUMENT INNER CONTENT (Scoped to .cdoc-content and .cdoc)
   ========================================================================== */

.cdoc-content .page-container,
.cdoc-content .pw,
.cdoc .page-container,
.cdoc .pw {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.cdoc-content h1.page-title,
.cdoc-content h1.pt,
.cdoc h1.page-title,
.cdoc h1.pt {
    display: block !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin: 0 0 8px !important;
    border-bottom: 3px solid #CF0887 !important;
    padding-bottom: 10px !important;
    line-height: 1.3 !important;
}

/* ─── Detail Document Typography ─── */
.cdoc-content .sub,
.cdoc-content .subtitle,
.cdoc .sub,
.cdoc .subtitle {
    font-size: 13px;
    color: #6B7280;
    margin-bottom: 4px;
    font-style: italic;
    display: block;
}

.cdoc-content .aline,
.cdoc-content .arn-line,
.cdoc .aline,
.cdoc .arn-line {
    font-size: 13px;
    font-weight: 600;
    color: #CF0887;
    margin-bottom: 20px;
    display: inline-block;
    background: #FDF4F9;
    padding: 3px 10px;
    border-radius: 6px;
    border: 1px solid rgba(207, 8, 135, 0.2);
}

.cdoc-content h2.sh,
.cdoc-content h2.sec-head,
.cdoc-content h2.part-head,
.cdoc h2.sh,
.cdoc h2.sec-head,
.cdoc h2.part-head {
    font-size: 16px;
    font-weight: 700;
    color: #181926;
    margin: 28px 0 12px;
    border-bottom: 2px solid #FDF4F9;
    padding-bottom: 6px;
    position: relative;
    text-transform: none;
    letter-spacing: -0.2px;
}

.cdoc-content h2.sh::after,
.cdoc-content h2.sec-head::after,
.cdoc-content h2.part-head::after,
.cdoc h2.sh::after,
.cdoc h2.sec-head::after,
.cdoc h2.part-head::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 40px;
    height: 2px;
    background: #CF0887;
}

.cdoc-content h3.ssh,
.cdoc-content h3,
.cdoc h3.ssh,
.cdoc h3 {
    font-size: 14.5px;
    font-weight: 700;
    color: #181926;
    margin: 18px 0 8px;
}

.cdoc-content p,
.cdoc-content p.bt,
.cdoc-content p.body-text,
.cdoc-content p.sec-intro,
.cdoc p,
.cdoc p.bt,
.cdoc p.body-text,
.cdoc p.sec-intro {
    font-size: 14px;
    color: #475569;
    margin-bottom: 14px;
    line-height: 1.7;
}

/* ─── Callout & Notice Boxes ─── */
.cdoc-content .ibox,
.cdoc-content .intro-box,
.cdoc .ibox,
.cdoc .intro-box {
    background: #FDF4F9;
    border-left: 4px solid #CF0887;
    padding: 14px 18px;
    font-size: 13.5px;
    color: #374151;
    margin: 16px 0;
    border-radius: 0 8px 8px 0;
    line-height: 1.7;
}

.cdoc-content .gbox,
.cdoc-content .green-box,
.cdoc-content .note-box,
.cdoc-content .pledge-box,
.cdoc .gbox,
.cdoc .green-box,
.cdoc .note-box,
.cdoc .pledge-box {
    background: #F3F9EE;
    border-left: 4px solid #3B7A32;
    padding: 14px 18px;
    font-size: 13.5px;
    color: #2E7D32;
    border-radius: 0 8px 8px 0;
    line-height: 1.7;
    margin: 16px 0;
}

.cdoc-content .bbox,
.cdoc-content .blue-box,
.cdoc .bbox,
.cdoc .blue-box {
    background: #EFF6FF;
    border-left: 4px solid #00B4F1;
    padding: 14px 18px;
    font-size: 13.5px;
    color: #1E40AF;
    border-radius: 0 8px 8px 0;
    margin: 16px 0;
    line-height: 1.65;
}

.cdoc-content .rbox,
.cdoc-content .redbox,
.cdoc-content .mf-disclaimer,
.cdoc .rbox,
.cdoc .redbox,
.cdoc .mf-disclaimer {
    background: #FEF2F2;
    border-left: 4px solid #DC2626;
    padding: 14px 18px;
    font-size: 13.5px;
    color: #991B1B;
    border-radius: 0 8px 8px 0;
    margin: 16px 0;
    line-height: 1.65;
}

/* ─── Lists ─── */
.cdoc-content ul.bl,
.cdoc-content ul.nl,
.cdoc-content ul.plist,
.cdoc-content ul.rlist,
.cdoc-content ul.vlist,
.cdoc ul.bl,
.cdoc ul.nl,
.cdoc ul.plist,
.cdoc ul.rlist,
.cdoc ul.vlist {
    list-style: none !important;
    padding: 0 !important;
    margin: 14px 0 20px !important;
}

.cdoc-content ul.bl li,
.cdoc-content ul.nl li,
.cdoc-content ul.plist li,
.cdoc-content ul.rlist li,
.cdoc-content ul.vlist li,
.cdoc ul.bl li,
.cdoc ul.nl li,
.cdoc ul.plist li,
.cdoc ul.rlist li,
.cdoc ul.vlist li {
    padding: 7px 0 7px 22px !important;
    position: relative !important;
    border-bottom: 1px solid #F1F5F9 !important;
    font-size: 13.5px !important;
    color: #374151 !important;
    line-height: 1.6 !important;
}

.cdoc-content ul.bl li::before,
.cdoc ul.bl li::before {
    content: "•" !important;
    position: absolute !important;
    left: 0 !important;
    color: #CF0887 !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
}

.cdoc-content ul.nl li::before,
.cdoc-content ul.rlist li::before,
.cdoc-content ul.vlist li::before,
.cdoc ul.nl li::before,
.cdoc ul.rlist li::before,
.cdoc ul.vlist li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: #3B7A32 !important;
    font-weight: 700 !important;
}

.cdoc-content ul.plist li::before,
.cdoc ul.plist li::before {
    content: "✗" !important;
    position: absolute !important;
    left: 0 !important;
    color: #DC2626 !important;
    font-weight: 700 !important;
}

/* ─── Tables Master Styling ─── */
.cdoc-content table,
.cdoc table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin: 18px 0 24px !important;
    font-size: 13px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
}

.cdoc-content table th,
.cdoc table th {
    padding: 11px 14px !important;
    text-align: left !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    background: #181926 !important;
    font-size: 12px !important;
    border: none !important;
    border-bottom: 2px solid #CF0887 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
}

.cdoc-content table td,
.cdoc table td {
    padding: 10px 14px !important;
    border: none !important;
    border-bottom: 1px solid #F1F5F9 !important;
    vertical-align: middle !important;
    color: #374151 !important;
}

.cdoc-content table tr:last-child td,
.cdoc table tr:last-child td {
    border-bottom: none !important;
}

.cdoc-content table tr:nth-child(even) td,
.cdoc table tr:nth-child(even) td {
    background: #F8FAFC !important;
}

.cdoc-content table tr:hover td,
.cdoc table tr:hover td {
    background: #FDF4F9 !important;
}

.cdoc-content table.it td:first-child,
.cdoc table.it td:first-child {
    font-weight: 700 !important;
    color: #6B7280 !important;
    font-size: 11.5px !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    width: 190px !important;
    background: #F8FAFC !important;
}

.cdoc-content table.it td:last-child,
.cdoc table.it td:last-child {
    color: #181926 !important;
    font-size: 13.5px !important;
}

.cdoc-content table.rt th:first-child,
.cdoc-content table.tt th:first-child,
.cdoc table.rt th:first-child,
.cdoc table.tt th:first-child {
    background: #CF0887 !important;
}

.cdoc-content table.rt td:nth-child(2),
.cdoc table.rt td:nth-child(2) {
    font-weight: 700 !important;
    color: #CF0887 !important;
}

.cdoc-content table.comm-table td.rate,
.cdoc table.comm-table td.rate {
    font-weight: 700 !important;
    color: #3B7A32 !important;
    text-align: center !important;
}

.cdoc-content table.comm-table td.type,
.cdoc table.comm-table td.type {
    color: #64748B !important;
    text-align: center !important;
}

/* ─── Badges ─── */
.cdoc-content .badge-active,
.cdoc-content .ba,
.cdoc .badge-active,
.cdoc .ba {
    display: inline-block !important;
    background: #DCFCE7 !important;
    color: #15803D !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 10px !important;
    border-radius: 99px !important;
    border: 1px solid #BBF7D0 !important;
}

.cdoc-content .badge-na,
.cdoc .badge-na {
    display: inline-block !important;
    background: #F3F4F6 !important;
    color: #9CA3AF !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 10px !important;
    border-radius: 99px !important;
}

/* ─── CRITICAL: HIGH CONTRAST FOR ALL DARK CARDS (Fixes Text Not Visible) ─── */
.cdoc-content .entity-card,
.cdoc-content .gro-box,
.cdoc-content .gro-card,
.cdoc-content .not-ia-banner,
.cdoc-content .official-box,
.cdoc-content .sebi-link-box,
.cdoc-content .sc,
.cdoc .entity-card,
.cdoc .gro-box,
.cdoc .gro-card,
.cdoc .not-ia-banner,
.cdoc .official-box,
.cdoc .sebi-link-box,
.cdoc .sc {
    background: #181926 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    padding: 22px 26px !important;
    margin: 20px 0 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.cdoc-content .entity-card *,
.cdoc-content .gro-box *,
.cdoc-content .gro-card *,
.cdoc-content .not-ia-banner *,
.cdoc-content .official-box *,
.cdoc-content .sebi-link-box *,
.cdoc-content .sc *,
.cdoc .entity-card *,
.cdoc .gro-box *,
.cdoc .gro-card *,
.cdoc .not-ia-banner *,
.cdoc .official-box *,
.cdoc .sebi-link-box *,
.cdoc .sc * {
    color: #ffffff;
}

.cdoc-content .entity-card .ec-title,
.cdoc-content .gro-box .gb-title,
.cdoc-content .gro-card .gc-title,
.cdoc-content .verify-item .vi-org,
.cdoc-content .not-ia-banner .nib-title,
.cdoc .entity-card .ec-title,
.cdoc .gro-box .gb-title,
.cdoc .gro-card .gc-title,
.cdoc .verify-item .vi-org,
.cdoc .not-ia-banner .nib-title {
    color: #CF0887 !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 14px !important;
}

.cdoc-content .entity-card .ec-grid,
.cdoc .entity-card .ec-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
}

.cdoc-content .entity-card .ec-row,
.cdoc .entity-card .ec-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.cdoc-content .entity-card .ec-label,
.cdoc-content .gro-box .gl,
.cdoc-content .gro-card .gl,
.cdoc .entity-card .ec-label,
.cdoc .gro-box .gl,
.cdoc .gro-card .gl {
    color: rgba(255, 255, 255, 0.65) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}

.cdoc-content .entity-card .ec-val,
.cdoc-content .gro-box .gv,
.cdoc-content .gro-card .gv,
.cdoc .entity-card .ec-val,
.cdoc .gro-box .gv,
.cdoc .gro-card .gv {
    color: #ffffff !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
}

.cdoc-content .entity-card strong,
.cdoc-content .gro-box strong,
.cdoc-content .gro-card strong,
.cdoc-content .verify-box strong,
.cdoc-content .verify-item strong,
.cdoc .entity-card strong,
.cdoc .gro-box strong,
.cdoc .gro-card strong,
.cdoc .verify-box strong,
.cdoc .verify-item strong {
    color: #A6CE39 !important;
    font-weight: 700 !important;
}

.cdoc-content .entity-card a,
.cdoc-content .gro-box a,
.cdoc-content .gro-card a,
.cdoc-content .verify-box a,
.cdoc-content .verify-item a,
.cdoc .entity-card a,
.cdoc .gro-box a,
.cdoc .gro-card a,
.cdoc .verify-box a,
.cdoc .verify-item a {
    color: #00B4F1 !important;
    text-decoration: underline !important;
}

/* ─── Verify Box (4-Column Grid for Registered Details & Direct .vi Containers) ─── */
.cdoc-content.cp-registered-details .verify-box,
.cdoc-content .verify-box:has(> .vi),
.cdoc.cp-registered-details .verify-box,
.cdoc .verify-box:has(> .vi) {
    background: linear-gradient(135deg, #0F172A 0%, #1E3A5F 100%) !important;
    border: 3px solid #CF0887 !important;
    border-radius: 12px !important;
    padding: 20px 24px !important;
    margin: 22px 0 !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    text-align: center !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
}

.cdoc-content.cp-registered-details .verify-box .vb-title,
.cdoc-content .verify-box:has(> .vi) .vb-title,
.cdoc.cp-registered-details .verify-box .vb-title,
.cdoc .verify-box:has(> .vi) .vb-title {
    grid-column: 1 / -1 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 12px !important;
    text-align: center !important;
    letter-spacing: 0.03em !important;
}

.cdoc-content.cp-registered-details .verify-box .vi,
.cdoc-content .verify-box:has(> .vi) .vi,
.cdoc.cp-registered-details .verify-box .vi,
.cdoc .verify-box:has(> .vi) .vi {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: 8px !important;
    padding: 14px 10px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease !important;
}

.cdoc-content.cp-registered-details .verify-box .vi:hover,
.cdoc-content .verify-box:has(> .vi) .vi:hover,
.cdoc.cp-registered-details .verify-box .vi:hover,
.cdoc .verify-box:has(> .vi) .vi:hover {
    background: rgba(255, 255, 255, 0.14) !important;
    border-color: rgba(0, 180, 241, 0.4) !important;
    transform: translateY(-2px) !important;
}

.cdoc-content.cp-registered-details .verify-box .vi a,
.cdoc-content .verify-box:has(> .vi) .vi a,
.cdoc.cp-registered-details .verify-box .vi a,
.cdoc .verify-box:has(> .vi) .vi a {
    color: #60A5FA !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    display: inline-block !important;
    margin-bottom: 4px !important;
    text-decoration: none !important;
}

.cdoc-content.cp-registered-details .verify-box .vi a:hover,
.cdoc-content .verify-box:has(> .vi) .vi a:hover,
.cdoc.cp-registered-details .verify-box .vi a:hover,
.cdoc .verify-box:has(> .vi) .vi a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.cdoc-content.cp-registered-details .verify-box .vi p,
.cdoc-content .verify-box:has(> .vi) .vi p,
.cdoc.cp-registered-details .verify-box .vi p,
.cdoc .verify-box:has(> .vi) .vi p {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

@media (max-width: 768px) {
    .cdoc-content.cp-registered-details .verify-box,
    .cdoc-content .verify-box:has(> .vi),
    .cdoc.cp-registered-details .verify-box,
    .cdoc .verify-box:has(> .vi) {
        grid-template-columns: 1fr 1fr !important;
    }
}

@media (max-width: 480px) {
    .cdoc-content.cp-registered-details .verify-box,
    .cdoc-content .verify-box:has(> .vi),
    .cdoc.cp-registered-details .verify-box,
    .cdoc .verify-box:has(> .vi) {
        grid-template-columns: 1fr !important;
    }
}

/* ─── Verify Box (Block Container for Inner .verify-grid) ─── */
.cdoc-content .verify-box:has(.verify-grid),
.cdoc .verify-box:has(.verify-grid) {
    display: block !important;
    background: #181926 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 12px !important;
    padding: 22px 26px !important;
    margin: 20px 0 !important;
}

.cdoc-content .verify-box:has(.verify-grid) h3,
.cdoc .verify-box:has(.verify-grid) h3 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 6px !important;
}

.cdoc-content .verify-box:has(.verify-grid) p,
.cdoc .verify-box:has(.verify-grid) p {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    margin-bottom: 16px !important;
    line-height: 1.6 !important;
}

.cdoc-content .verify-grid,
.cdoc .verify-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
    gap: 12px !important;
}

.cdoc-content .verify-item,
.cdoc .verify-item {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
}

.cdoc-content .verify-item .vi-desc,
.cdoc .verify-item .vi-desc {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    margin-top: 3px !important;
    line-height: 1.4 !important;
}

/* ─── Social Buttons in Registered Details ─── */
.cdoc-content .social-wrap,
.cdoc .social-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin: 16px 0 !important;
}

.cdoc-content .soc-btn,
.cdoc .soc-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: 1.5px solid #E2E8F0 !important;
    background: #ffffff !important;
    color: #181926 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.25s ease !important;
}

.cdoc-content .soc-btn:hover,
.cdoc .soc-btn:hover {
    border-color: #CF0887 !important;
    color: #CF0887 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(207, 8, 135, 0.15) !important;
}

/* ─── Escalation Row (5 Evenly Sized Cards Spanning Full Width) ─── */
.cdoc-content .esc-row,
.cdoc .esc-row {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 18px 0 26px !important;
}

.cdoc-content .esc-card,
.cdoc .esc-card,
.cdoc-content .esc-step,
.cdoc .esc-step {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    width: 100% !important;
    min-height: 140px !important;
    padding: 16px 10px !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.cdoc-content .esc-card:hover,
.cdoc .esc-card:hover,
.cdoc-content .esc-step:hover,
.cdoc .esc-step:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16) !important;
}

.cdoc-content .esc-card .en,
.cdoc .esc-card .en,
.cdoc-content .es-n,
.cdoc .es-n {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin-bottom: 6px !important;
    line-height: 1 !important;
}

.cdoc-content .esc-card h4,
.cdoc .esc-card h4,
.cdoc-content .esc-step h4,
.cdoc .esc-step h4 {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.3 !important;
}

.cdoc-content .esc-card p,
.cdoc .esc-card p,
.cdoc-content .esc-step p,
.cdoc .esc-step p {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.9) !important;
    margin: 0 !important;
    line-height: 1.45 !important;
}

@media (max-width: 991px) {
    .cdoc-content .esc-row,
    .cdoc .esc-row {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 10px !important;
    }
}

@media (max-width: 600px) {
    .cdoc-content .esc-row,
    .cdoc .esc-row {
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
}

@media (max-width: 420px) {
    .cdoc-content .esc-row,
    .cdoc .esc-row {
        grid-template-columns: 1fr !important;
    }
}


/* ─── AMC Display Grid ─── */
.cdoc-content .amc-disp-grid,
.cdoc .amc-disp-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 8px !important;
    margin: 12px 0 20px !important;
}

.cdoc-content .amc-disp-item,
.cdoc .amc-disp-item {
    background: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 12px !important;
}

.cdoc-content .ai-name,
.cdoc .ai-name {
    font-weight: 600 !important;
    color: #181926 !important;
}

.cdoc-content .ai-sebi,
.cdoc .ai-sebi {
    font-size: 10px !important;
    color: #2E7D32 !important;
    font-weight: 700 !important;
    background: #F3F9EE !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
}

/* ─── Partner / Director Cards ─── */
.cdoc-content .partners-grid,
.cdoc .partners-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 12px !important;
    margin: 14px 0 !important;
}

.cdoc-content .partner-card,
.cdoc .partner-card {
    border: 1px solid #E5E7EB !important;
    border-radius: 10px !important;
    padding: 16px 18px !important;
    background: #F9FAFB !important;
    border-left: 4px solid #CF0887 !important;
}

.cdoc-content .pc-role,
.cdoc .pc-role {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #64748B !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 4px !important;
}

.cdoc-content .pc-name,
.cdoc .pc-name {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin-bottom: 4px !important;
}

.cdoc-content .pc-euin,
.cdoc .pc-euin {
    font-size: 12px !important;
    color: #CF0887 !important;
    font-weight: 600 !important;
}

.cdoc-content .pc-nism,
.cdoc .pc-nism {
    font-size: 11.5px !important;
    color: #2E7D32 !important;
    margin-top: 4px !important;
}

/* ─── Hide Residual Standalone Templates ─── */
.cdoc-content .pg-hero,
.cdoc-content .disc-strip,
.cdoc-content .pg-bottom,
.cdoc-content footer,
.cdoc .pg-hero,
.cdoc .disc-strip,
.cdoc .pg-bottom,
.cdoc footer {
    display: none !important;
}

/* ==========================================================================
   SIF (Specialised Investment Funds) & Additional Document Components
   Scoped to .cdoc-content and .cdoc (Theme + HTML fidelity)
   ========================================================================== */

/* ─── New Asset Class Badge ─── */
.cdoc-content .new-badge,
.cdoc .new-badge {
    display: inline-block !important;
    background: #7C3AED !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 14px !important;
    border-radius: 99px !important;
    margin-bottom: 14px !important;
    letter-spacing: .05em !important;
    box-shadow: 0 2px 6px rgba(124, 58, 237, 0.25) !important;
}

/* ─── Warning Banner (SIF Higher-Risk Notice) ─── */
.cdoc-content .warn-banner,
.cdoc .warn-banner {
    background: #0F172A !important;
    border-left: 5px solid #7C3AED !important;
    padding: 16px 20px !important;
    border-radius: 0 8px 8px 0 !important;
    margin-bottom: 22px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12) !important;
}

.cdoc-content .warn-banner .wb-title,
.cdoc .warn-banner .wb-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #C4B5FD !important;
    margin-bottom: 6px !important;
}

.cdoc-content .warn-banner p,
.cdoc .warn-banner p {
    font-size: 13px !important;
    color: #E5E7EB !important;
    line-height: 1.7 !important;
    margin-bottom: 0 !important;
}

.cdoc-content .warn-banner p strong,
.cdoc .warn-banner p strong {
    color: #C4B5FD !important;
}

/* ─── Investment Product Ladder ─── */
.cdoc-content .ladder,
.cdoc .ladder {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    margin: 16px 0 22px !important;
}

.cdoc-content .ladder-item,
.cdoc .ladder-item {
    display: grid !important;
    grid-template-columns: 180px 1fr 160px !important;
    gap: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid #E5E7EB !important;
}

.cdoc-content .li-label,
.cdoc .li-label {
    display: flex !important;
    align-items: center !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

.cdoc-content .li-detail,
.cdoc .li-detail {
    padding: 12px 16px !important;
    background: #F9FAFB !important;
    border-left: 1px solid #E5E7EB !important;
    border-right: 1px solid #E5E7EB !important;
    font-size: 12px !important;
    color: #374151 !important;
    display: flex !important;
    align-items: center !important;
    line-height: 1.5 !important;
}

.cdoc-content .li-min,
.cdoc .li-min {
    padding: 12px 16px !important;
    background: #F3F4F6 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

/* ─── Strategy Grid & Strategy Cards ─── */
.cdoc-content .strat-grid,
.cdoc .strat-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    margin: 14px 0 20px !important;
}

.cdoc-content .strat-card,
.cdoc .strat-card {
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: 14px 16px !important;
    background: #FAFAFA !important;
    border-left: 4px solid #7C3AED !important;
}

.cdoc-content .strat-card .sc-icon,
.cdoc .strat-card .sc-icon {
    font-size: 20px !important;
    margin-bottom: 5px !important;
}

.cdoc-content .strat-card h4,
.cdoc .strat-card h4 {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #4C1D95 !important;
    margin-bottom: 4px !important;
}

.cdoc-content .strat-card p,
.cdoc .strat-card p {
    font-size: 11.5px !important;
    color: #6B7280 !important;
    line-height: 1.55 !important;
    margin-bottom: 0 !important;
}

/* ─── Eligible & Not Suitable Cards ─── */
.cdoc-content .eg-card,
.cdoc .eg-card {
    border-radius: 8px !important;
    padding: 14px 16px !important;
}

.cdoc-content .eg-card h4,
.cdoc .eg-card h4 {
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 4px !important;
}

.cdoc-content .eg-card p,
.cdoc .eg-card p {
    font-size: 11.5px !important;
    color: #6B7280 !important;
    line-height: 1.55 !important;
    margin-bottom: 0 !important;
}

/* ─── Yellow Box (Warning / Note) ─── */
.cdoc-content .ybox,
.cdoc .ybox {
    background: #FFFBEB !important;
    border: 2px solid #F59E0B !important;
    border-radius: 8px !important;
    padding: 14px 18px !important;
    font-size: 13px !important;
    color: #78350F !important;
    margin: 16px 0 !important;
    line-height: 1.7 !important;
}

.cdoc-content .ybox strong,
.cdoc .ybox strong {
    color: #92400E !important;
}

/* ─── Purple Box (Special Announcement) ─── */
.cdoc-content .pbox,
.cdoc .pbox {
    background: #F5F3FF !important;
    border-left: 4px solid #7C3AED !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    color: #4C1D95 !important;
    border-radius: 0 6px 6px 0 !important;
    line-height: 1.7 !important;
    margin: 14px 0 !important;
}

/* ─── Strategy & Comparison Tables ─── */
.cdoc-content table.cmp,
.cdoc table.cmp {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 14px 0 20px !important;
    font-size: 12px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.cdoc-content table.cmp th,
.cdoc table.cmp th {
    padding: 10px 12px !important;
    text-align: left !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    background: #181926 !important;
    font-size: 11.5px !important;
    border-bottom: 2px solid #7C3AED !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
}

.cdoc-content table.cmp td,
.cdoc table.cmp td {
    padding: 8px 12px !important;
    border-bottom: 1px solid #E5E7EB !important;
    font-size: 12px !important;
    vertical-align: middle !important;
}

.cdoc-content table.cmp tr:nth-child(even) td,
.cdoc table.cmp tr:nth-child(even) td {
    background: #F9FAFB !important;
}

.cdoc-content table.cmp td:first-child,
.cdoc table.cmp td:first-child {
    font-weight: 700 !important;
    color: #374151 !important;
    background: #FDF4F9 !important;
}

.cdoc-content table.st,
.cdoc table.st {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 12px 0 !important;
    font-size: 12px !important;
}

.cdoc-content table.st th,
.cdoc table.st th {
    padding: 9px 12px !important;
    text-align: left !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    background: #7C3AED !important;
    font-size: 11px !important;
}

.cdoc-content table.st td,
.cdoc table.st td {
    padding: 9px 12px !important;
    border-bottom: 1px solid #E5E7EB !important;
    font-size: 12px !important;
    vertical-align: top !important;
}

.cdoc-content table.st tr:nth-child(even) td,
.cdoc table.st tr:nth-child(even) td {
    background: #F5F3FF !important;
}

.cdoc-content table.st td:first-child,
.cdoc table.st td:first-child {
    font-weight: 700 !important;
    color: #181926 !important;
}

.cdoc-content table.st td:nth-child(2),
.cdoc table.st td:nth-child(2) {
    color: #7C3AED !important;
    font-weight: 700 !important;
}

/* ─── SEBI Circular Reference Box ─── */
.cdoc-content .sebi-ref,
.cdoc .sebi-ref {
    background: linear-gradient(135deg, #0F172A, #1E1B4B) !important;
    border: 3px solid #7C3AED !important;
    border-radius: 12px !important;
    padding: 18px 22px !important;
    margin: 20px 0 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 18px rgba(124, 58, 237, 0.12) !important;
}

.cdoc-content .sebi-ref h3,
.cdoc .sebi-ref h3 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #C4B5FD !important;
    margin-bottom: 12px !important;
}

.cdoc-content .sr-item,
.cdoc .sr-item {
    background: rgba(124, 58, 237, 0.12) !important;
    border: 1px solid rgba(124, 58, 237, 0.35) !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    margin-bottom: 8px !important;
}

.cdoc-content .sr-item:last-child,
.cdoc .sr-item:last-child {
    margin-bottom: 0 !important;
}

.cdoc-content .sr-item .sri-label,
.cdoc .sr-item .sri-label {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    color: #A78BFA !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    margin-bottom: 3px !important;
}

.cdoc-content .sr-item .sri-val,
.cdoc .sr-item .sri-val {
    font-size: 12.5px !important;
    color: #E5E7EB !important;
    font-weight: 600 !important;
}

.cdoc-content .sr-item .sri-url,
.cdoc .sr-item .sri-url {
    font-size: 12px !important;
    color: #60A5FA !important;
    margin-top: 3px !important;
}

.cdoc-content .sr-item .sri-url a,
.cdoc .sr-item .sri-url a {
    color: #60A5FA !important;
    text-decoration: underline !important;
}

/* ─── SIF Specific Verify Box (2-column grid layout) ─── */
.cdoc-content.cp-sif-disclosure .verify-box {
    background: linear-gradient(135deg, #0F172A, #1E3A5F) !important;
    border: 3px solid #CF0887 !important;
    border-radius: 12px !important;
    padding: 18px 22px !important;
    margin: 20px 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vb-title {
    font-size: 14.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 4px !important;
    grid-column: 1/-1 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vb-sub {
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.65) !important;
    margin-bottom: 8px !important;
    grid-column: 1/-1 !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vi {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-radius: 8px !important;
    padding: 10px 12px !important;
    text-align: left !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vi .vo {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #CF0887 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    margin-bottom: 3px !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vi .vu {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #60A5FA !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vi .vu a {
    color: #60A5FA !important;
    text-decoration: none !important;
}

.cdoc-content.cp-sif-disclosure .verify-box .vi .vd {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.55) !important;
    margin-top: 2px !important;
    line-height: 1.4 !important;
}

/* ─── Last Updated Footer ─── */
.cdoc-content .lu,
.cdoc .lu {
    font-size: 11.5px !important;
    color: #9CA3AF !important;
    text-align: right !important;
    margin-top: 22px !important;
    padding-top: 12px !important;
    border-top: 1px solid #E5E7EB !important;
    font-style: italic !important;
}

/* ─── Responsive Media Queries for SIF ─── */
@media (max-width: 768px) {
    .cdoc-content .ladder-item,
    .cdoc .ladder-item {
        grid-template-columns: 1fr !important;
    }
    .cdoc-content .li-detail,
    .cdoc-content .li-min,
    .cdoc .li-detail,
    .cdoc .li-min {
        border-left: none !important;
        border-top: 1px solid #E5E7EB !important;
    }
    .cdoc-content .strat-grid,
    .cdoc .strat-grid {
        grid-template-columns: 1fr !important;
    }
    .cdoc-content.cp-sif-disclosure .verify-box {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   Investor Grievance Redressal Master Styles
   Scoped to .cdoc-content and .cdoc (Theme + HTML fidelity)
   ========================================================================== */

/* ─── Grievance Redressal Officer (GRO) Card ─── */
.cdoc-content .gro-card,
.cdoc .gro-card {
    background: #0F172A !important;
    border-radius: 12px !important;
    padding: 20px 24px !important;
    margin: 18px 0 24px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.cdoc-content .gro-card .gc-title,
.cdoc .gro-card .gc-title {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #CF0887 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    margin-bottom: 8px !important;
    grid-column: 1 / -1 !important;
}

.cdoc-content .gro-card .gc-row,
.cdoc .gro-card .gc-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.cdoc-content .gro-card .gc-label,
.cdoc .gro-card .gc-label {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    color: rgba(255, 255, 255, 0.55) !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
}

.cdoc-content .gro-card .gc-val,
.cdoc .gro-card .gc-val {
    font-size: 13.5px !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

.cdoc-content .gro-card .gc-val[style*="color"],
.cdoc .gro-card .gc-val[style*="color"] {
    color: #4ade80 !important;
}

.cdoc-content .gro-card .gc-val a,
.cdoc .gro-card .gc-val a {
    color: #00B4F1 !important;
    text-decoration: none !important;
}

.cdoc-content .gro-card .gc-val a:hover,
.cdoc .gro-card .gc-val a:hover {
    text-decoration: underline !important;
}

/* ─── Steps Grid (How to Submit a Complaint) ─── */
.cdoc-content .steps-grid,
.cdoc .steps-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    margin: 16px 0 24px !important;
}

.cdoc-content .step-card,
.cdoc .step-card {
    border-radius: 8px !important;
    padding: 16px 14px !important;
    text-align: center !important;
    border: 1px solid #E5E7EB !important;
    background: #FAFAFA !important;
    transition: all 0.2s ease !important;
}

.cdoc-content .step-card:hover,
.cdoc .step-card:hover {
    border-color: #CF0887 !important;
    box-shadow: 0 4px 14px rgba(207, 8, 135, 0.1) !important;
    transform: translateY(-2px) !important;
}

.cdoc-content .step-card .sn,
.cdoc .step-card .sn {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #CF0887 !important;
    margin-bottom: 6px !important;
    line-height: 1 !important;
}

.cdoc-content .step-card h4,
.cdoc .step-card h4 {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin-bottom: 6px !important;
}

.cdoc-content .step-card p,
.cdoc .step-card p {
    font-size: 11.5px !important;
    color: #6B7280 !important;
    line-height: 1.5 !important;
    margin-bottom: 0 !important;
}

/* ─── Escalation Matrix (5-Level Stack) ─── */
.cdoc-content .esc-container,
.cdoc .esc-container {
    margin: 18px 0 26px !important;
}

.cdoc-content .esc-level,
.cdoc .esc-level {
    display: grid !important;
    grid-template-columns: 80px 1fr !important;
    gap: 0 !important;
    margin-bottom: 8px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid #E5E7EB !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.02) !important;
}

.cdoc-content .esc-num,
.cdoc .esc-num {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    min-height: 72px !important;
}

.cdoc-content .esc-body,
.cdoc .esc-body {
    padding: 12px 18px !important;
    background: #F9FAFB !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.cdoc-content .esc-body h4,
.cdoc .esc-body h4 {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin: 0 0 3px !important;
}

.cdoc-content .esc-body .esc-contact,
.cdoc .esc-body .esc-contact {
    font-size: 12px !important;
    color: #00B4F1 !important;
    font-weight: 600 !important;
}

.cdoc-content .esc-body .esc-contact a,
.cdoc .esc-body .esc-contact a {
    color: #00B4F1 !important;
    text-decoration: underline !important;
}

.cdoc-content .esc-body .esc-time,
.cdoc .esc-body .esc-time {
    font-size: 11.5px !important;
    color: #2E7D32 !important;
    font-weight: 600 !important;
    margin-top: 2px !important;
}

.cdoc-content .esc-body .esc-desc,
.cdoc .esc-body .esc-desc {
    font-size: 11.5px !important;
    color: #6B7280 !important;
    margin-top: 2px !important;
    line-height: 1.5 !important;
}

/* ─── Grievance Table (table.gt) ─── */
.cdoc-content table.gt,
.cdoc table.gt {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin: 16px 0 24px !important;
    font-size: 12.5px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.cdoc-content table.gt th,
.cdoc table.gt th {
    padding: 10px 14px !important;
    text-align: left !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    font-size: 11.5px !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

.cdoc-content table.gt th:nth-child(1),
.cdoc table.gt th:nth-child(1) {
    background: #CF0887 !important;
    width: 190px !important;
}

.cdoc-content table.gt th:nth-child(2),
.cdoc table.gt th:nth-child(2) {
    background: #0F172A !important;
}

.cdoc-content table.gt th:nth-child(3),
.cdoc table.gt th:nth-child(3) {
    background: #3B7A32 !important;
    width: 150px !important;
}

.cdoc-content table.gt td,
.cdoc table.gt td {
    padding: 10px 14px !important;
    border-bottom: 1px solid #F1F5F9 !important;
    font-size: 12.5px !important;
    vertical-align: top !important;
    color: #374151 !important;
}

.cdoc-content table.gt tr:last-child td,
.cdoc table.gt tr:last-child td {
    border-bottom: none !important;
}

.cdoc-content table.gt tr:nth-child(even) td,
.cdoc table.gt tr:nth-child(even) td {
    background: #FDF4F9 !important;
}

.cdoc-content table.gt td:first-child,
.cdoc table.gt td:first-child {
    font-weight: 600 !important;
    color: #181926 !important;
}

.cdoc-content table.gt td a,
.cdoc table.gt td a {
    color: #00B4F1 !important;
    text-decoration: none !important;
}

.cdoc-content table.gt td a:hover,
.cdoc table.gt td a:hover {
    text-decoration: underline !important;
}

.cdoc-content table.gt td:last-child,
.cdoc table.gt td:last-child {
    color: #2E7D32 !important;
    font-weight: 600 !important;
    font-size: 11.5px !important;
}

/* ─── Responsive Media Queries for Grievance Redressal ─── */
@media (max-width: 768px) {
    .cdoc-content .gro-card,
    .cdoc .gro-card {
        grid-template-columns: 1fr !important;
    }
    .cdoc-content .steps-grid,
    .cdoc .steps-grid {
        grid-template-columns: 1fr 1fr !important;
    }
    .cdoc-content .esc-level,
    .cdoc .esc-level {
        grid-template-columns: 60px 1fr !important;
    }
}

@media (max-width: 480px) {
    .cdoc-content .steps-grid,
    .cdoc .steps-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   SID / SAI / KIM & Scheme Documents Master Styles
   ========================================================================== */

/* ─── The Three Mandatory Mutual Fund Documents Cards ─── */
.cdoc-content .doc-cards,
.cdoc .doc-cards {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    margin: 20px 0 32px !important;
    align-items: stretch !important;
}

.cdoc-content .doc-card,
.cdoc .doc-card {
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    border: 1px solid #E5E7EB !important;
    background: #ffffff !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.cdoc-content .doc-card:hover,
.cdoc .doc-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12) !important;
}

.cdoc-content .doc-card .dc-head,
.cdoc .doc-card .dc-head {
    padding: 16px 22px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.cdoc-content .doc-card .dc-body,
.cdoc .doc-card .dc-body {
    padding: 22px 22px 24px !important;
    background: #FAFAFA !important;
    border: none !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.cdoc-content .doc-card .dc-full,
.cdoc .doc-card .dc-full {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin-bottom: 10px !important;
    font-style: normal !important;
    line-height: 1.35 !important;
}

.cdoc-content .doc-card .dc-desc,
.cdoc .doc-card .dc-desc {
    font-size: 12.5px !important;
    color: #475569 !important;
    line-height: 1.65 !important;
    margin-bottom: 0 !important;
    flex-grow: 1 !important;
}

.cdoc-content .doc-card .dc-badge-wrap,
.cdoc .doc-card .dc-badge-wrap,
.cdoc-content .doc-card .dc-body > div:last-child,
.cdoc .doc-card .dc-body > div:last-child {
    margin-top: auto !important;
    padding-top: 18px !important;
}

.cdoc-content .doc-card .dc-badge,
.cdoc .doc-card .dc-badge {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 5px 12px !important;
    border-radius: 99px !important;
    letter-spacing: 0.02em !important;
    align-self: flex-start !important;
}

/* ─── Scheme Documents Comparison Table (table.ct) ─── */
.cdoc-content table.ct,
.cdoc table.ct {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin: 16px 0 24px !important;
    font-size: 12.5px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.cdoc-content table.ct th,
.cdoc table.ct th {
    padding: 10px 14px !important;
    text-align: left !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    font-size: 11.5px !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

.cdoc-content table.ct th:first-child,
.cdoc table.ct th:first-child {
    background: #0F172A !important;
    width: 170px !important;
}

.cdoc-content table.ct th:nth-child(2),
.cdoc table.ct th:nth-child(2) {
    background: #CF0887 !important;
}

.cdoc-content table.ct th:nth-child(3),
.cdoc table.ct th:nth-child(3) {
    background: #3B7A32 !important;
}

.cdoc-content table.ct th:nth-child(4),
.cdoc table.ct th:nth-child(4) {
    background: #1D4ED8 !important;
}

.cdoc-content table.ct td,
.cdoc table.ct td {
    padding: 9px 14px !important;
    border-bottom: 1px solid #F1F5F9 !important;
    vertical-align: top !important;
    font-size: 12px !important;
    color: #374151 !important;
}

.cdoc-content table.ct tr:last-child td,
.cdoc table.ct tr:last-child td {
    border-bottom: none !important;
}

.cdoc-content table.ct tr:nth-child(even) td,
.cdoc table.ct tr:nth-child(even) td {
    background: #FDF4F9 !important;
}

.cdoc-content table.ct td:first-child,
.cdoc table.ct td:first-child {
    font-weight: 700 !important;
    color: #181926 !important;
    background: #F8FAFC !important;
}

/* ─── Riskometer Checklist (6-Zones) ─── */
.cdoc-content .checklist,
.cdoc .checklist {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin: 14px 0 20px !important;
}

.cdoc-content .cl-item,
.cdoc .cl-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    background: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
}

.cdoc-content .cl-item .cli,
.cdoc .cl-item .cli {
    font-size: 20px !important;
    flex-shrink: 0 !important;
    line-height: 1.2 !important;
}

.cdoc-content .cl-item h4,
.cdoc .cl-item h4 {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #181926 !important;
    margin-bottom: 2px !important;
}

.cdoc-content .cl-item p,
.cdoc .cl-item p {
    font-size: 11px !important;
    color: #64748B !important;
    line-height: 1.45 !important;
    margin: 0 !important;
}

/* ─── Document Access Cards (access-grid) ─── */
.cdoc-content .access-grid,
.cdoc .access-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    margin: 14px 0 22px !important;
}

.cdoc-content .acc-card,
.cdoc .acc-card {
    border: 1px solid #E2E8F0 !important;
    border-radius: 8px !important;
    padding: 14px 16px !important;
    background: #FAFAFA !important;
}

.cdoc-content .acc-card .ac-src,
.cdoc .acc-card .ac-src {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #CF0887 !important;
    margin-bottom: 4px !important;
}

.cdoc-content .acc-card .ac-url,
.cdoc .acc-card .ac-url {
    font-size: 12px !important;
    color: #00B4F1 !important;
    margin-bottom: 4px !important;
}

.cdoc-content .acc-card .ac-url a,
.cdoc .acc-card .ac-url a {
    color: #00B4F1 !important;
    text-decoration: underline !important;
}

.cdoc-content .acc-card .ac-desc,
.cdoc .acc-card .ac-desc {
    font-size: 11.5px !important;
    color: #64748B !important;
    line-height: 1.45 !important;
    margin: 0 !important;
}

/* Responsive queries for SID SAI KIM */
@media (max-width: 991px) {
    .cdoc-content .doc-cards,
    .cdoc .doc-cards {
        grid-template-columns: 1fr !important;
    }
    .cdoc-content .checklist,
    .cdoc .checklist,
    .cdoc-content .access-grid,
    .cdoc .access-grid {
        grid-template-columns: 1fr !important;
    }
}