 /* ── Full-width section wrappers ── */
 .sec-white {
     background: var(--white);
     width: 100%;
 }

 .sec-gray {
     background: var(--gray-50);
     width: 100%;
 }

 /* ── Inner layout: sidebar + content ── */
 .sec-inner {
     max-width: 1280px;
     margin: 0 auto;
     padding: 72px 24px;
     display: flex;
     gap: 40px;
     align-items: flex-start;
 }

 .sec-body {
     flex: 1;
     min-width: 0;
 }

 /* ── Sidebar column placeholder (only visible on first section) ── */
 .sidebar-col {
     width: 280px;
     flex-shrink: 0;
 }

 /* ── Sticky Sidebar ── */
 .sidebar {
     width: 280px;
     flex-shrink: 0;
     position: sticky;
     top: 24px;
     display: flex;
     flex-direction: column;
     gap: 16px;
     align-self: flex-start;
 }

 .sidebar-nav {
     background: var(--white);
     border: 1px solid var(--gray-300);
     border-radius: 16px;
     padding: 24px;
     box-shadow: 0 4px 24px rgba(30, 94, 255, .08);
 }

 .sidebar-nav h4 {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: .12em;
     text-transform: uppercase;
     color: var(--blue);
     margin-bottom: 14px;
 }

 .sidebar-nav a {
     display: block;
     font-size: 13.5px;
     color: var(--gray-700);
     text-decoration: none;
     padding: 7px 10px;
     border-radius: 8px;
     transition: background .18s, color .18s;
     font-weight: 500;
 }

 .sidebar-nav a:hover {
     background: var(--light-blue);
     color: var(--blue);
 }

 .sidebar-trust {
     background: linear-gradient(135deg, var(--navy) 0%, #162e5e 100%);
     border-radius: 16px;
     padding: 22px;
     box-shadow: 0 4px 24px rgba(10, 31, 68, .18);
 }

 .sidebar-trust h4 {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: .1em;
     text-transform: uppercase;
     color: rgba(255, 255, 255, .55);
     margin-bottom: 14px;
 }

 .sidebar-trust-item {
     display: flex;
     align-items: center;
     gap: 9px;
     color: var(--white);
     font-size: 13.5px;
     font-weight: 500;
     margin-bottom: 9px;
 }

 .sidebar-trust-item .chk {
     width: 20px;
     height: 20px;
     background: rgba(30, 94, 255, .35);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 11px;
     flex-shrink: 0;
 }

 .sidebar-date {
     background: var(--light-blue);
     border: 1px solid var(--gray-300);
     border-radius: 16px;
     padding: 18px 22px;
 }

 .sidebar-date p {
     font-size: 12px;
     color: var(--gray-500);
     font-weight: 600;
     letter-spacing: .08em;
     text-transform: uppercase;
     margin-bottom: 4px;
 }

 .sidebar-date span {
     font-size: 14px;
     font-weight: 700;
     color: var(--navy);
 }

 /* ── Hero ── */
 .hero-hc {
     background: linear-gradient(135deg, var(--navy) 0%, #0f2d6b 50%, #1540a8 100%);
     padding: 150px 20px 100px;
     text-align: center;
     position: relative;
     overflow: hidden;
 }

 .hero-hc::before {
     content: '';
     position: absolute;
     inset: 0;
     background: radial-gradient(ellipse 80% 60% at 70% 50%, rgba(30, 94, 255, .25) 0%, transparent 70%);
     pointer-events: none;
 }

 .hero-badge {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     background: rgba(30, 94, 255, .18);
     border: 1px solid rgba(30, 94, 255, .4);
     border-radius: 100px;
     padding: 6px 18px;
     font-size: 13px;
     font-weight: 600;
     color: #93b8ff;
     margin-bottom: 28px;
     letter-spacing: .04em;
 }

 .hero-hc h1 {
     font-size: clamp(36px, 5vw, 64px);
     font-weight: 800;
     color: var(--white);
     margin-bottom: 22px;
     letter-spacing: -.02em;
 }

 .hero h1 span {
     color: #6aa0ff;
 }

 .hero-hc p {
     font-size: clamp(15px, 2vw, 18px);
     color: rgba(255, 255, 255, .72);
     max-width: 680px;
     margin: 0 auto 40px;
     line-height: 1.75;
 }

 .trust-badges {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     gap: 12px;
     margin-bottom: 36px;
 }

 .trust-badge {
     background: rgba(255, 255, 255, .07);
     border: 1px solid rgba(255, 255, 255, .15);
     border-radius: 100px;
     padding: 8px 20px;
     font-size: 13.5px;
     font-weight: 600;
     color: rgba(255, 255, 255, .88);
     backdrop-filter: blur(8px);
     display: flex;
     align-items: center;
     gap: 7px;
 }

 .trust-badge .dot-hc {
     color: #4ade80;
 }

 .hero-date {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     background: rgba(255, 255, 255, .07);
     border: 1px solid rgba(255, 255, 255, .12);
     border-radius: 10px;
     padding: 10px 20px;
     font-size: 13px;
     color: rgba(255, 255, 255, .55);
     font-weight: 500;
 }

 .hero-date strong {
     color: rgba(255, 255, 255, .85);
     font-weight: 600;
 }

 /* ── Section headings ── */
 .section-eyebrow {
     display: inline-block;
     font-size: 11.5px;
     font-weight: 700;
     letter-spacing: .13em;
     text-transform: uppercase;
     color: var(--blue);
     background: var(--light-blue);
     border-radius: 100px;
     padding: 5px 14px;
     margin-bottom: 14px;
 }

 .section-title {
     font-size: clamp(26px, 3.5vw, 40px);
     font-weight: 800;
     color: var(--navy);
     margin-bottom: 16px;
     letter-spacing: -.02em;
 }

 .section-lead {
     font-size: 17px;
     color: var(--gray-500);
     max-width: 640px;
     line-height: 1.75;
     margin-bottom: 44px;
 }

 /* ── Glass Card ── */
 .glass-card {
     background: rgba(255, 255, 255, .9);
     backdrop-filter: blur(12px);
     border: 1px solid rgba(30, 94, 255, .12);
     border-radius: 20px;
     padding: 36px 40px;
     box-shadow: 0 4px 32px rgba(30, 94, 255, .07), 0 1px 4px rgba(10, 31, 68, .04);
 }

 .glass-card p {
     font-size: 16px;
     color: var(--gray-700);
     margin-bottom: 16px;
     line-height: 1.8;
 }

 .glass-card p:last-child {
     margin-bottom: 0;
 }

 /* ── Icon Grid ── */
 .icon-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
     gap: 20px;
 }

 .icon-card {
     background: var(--white);
     border: 1px solid var(--gray-300);
     border-radius: 16px;
     padding: 26px 24px;
     box-shadow: 0 2px 16px rgba(30, 94, 255, .05);
     transition: transform .2s, box-shadow .2s, border-color .2s;
 }

 .icon-card:hover {
     transform: translateY(-4px);
     box-shadow: 0 8px 32px rgba(30, 94, 255, .12);
     border-color: rgba(30, 94, 255, .3);
 }

 .icon-card .icon-wrap {
     width: 48px;
     height: 48px;
     background: var(--light-blue);
     border-radius: 12px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 22px;
     margin-bottom: 16px;
 }

 .icon-card h4 {
     font-size: 15px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 7px;
 }

 .icon-card p {
     font-size: 14px;
     color: var(--gray-500);
     line-height: 1.65;
 }

 /* ── Feature / Checklist Cards ── */
 .feature-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
     gap: 18px;
 }

 .feature-card {
     background: var(--white);
     border: 1px solid var(--gray-300);
     border-radius: 14px;
     padding: 22px 24px;
     display: flex;
     align-items: flex-start;
     gap: 14px;
     box-shadow: 0 2px 10px rgba(30, 94, 255, .04);
     transition: transform .2s, border-color .2s;
 }

 .feature-card:hover {
     transform: translateY(-2px);
     border-color: var(--blue);
 }

 .fc-check {
     width: 28px;
     height: 28px;
     background: var(--green-soft);
     border: 1px solid var(--green-border);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 13px;
     color: var(--green-text);
     flex-shrink: 0;
     margin-top: 1px;
 }

 .fc-text h4 {
     font-size: 15px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 4px;
 }

 .fc-text p {
     font-size: 13.5px;
     color: var(--gray-500);
     line-height: 1.6;
 }

 /* ── Warning Cards ── */
 .warning-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
     gap: 18px;
 }

 .warning-card {
     background: var(--red-soft);
     border: 1px solid var(--red-border);
     border-radius: 14px;
     padding: 22px 24px;
     display: flex;
     align-items: flex-start;
     gap: 14px;
     transition: transform .2s;
 }

 .warning-card:hover {
     transform: translateY(-2px);
 }

 .wc-x {
     width: 28px;
     height: 28px;
     background: #ffe4e4;
     border: 1px solid var(--red-border);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 13px;
     color: var(--red-text);
     flex-shrink: 0;
     margin-top: 1px;
 }

 .warning-card h4 {
     font-size: 15px;
     font-weight: 700;
     color: var(--red-text);
     margin-bottom: 4px;
 }

 .warning-card p {
     font-size: 13.5px;
     color: #a0443a;
     line-height: 1.6;
 }

 /* ── Conduct Blocks ── */
 .conduct-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
     gap: 20px;
 }

 .conduct-block {
     background: linear-gradient(135deg, var(--light-blue) 0%, #f4f8ff 100%);
     border: 1px solid rgba(30, 94, 255, .15);
     border-radius: 16px;
     padding: 28px 24px;
     text-align: center;
 }

 .conduct-block .cb-icon {
     font-size: 34px;
     margin-bottom: 14px;
     display: block;
 }

 .conduct-block h4 {
     font-size: 16px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 8px;
 }

 .conduct-block p {
     font-size: 14px;
     color: var(--gray-500);
     line-height: 1.65;
 }

 /* ── Trust Icons Row ── */
 .trust-icons-row {
     display: flex;
     flex-wrap: wrap;
     gap: 20px;
     margin-top: 32px;
 }

 .trust-icon-card {
     flex: 1;
     min-width: 180px;
     background: var(--white);
     border: 1px solid var(--gray-300);
     border-radius: 16px;
     padding: 26px 24px;
     text-align: center;
     box-shadow: 0 2px 12px rgba(30, 94, 255, .05);
 }

 .trust-icon-card .ti-icon {
     font-size: 36px;
     margin-bottom: 12px;
     display: block;
 }

 .trust-icon-card h4 {
     font-size: 15px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 6px;
 }

 .trust-icon-card p {
     font-size: 13.5px;
     color: var(--gray-500);
     line-height: 1.6;
 }

 /* ── Report Card ── */
 .report-card {
     background: linear-gradient(135deg, var(--navy) 0%, #122d5e 100%);
     border-radius: 24px;
     padding: 48px;
     display: grid;
     grid-template-columns: 1fr auto;
     gap: 32px;
     align-items: center;
     box-shadow: 0 8px 48px rgba(10, 31, 68, .22);
 }

 .report-card h3 {
     font-size: 26px;
     font-weight: 800;
     color: var(--white);
     margin-bottom: 14px;
 }

 .report-card>div>p {
     font-size: 15.5px;
     color: rgba(255, 255, 255, .7);
     line-height: 1.75;
     margin-bottom: 8px;
 }

 .report-list {
     list-style: none;
     margin: 16px 0;
 }

 .report-list li {
     font-size: 14.5px;
     color: rgba(255, 255, 255, .75);
     padding: 5px 0;
     display: flex;
     align-items: center;
     gap: 9px;
 }

 .report-list li::before {
     content: '→';
     color: #6aa0ff;
     font-weight: 700;
 }

 /* ── Timeline ── */
 .timeline {
     position: relative;
     padding-left: 32px;
 }

 .timeline::before {
     content: '';
     position: absolute;
     left: 10px;
     top: 0;
     bottom: 0;
     width: 2px;
     background: linear-gradient(to bottom, var(--blue), transparent);
     border-radius: 2px;
 }

 .tl-item {
     position: relative;
     margin-bottom: 32px;
 }

 .tl-item::before {
     content: '';
     position: absolute;
     left: -26px;
     top: 6px;
     width: 14px;
     height: 14px;
     background: var(--blue);
     border: 3px solid var(--white);
     border-radius: 50%;
     box-shadow: 0 0 0 2px var(--blue);
 }

 .tl-item h4 {
     font-size: 16px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 7px;
 }

 .tl-item p {
     font-size: 14.5px;
     color: var(--gray-500);
     line-height: 1.7;
 }

 /* ── FAQs ── */
 .faq-list {
     display: flex;
     flex-direction: column;
     gap: 14px;
 }

 .faq-item {
     background: var(--white);
     border: 1px solid var(--gray-300);
     border-radius: 14px;
     overflow: hidden;
     box-shadow: 0 2px 10px rgba(30, 94, 255, .04);
 }

 .faq-q {
     width: 100%;
     background: none;
     border: none;
     text-align: left;
     padding: 22px 24px;
     font-family: 'DM Sans', sans-serif;
     font-size: 15.5px;
     font-weight: 700;
     color: var(--navy);
     cursor: pointer;
     display: flex;
     justify-content: space-between;
     align-items: center;
     gap: 12px;
     transition: background .18s;
 }

 .faq-q:hover {
     background: var(--light-blue);
 }

 .faq-arrow {
     width: 28px;
     height: 28px;
     background: var(--light-blue);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 13px;
     color: var(--blue);
     flex-shrink: 0;
     transition: transform .25s;
 }

 .faq-item.open .faq-arrow {
     transform: rotate(180deg);
 }

 .faq-a {
     max-height: 0;
     overflow: hidden;
     transition: max-height .35s ease;
 }

 .faq-item.open .faq-a {
     max-height: 400px;
 }

 .faq-a-inner {
     padding: 16px 24px 22px;
     font-size: 14.5px;
     color: var(--gray-500);
     line-height: 1.75;
     border-top: 1px solid var(--gray-100);
 }

 /* ── Update Card ── */
 .update-card {
     background: var(--light-blue);
     border: 1px solid rgba(30, 94, 255, .2);
     border-radius: 20px;
     padding: 36px 40px;
     display: flex;
     align-items: flex-start;
     gap: 24px;
 }

 .uc-icon {
     width: 56px;
     height: 56px;
     background: var(--blue);
     border-radius: 14px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 26px;
     flex-shrink: 0;
 }

 .update-card h3 {
     font-size: 20px;
     font-weight: 700;
     color: var(--navy);
     margin-bottom: 10px;
 }

 .update-card p {
     font-size: 15px;
     color: var(--gray-500);
     line-height: 1.75;
     margin-bottom: 10px;
 }

 /* ── CTA ── */
 .cta-section {
     background: linear-gradient(135deg, var(--navy) 0%, #0e2554 100%);
     padding: 100px 24px;
     text-align: center;
     position: relative;
     overflow: hidden;
 }

 .cta-section::before {
     content: '';
     position: absolute;
     inset: 0;
     background: radial-gradient(ellipse 70% 50% at 50% 100%, rgba(30, 94, 255, .3) 0%, transparent 70%);
     pointer-events: none;
 }

 .cta-section h2 {
     font-size: clamp(28px, 4vw, 48px);
     font-weight: 800;
     color: var(--white);
     margin-bottom: 20px;
     letter-spacing: -.02em;
     max-width: 740px;
     margin-left: auto;
     margin-right: auto;
 }

 .cta-section p {
     font-size: 17px;
     color: rgba(255, 255, 255, .68);
     max-width: 600px;
     margin: 0 auto 40px;
     line-height: 1.75;
 }

 .cta-buttons {
     display: flex;
     justify-content: center;
     gap: 14px;
     flex-wrap: wrap;
 }

 /* ── Buttons ── */
 .btn {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     padding: 14px 28px;
     border-radius: 12px;
     font-family: 'DM Sans', sans-serif;
     font-size: 15px;
     font-weight: 700;
     cursor: pointer;
     border: none;
     text-decoration: none;
     transition: transform .18s, box-shadow .18s, background .18s;
 }

 .btn:hover {
     transform: translateY(-2px);
 }

 .btn-primary {
     background: var(--blue);
     color: var(--white);
     box-shadow: 0 4px 20px rgba(30, 94, 255, .35);
 }

 .btn-primary:hover {
     background: var(--blue-mid);
     box-shadow: 0 8px 32px rgba(30, 94, 255, .5);
 }

 .btn-outline {
     background: rgba(255, 255, 255, .08);
     color: var(--white);
     border: 1.5px solid rgba(255, 255, 255, .25);
     backdrop-filter: blur(8px);
 }

 .btn-outline:hover {
     background: rgba(255, 255, 255, .16);
 }

 /* ── Divider ── */
 .divider {
     border: none;
     border-top: 1px solid var(--gray-100);
     margin: 0;
 }

 /* ── Scroll Reveal ── */
 .reveal {
     opacity: 0;
     transform: translateY(28px);
     transition: opacity .6s ease, transform .6s ease;
 }

 .reveal.visible {
     opacity: 1;
     transform: translateY(0);
 }

 /* ── Responsive ── */
 @media (max-width: 1024px) {
     .sidebar {
         display: none;
     }

     .sec-inner {
         padding: 56px 20px;
     }
 }

 @media (max-width: 768px) {
     .report-card {
         grid-template-columns: 1fr;
     }

     .glass-card {
         padding: 28px 22px;
     }

     .update-card {
         flex-direction: column;
     }

     .sec-inner {
         padding: 48px 16px;
     }
 }

 @media (max-width: 480px) {

     .icon-grid,
     .feature-grid,
     .warning-grid,
     .conduct-grid {
         grid-template-columns: 1fr;
     }

     .trust-icons-row {
         flex-direction: column;
     }

     .report-card {
         padding: 28px 22px;
     }
 }