 .compliance-hub {
     max-width: 1400px;
     margin: 0 auto;
     background: #ffffff;
     border-radius: 2rem;
     box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.2);
     overflow: hidden;
     transition: all 0.2s ease;
 }

 /* original Complaints Data header — preserved gradient exactly */
 .complaints-header {
     display: flex;
     align-items: center;
     justify-content: center;
     padding: 2rem 1.5rem 1.2rem 1.5rem;
     background: white;
     border-bottom: 1px solid #eef2ff;
 }

 .complaints-header h1 span {
     background: linear-gradient(120deg, #4f46e5, #f97316);
     -webkit-background-clip: text;
     background-clip: text;
     color: transparent;
     font-size: 48px;
     font-weight: 800;
     letter-spacing: -0.02em;
 }

 /* TAB BUTTONS STYLES — no scrolling, responsive wrapping buttons */
 .tabs-wrapper {
     padding: 1rem 1.5rem 0 1.5rem;
     background: white;
     border-bottom: 1px solid #e9eef3;
 }

 .tabs-nav {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     gap: 0.5rem;
     list-style: none;
     margin: 0;
     padding: 0;
 }

 .tabs-nav li {
     display: inline-flex;
 }

 .tab-btn {
     background: transparent;
     border: none;
     padding: 0.7rem 1.25rem;
     font-size: 0.85rem;
     font-weight: 600;
     font-family: inherit;
     color: #475569;
     cursor: pointer;
     border-radius: 40px;
     transition: all 0.2s ease;
     letter-spacing: -0.2px;
     white-space: nowrap;
     display: flex;
     align-items: center;
     gap: 6px;
 }

 .tab-btn i {
     font-style: normal;
     font-weight: 500;
     font-size: 1rem;
 }

 .tab-btn:hover {
     background: #f1f5f9;
     color: #03c08c;
     transform: translateY(-1px);
 }

 .tab-btn.active {
     background: #03c08c;
     color: white;
     box-shadow: 0 4px 10px rgba(79, 70, 229, 0.2);
 }

 /* content panels */
 .tabs-content {
     padding: 2rem 2rem 2.5rem 2rem;
     background: #ffffff;
     transition: 0.1s;
 }

 .tab-pane {
     display: none;
     animation: fadeIn 0.25s ease-out;
 }

 .tab-pane.active-pane {
     display: block;
 }

 @keyframes fadeIn {
     from {
         opacity: 0;
         transform: translateY(6px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 /* content styling — professional & readable */
 .complaints-stats {
     background: linear-gradient(120deg, #fef9f5 0%, #fff7ed 100%);
     border-radius: 1.5rem;
     padding: 1.75rem;
     border-left: 5px solid #f97316;
     margin-bottom: 2rem;
 }

 .stats-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 1.8rem;
     margin-top: 1rem;
 }

 .stat-card {
     background: white;
     border-radius: 1.2rem;
     padding: 1.2rem 1.6rem;
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
     flex: 1;
     min-width: 150px;
     border: 1px solid #ffe4cc;
 }

 .stat-number {
     font-size: 2.2rem;
     font-weight: 800;
     color: #f97316;
     line-height: 1.2;
 }

 .complaints-table-wrapper {
     overflow-x: auto;
     margin-top: 1.5rem;
 }

 .data-table {
     width: 100%;
     border-collapse: collapse;
     font-size: 0.9rem;
     border-radius: 1rem;
     overflow: hidden;
     box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
 }

 .data-table th {
     background: #f1f5f9;
     text-align: left;
     padding: 1rem 1rem;
     font-weight: 600;
     color: #1e293b;
 }

 .data-table td {
     padding: 0.9rem 1rem;
     border-bottom: 1px solid #eef2ff;
     color: #334155;
 }

 .data-table tr:last-child td {
     border-bottom: none;
 }

 .badge {
     background: #fee2e2;
     color: #b91c1c;
     font-size: 0.75rem;
     font-weight: 600;
     padding: 0.2rem 0.6rem;
     border-radius: 40px;
     display: inline-block;
 }

 .badge.resolved {
     background: #dcfce7;
     color: #15803d;
 }

 .policy-card {
     background: #fefcf9;
     border-radius: 1.25rem;
     padding: 1.8rem;
     border: 1px solid #edf2f7;
     box-shadow: 0 4px 10px rgba(0, 0, 0, 0.02);
 }

 .policy-card h3 {
     font-size: 1.6rem;
     font-weight: 700;
     background: linear-gradient(135deg, #4f46e5, #f97316);
     -webkit-background-clip: text;
     background-clip: text;
     color: transparent;
     margin-bottom: 1rem;
 }

 .policy-card p {
     margin-bottom: 1rem;
     color: #c6d0de;
 }

 .divider {
     height: 2px;
     background: linear-gradient(90deg, #4f46e520, #f9731620, #4f46e520);
     margin: 1rem 0;
 }

 .sebi-audit-list,
 .grievance-steps {
     padding-left: 1.2rem;
     margin: 1rem 0;
 }

 .sebi-audit-list li,
 .grievance-steps li {
     margin: 0.5rem 0;
 }


 /* disclaimer styles */

 /* Disclaimer page specific styling - preserves header/footer */
 .ve-disclaimer-page {
     background-color: #f9fafb;
     padding: 15vh 0;
 }

 .ve-disclaimer-container {
     max-width: 1140px;
     margin: 0 auto;
     padding: 0 15px;
 }

 .ve-disclaimer-header {
     text-align: center;
     margin-bottom: 2rem;
 }

 .ve-disclaimer-header .ve-section-tag {
     display: inline-block;
     background: #eef2ff;
     padding: 6px 16px;
     border-radius: 50px;
     font-size: 0.8rem;
     font-weight: 600;
     color: #1e3a8a;
     letter-spacing: 0.5px;
     margin-bottom: 1rem;
 }

 .ve-disclaimer-header h1 {
     font-size: 2.2rem;
     font-weight: 700;
     color: #0f172a;
     margin-bottom: 0.5rem;
 }

 .ve-disclaimer-header h1 span {
     color: #2563eb;
 }

 .ve-disclaimer-header p {
     color: #475569;
     max-width: 650px;
     margin: 0 auto;
 }

 .ve-disclaimer-card {
     background: #ffffff;
     border-radius: 28px;
     box-shadow: 0 10px 30px -12px rgba(0, 0, 0, 0.05);
     padding: 2rem 2.2rem;
     border: 1px solid #eef2f8;
 }

 .ve-disclaimer-badge {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     background: #f0fdf4;
     padding: 8px 18px;
     border-radius: 40px;
     margin-bottom: 1.5rem;
     font-size: 0.85rem;
     font-weight: 500;
     color: #166534;
     font-size: 16px;
 }

 .ve-disclaimer-badge i {
     font-size: 1rem;
 }

 .ve-disclaimer-content {
     font-size: 0.87rem;
     line-height: 1.6;
     color: #1e293b;
 }

 .ve-disclaimer-content p {
     margin-bottom: 1rem;
 }

 .ve-disclaimer-content strong {
     color: #0f172a;
 }

 .ve-disclaimer-content ul {
     margin: 0.75rem 0 1rem 1.5rem;
     list-style: disc;
 }

 .ve-disclaimer-content li {
     margin-bottom: 0.5rem;
 }

 .ve-highlight-box {
     background: #fefce8;
     border-left: 4px solid #eab308;
     padding: 1rem 1.25rem;
     border-radius: 16px;
     margin: 1.5rem 0;
     font-weight: 500;
 }

 .ve-reg-info {
     background: #f1f5f9;
     padding: 1rem 1.5rem;
     border-radius: 20px;
     margin: 1.25rem 0;
     display: flex;
     flex-wrap: wrap;
     gap: 1.5rem;
     justify-content: space-between;
 }

 .ve-reg-info span {
     font-size: 0.9rem;
 }

 .ve-reg-info i {
     color: #2563eb;
     margin-right: 6px;
 }

 @media (max-width: 768px) {
     .ve-disclaimer-card {
         padding: 1.5rem;
     }

     .ve-disclaimer-header h1 {
         font-size: 1.8rem;
     }

     .ve-reg-info {
         flex-direction: column;
         gap: 0.75rem;
     }
 }

 /* disclosure css */

 .disclosure-main {
     padding: 15vh 0 100px;
     background: #f8fafc;
 }

 .disclosure-container {
     max-width: 1280px;
     margin: 0 auto;
     padding: 0 24px;
 }

 .disclosure-header-section {
     text-align: center;
     margin-bottom: 48px;
 }

 .disclosure-header-section h1 {
     font-size: 2.8rem;
     color: #0a2540;
     font-weight: 700;
     margin-bottom: 16px;
     letter-spacing: -0.01em;
 }

 .disclosure-header-section p {
     font-size: 1.2rem;
     color: #425466;
     max-width: 800px;
     margin: 0 auto;
 }

 .disclosure-card {
     background: #ffffff;
     border-radius: 28px;
     box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
     margin-bottom: 40px;
     overflow: hidden;
     transition: all 0.2s ease;
 }

 .disclosure-card-header {
     background: #0a2540;
     padding: 20px 32px;
     border-bottom: 2px solid #eef2f6;
 }

 .disclosure-card-header h2 {
     margin: 0;
     font-size: 1.7rem;
     font-weight: 600;
     color: #ffffff;
     display: flex;
     align-items: center;
     gap: 12px;
 }

 .disclosure-card-header h2 i {
     font-size: 1.6rem;
     color: #5bc0be;
 }

 .disclosure-card-body {
     padding: 32px;
 }

 .disclosure-card-body h3 {
     font-size: 1.35rem;
     font-weight: 600;
     color: #0a2540;
     margin-top: 24px;
     margin-bottom: 12px;
     border-left: 4px solid #5bc0be;
     padding-left: 16px;
 }

 .disclosure-card-body h3:first-of-type {
     margin-top: 0;
 }

 .disclosure-card-body p {
     color: #2d3e50;
     line-height: 1.6;
     margin-bottom: 16px;
     font-size: 1rem;
 }

 .disclosure-card-body ul,
 .disclosure-card-body ol {
     margin: 16px 0 20px 24px;
     color: #2d3e50;
     line-height: 1.6;
 }

 .disclosure-card-body li {
     margin-bottom: 8px;
 }

 .definition-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 24px;
     margin: 20px 0 10px;
 }

 .def-item {
     flex: 1 1 220px;
     background: #f1f5f9;
     padding: 16px;
     border-radius: 20px;
     text-align: center;
 }

 .def-item strong {
     display: block;
     font-size: 1.1rem;
     color: #0a2540;
     margin-bottom: 8px;
 }

 .rating-table {
     width: 100%;
     border-collapse: collapse;
     margin: 20px 0;
     background: #f9fbfd;
     border-radius: 16px;
     overflow: hidden;
 }

 .rating-table th,
 .rating-table td {
     border: 1px solid #e2e8f0;
     padding: 12px 16px;
     text-align: left;
 }

 .rating-table th {
     background: #eef2ff;
     font-weight: 600;
     color: #0a2540;
 }

 .badge-sign {
     font-family: monospace;
     background: #e9ecef;
     padding: 4px 8px;
     border-radius: 12px;
     font-size: 0.85rem;
 }

 .graph-note {
     background: #f0f9ff;
     padding: 16px 20px;
     border-left: 4px solid #5bc0be;
     border-radius: 12px;
     margin: 20px 0;
     font-size: 0.95rem;
 }

 .signature-block {
     margin-top: 32px;
     padding-top: 20px;
     border-top: 2px dashed #cbd5e1;
     display: flex;
     justify-content: space-between;
     flex-wrap: wrap;
     gap: 20px;
 }

 .sign-date {
     background: #f8fafc;
     padding: 12px 20px;
     border-radius: 32px;
     font-family: monospace;
 }

 .footer-small-note {
     text-align: center;
     font-size: 0.8rem;
     color: #5f6c80;
     margin-top: 20px;
 }

 @media (max-width: 768px) {
     .disclosure-main {
         padding: 50px 0;
     }

     .disclosure-card-header h2 {
         font-size: 1.3rem;
     }

     .disclosure-card-body {
         padding: 24px;
     }
 }

 /* terms and conditions */

 .legal-wrapper {
     padding: 80px 0 100px;
     background: #f8fafc;
 }

 .legal-card {
     background: #ffffff;
     border-radius: 24px;
     box-shadow: 0 20px 35px -12px rgba(0, 0, 0, 0.05);
     padding: 40px 48px;
     margin-bottom: 40px;
     transition: all 0.2s ease;
 }

 @media (max-width: 768px) {
     .legal-card {
         padding: 28px 20px;
     }
 }

 .legal-card h1 {
     font-size: 2.4rem;
     font-weight: 700;
     background: linear-gradient(135deg, #1e2a3a, #0f3b2c);
     -webkit-background-clip: text;
     background-clip: text;
     color: transparent;
     margin-bottom: 0.5rem;
 }

 .legal-card .last-updated {
     color: #5b6e8c;
     border-left: 3px solid #2c7a4d;
     padding-left: 12px;
     font-size: 0.85rem;
     margin-top: 8px;
     margin-bottom: 32px;
 }

 .legal-card h2 {
     font-size: 1.6rem;
     font-weight: 600;
     color: #1e2f41;
     margin: 28px 0 16px 0;
     padding-bottom: 6px;
     border-bottom: 2px solid #e9edf2;
 }

 .legal-card h3 {
     font-size: 1.25rem;
     font-weight: 600;
     color: #2c3e50;
     margin: 20px 0 12px 0;
 }

 .legal-card p,
 .legal-card li {
     color: #2c3e4f;
     line-height: 1.65;
     font-size: 1rem;
 }

 .legal-card ul,
 .legal-card ol {
     margin: 16px 0 16px 24px;
 }

 .legal-card li {
     margin: 8px 0;
 }

 .legal-card a {
     color: #1e6f3f;
     text-decoration: none;
     font-weight: 500;
     transition: 0.2s;
 }

 .legal-card a:hover {
     color: #0b4b2c;
     text-decoration: underline;
 }

 .badge-sebi {
     display: inline-block;
     background: #eef2f5;
     padding: 6px 14px;
     border-radius: 40px;
     font-size: 0.75rem;
     font-weight: 500;
     color: #1e6f3f;
     margin: 10px 0 5px;
 }

 .disclaimer-box {
     background: #fef9e6;
     border-left: 5px solid #e6b422;
     padding: 20px 24px;
     border-radius: 16px;
     margin: 24px 0;
 }

 hr {
     margin: 32px 0;
     border-color: #e2e8f0;
 }

 .footer-legal-note {
     font-size: 0.8rem;
     text-align: center;
     color: #5f6c84;
     margin-top: 20px;
 }

 /* compliance */

  .complaint-section {
            padding: 15vh 0 60px;
            background: #f8fafc;
        }
        .complaint-container {
            max-width: 1300px;
            margin: 0 auto;
            padding: 0 20px;
        }
        .page-title {
            text-align: center;
            margin-bottom: 20px;
            color: #1e2a3a;
            font-weight: 700;
        }
        .page-subtitle {
            text-align: center;
            color: #4a5568;
            margin-bottom: 50px;
            font-size: 1.1rem;
            border-bottom: 2px solid #e2e8f0;
            display: inline-block;
            width: auto;
            margin-left: auto;
            margin-right: auto;
            padding-bottom: 12px;
        }
        .complaint-card {
            background: #ffffff;
            border-radius: 20px;
            box-shadow: 0 10px 25px -5px rgba(0,0,0,0.05), 0 8px 10px -6px rgba(0,0,0,0.02);
            padding: 1.5rem;
            margin-bottom: 3rem;
            transition: all 0.2s;
            border: 1px solid #eef2f6;
        }
        .complaint-card h3 {
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 1.2rem;
            color: #0f3b5e;
            border-left: 5px solid #d4af37;
            padding-left: 15px;
        }
        .complaint-table-wrapper {
            overflow-x: auto;
            margin-bottom: 20px;
        }
        .data-table {
            width: 100%;
            border-collapse: collapse;
            font-size: 0.9rem;
            background: white;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 1px 2px rgba(0,0,0,0.03);
        }
        .data-table th, .data-table td {
            border: 1px solid #e2e8f0;
            padding: 12px 16px;
            text-align: center;
            vertical-align: middle;
        }
        .data-table th {
            background-color: #f1f5f9;
            font-weight: 700;
            color: #1e293b;
            font-size: 0.85rem;
            letter-spacing: 0.3px;
        }
        .data-table td {
            color: #2d3a48;
        }
        .table-caption {
            font-size: 0.8rem;
            color: #5b6e8c;
            margin-top: 10px;
            text-align: right;
            font-style: italic;
        }
        .note-box {
            background: #fef9e6;
            border-left: 4px solid #d4af37;
            padding: 18px 22px;
            border-radius: 14px;
            margin: 25px 0 20px;
            font-size: 0.9rem;
            color: #2c3e50;
        }
        .impersonation-note {
            background: #f0f7ff;
            border-left: 4px solid #2c7da0;
        }
        .trend-sub {
            font-size: 0.75rem;
            margin-top: 5px;
            text-align: left;
            color: #4a627a;
        }
        .grand-total-row {
            background-color: #f8fafc;
            font-weight: 700;
            border-top: 2px solid #cbd5e1;
        }
        @media (max-width: 768px) {
            .complaint-section {
                padding: 10vh 0 40px;
            }
            .data-table th, .data-table td {
                padding: 8px 10px;
                font-size: 0.75rem;
            }
            .complaint-card h3 {
                font-size: 1.3rem;
            }
        }
        .badge-compliance {
            background: #e9f5e9;
            color: #2f6b2f;
            font-size: 0.7rem;
            border-radius: 30px;
            padding: 3px 10px;
            display: inline-block;
            margin-left: 10px;
            vertical-align: middle;
            font-weight: normal;
        }