:root {
    --matrix-primary: #3b82f6;
    --matrix-primary-rgb: 59, 130, 246;
    --matrix-radius: 12px;
}

/* Block: headers_id */
.fw-black { font-weight: 900; }
.h6-header nav a { opacity: 0.5; transition: 0.3s; }
.h6-header nav a:hover { opacity: 1; color: var(--matrix-primary) !important; }

/* Block: heroes_id */
.hero-s7-deco { width: 40px; height: 2px; background: #000; }
.hero-s7-h1 { font-weight: 200; font-size: 3.5rem; letter-spacing: 5px; color: #000; }
.hero-s7-p { max-width: 700px; color: #64748b; font-size: 1.2rem; line-height: 2; font-weight: 300; }
.btn-s7-main { border: 1px solid #000; color: #000; padding: 15px 50px; text-decoration: none; text-transform: uppercase; letter-spacing: 2px; transition: 0.3s; }
.btn-s7-main:hover { background: #000; color: #fff; }

/* Block: footers_id */
.f-s3-icon { width: 60px; height: 60px; background: var(--matrix-primary); color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; }
.f-s3-link { color: #1e293b; text-decoration: none; font-weight: 600; }
.f-s3-link:hover { color: var(--matrix-primary); }

/* Block: about_id */
.a7-brand-pillar { background: var(--matrix-primary); min-height: 300px; }
.a7-text-content { line-height: 2.1; font-size: 1.1rem; color: #475569; border-left: 1px solid #eee; padding-left: 30px; }
@media (max-width: 991px) { .a7-text-content { border-left: 0; padding-left: 0; } }

/* Block: stats_id */
.s-s5-accent { color: var(--matrix-primary); font-size: 2.5rem; }
.s-s5-img-container { position: relative; }
.s-s5-img-container::after { content: ''; position: absolute; top: -10px; right: -10px; width: 100px; height: 100px; border: 5px solid var(--matrix-primary); border-left: 0; border-bottom: 0; border-radius: 0 var(--matrix-radius) 0 0; z-index: -1; }

/* Block: mission_id */
.m-s4-val { font-size: 2.5rem; font-weight: 900; color: var(--matrix-primary); margin-bottom: 5px; letter-spacing: -1px; }
.m-s4-grid > div { min-width: 120px; }

/* Block: why_us_id */
.w-s4-box { border-radius: var(--matrix-radius); }
.w-s4-box:hover { border-color: var(--matrix-primary) !important; background: #fafafa; }
.w-s4-num { font-size: 1.5rem; font-weight: 900; color: var(--matrix-primary); opacity: 0.3; }

/* Block: departments_id */
.d-s6-accent { color: #1e293b; letter-spacing: -2px; }
.d-s6-btn { background: var(--matrix-primary); color: #fff; text-decoration: none; font-weight: 800; text-transform: uppercase; transition: 0.3s; display: inline-block; }
.d-s6-btn:hover { opacity: 0.9; transform: scale(1.05); color: #fff; }

/* Block: security_id */
.sec-s4-num { width: 64px; height: 64px; background: var(--matrix-primary); color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 1.25rem; box-shadow: 0 8px 16px rgba(0,0,0,0.1); }
.sec-s4-row::before { content: ''; position: absolute; top: 32px; left: 15%; right: 15%; height: 2px; background: #eee; z-index: 0; }
@media (max-width: 767px) { .sec-s4-row::before { display: none; } }

/* Block: judge_id */
.j-s3-box { border-radius: var(--matrix-radius); }
.j-s3-box:hover { box-shadow: 0 15px 30px rgba(0,0,0,0.08) !important; border-top: 3px solid var(--matrix-primary) !important; }
.j-s3-avatar { width: 40px; height: 40px; object-fit: cover; }
.j-s3-section .border-primary { border-color: var(--matrix-primary) !important; }

/* Block: app_id */
.app-s4 i { color: var(--matrix-primary) !important; }
.app-s4 .btn-primary { background: var(--matrix-primary); border-color: var(--matrix-primary); }

/* Block: news_id */
.n-s2-img { width: 180px; height: 110px; }
.n-s2-item:hover { transform: translateX(8px); border-color: var(--matrix-primary) !important; }
@media (max-width: 576px) { .n-s2-img { width: 100px; height: 75px; } }

/* Block: faq_id */
.faq-icon-s7 { font-size: 32px; color: var(--matrix-primary); }
.faq-s7-wrapper h5 { letter-spacing: -0.5px; }

/* Block: update_id */
/* Style 5 - Cross Layout */
.up-s5 .bg-light { background-color: #f8fafc !important; border: 1px solid transparent !important; }
.up-s5 .border-light { border-color: #e2e8f0 !important; }
.up-s5 h5 { font-size: 1.15rem; color: #0f172a !important; }
.up-s5 p { color: #475569 !important; }
.up-s5 .col-lg-6 > div { transition: 0.3s; }
.up-s5 .col-lg-6 > div:hover { background: #fff !important; border-color: var(--matrix-primary) !important; box-shadow: 0 8px 20px rgba(0,0,0,0.05); }

