 /* ===== Grievance Policy Page Specific Styles ===== */
 /* gradient background + gold text as per previous request, maintaining consistency */
 .grievance-main {
     color: 0a2540;
     padding: 80px 0;
 }

 .grievance-container {
     max-width: 1300px;
     margin: 0 auto;
     padding: 0 24px;
 }

 .policy-card {
     background: linear-gradient(135deg, #38939d, #0b1a2e);
     backdrop-filter: blur(2px);
     border-radius: 24px;
     border: 1px solid rgba(55, 133, 212, 0.25);
     padding: 2rem 2rem;
     margin-bottom: 2rem;
     transition: all 0.3s ease;
 }

 .policy-card:hover {
     border-color: rgba(55, 133, 212, 0.25, 0.6);
     box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
 }

 .policy-title {
     font-size: 1.85rem;
     font-weight: 700;
     margin-bottom: 1rem;
     color: 0a2540;
     border-left: 4px solid 0a2540;
     padding-left: 20px;
     letter-spacing: -0.3px;
 }

 .policy-subtitle {
     font-size: 1.35rem;
     font-weight: 600;
     margin: 1.5rem 0 0.75rem;
     color: #0a2540;
 }

 .policy-text,
 .policy-list li,
 .matrix-table p {
     color: #e0e0e0;
     line-height: 1.65;
     font-size: 1rem;
 }

 .policy-list {
     list-style: none;
     padding-left: 0;
 }

 .policy-list li {
     margin-bottom: 0.6rem;
     padding-left: 1.5rem;
     position: relative;
 }

 .policy-list li::before {
     content: "✦";
     color: 0a2540;
     position: absolute;
     left: 0;
     font-size: 0.9rem;
 }

 .gold-highlight {
     color: 0a2540;
     font-weight: 500;
 }

 .badge-sebi {
     background: rgba(55, 157, 212, 0.15);
     border: 1px solid rgba(55, 89, 212, 0.4);
     border-radius: 40px;
     padding: 0.3rem 1.2rem;
     display: inline-block;
     font-size: 0.8rem;
     font-weight: 500;
     letter-spacing: 0.5px;
     color: 0a2540;
     margin-bottom: 1rem;
 }

 .escalation-table {
     width: 100%;
     border-collapse: collapse;
     background: rgba(59, 56, 79, 0.4);
     border-radius: 16px;
     overflow-x: auto;
     display: block;
 }

 .escalation-table th,
 .escalation-table td {
     border: 1px solid rgba(55, 112, 212, 0.3);
     padding: 12px 16px;
     text-align: left;
     color: #eaeaea;
     vertical-align: top;
 }

 .escalation-table th {
     background: rgba(212, 175, 55, 0.15);
     color: 0a2540;
     font-weight: 600;
 }

 .contact-info-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
     gap: 1.5rem;
     margin-top: 1rem;
 }

 .contact-box {
     background: rgba(190, 149, 149, 0.45);
     border-radius: 20px;
     padding: 1.2rem;
     border-left: 3px solid 0a2540;
 }

 .contact-box h4 {
     color: 0a2540;
     margin-bottom: 0.75rem;
     font-size: 1.2rem;
 }

 hr.gold-divider {
     border-color: rgba(55, 118, 212, 0.3);
     margin: 1.8rem 0;
 }

 .small-note {
     font-size: 0.85rem;
     opacity: 0.9;
 }

 @media (max-width: 768px) {
     .policy-card {
         padding: 1.5rem;
     }

     .policy-title {
         font-size: 1.5rem;
     }

     .escalation-table th,
     .escalation-table td {
         padding: 8px 10px;
         font-size: 0.85rem;
     }
 }