 :root {
     --navy: #0d244d;
     --navy-2: #0a1d3d;
     --blue: #003e9d;
     --blue-lt: #1a55c0;
     --blue-pale: #e8f0fe;
     --white: #ffffff;
     --g400: #94a3b8;
     --g500: #64748b;
     --green: #22c55e;
     --amber: #f59e0b;
 }


 /* ── FOOTER WRAPPER ─────────────────────────────── */
 .site-footer {
     background: var(--navy);
     position: relative;
     overflow: hidden;
 }

 /* top blue accent line */
 .site-footer::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     height: 3px;
     background: linear-gradient(90deg, var(--blue) 0%, var(--blue-lt) 50%, transparent 100%);
 }



 /* ── MAIN FOOTER BODY ───────────────────────────── */
 .footer-body {
     padding: 64px 0 48px;
     position: relative;
     z-index: 1;
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
 }

 /* Brand block */
 .footer-brand {
     font-family: 'Syne', sans-serif;
     font-size: 26px;
     font-weight: 800;
     letter-spacing: -0.5px;
     color: var(--white);
     text-decoration: none;
     display: inline-block;
     margin-bottom: 14px;
 }

 .footer-brand span {
     color: var(--blue-lt);
 }

 .footer-tagline {
     font-size: 13px;
     color: rgba(255, 255, 255, 0.4);
     line-height: 1.6;
     max-width: 280px;
     margin-bottom: 24px;
 }

 /* live badge */
 .footer-live {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     font-size: 12px;
     font-weight: 600;
     color: var(--green);
     background: rgba(34, 197, 94, 0.08);
     border: 1px solid rgba(34, 197, 94, 0.18);
     border-radius: 50px;
     padding: 5px 14px;
 }

 .site-footer .live-dot {
     width: 7px;
     height: 7px;
     background: var(--green);
     border-radius: 50%;
     animation: blink 1.6s infinite;
 }

 @keyframes blink {

     0%,
     100% {
         opacity: 1;
     }

     50% {
         opacity: 0.25;
     }
 }

 /* ── NAV LINKS ──────────────────────────────────── */
 .footer-nav-heading {
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 2.5px;
     text-transform: uppercase;
     color: rgba(255, 255, 255, 0.35);
     margin-bottom: 20px;
 }

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

 .footer-nav li {
     margin-bottom: 12px;
 }

 .footer-nav a {
     font-size: 14px;
     font-weight: 500;
     color: rgba(255, 255, 255, 0.6);
     text-decoration: none;
     display: flex;
     align-items: center;
     gap: 8px;
     transition: color 0.2s, gap 0.2s;
 }

 .footer-nav a::before {
     content: '';
     display: inline-block;
     width: 14px;
     height: 1.5px;
     background: rgba(255, 255, 255, 0.2);
     border-radius: 2px;
     flex-shrink: 0;
     transition: width 0.2s, background 0.2s;
 }

 .footer-nav a:hover {
     color: var(--white);
     gap: 12px;
 }

 .footer-nav a:hover::before {
     width: 20px;
     background: var(--blue-lt);
 }

 /* ── CONTACT BLOCK ──────────────────────────────── */
 .footer-contact-heading {
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 2.5px;
     text-transform: uppercase;
     color: rgba(255, 255, 255, 0.35);
     margin-bottom: 20px;
 }

 .footer-contact-item {
     display: flex;
     align-items: flex-start;
     gap: 12px;
     margin-bottom: 16px;
     text-decoration: none;
 }

 .footer-contact-item:last-child {
     margin-bottom: 0;
 }

 .fci-icon {
     width: 34px;
     height: 34px;
     border-radius: 8px;
     background: rgba(255, 255, 255, 0.06);
     border: 1px solid rgba(255, 255, 255, 0.09);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 14px;
     color: rgba(255, 255, 255, 0.5);
     flex-shrink: 0;
     transition: background 0.2s, color 0.2s;
 }

 .footer-contact-item:hover .fci-icon {
     background: var(--blue);
     color: var(--white);
     border-color: var(--blue);
 }

.site-footer .fci-label {
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 1.5px;
     text-transform: uppercase;
     color: rgba(255, 255, 255, 0.3);
     margin-bottom: 2px;
 }

.site-footer .fci-value {
     font-size: 13px;
     font-weight: 600;
     color: rgba(255, 255, 255, 0.65);
     transition: color 0.2s;
     word-break: break-all;
 }

 .footer-contact-item:hover .fci-value {
     color: var(--white);
 }

 /* ── SEO TEXT STRIP ─────────────────────────────── */
 .footer-seo {
     background: rgba(0, 0, 0, 0.15);
     border-top: 1px solid rgba(255, 255, 255, 0.05);
     border-bottom: 1px solid rgba(255, 255, 255, 0.05);
     padding: 24px 0;
     position: relative;
     z-index: 1;
 }

 .footer-seo p {
     font-size: 13px;
     color: rgba(255, 255, 255, 0.35);
     line-height: 1.7;
     margin: 0;
     max-width: 760px;
 }

 .footer-seo strong {
     color: rgba(255, 255, 255, 0.55);
     font-weight: 600;
 }

 /* ── BOTTOM BAR ─────────────────────────────────── */
 .footer-bottom {
     padding: 22px 0;
     position: relative;
     z-index: 1;
 }

 .footer-copy {
     font-size: 12px;
     color: rgba(255, 255, 255, 0.25);
     margin: 0;
 }

 .footer-badges {
     display: flex;
     align-items: center;
     gap: 8px;
     flex-wrap: wrap;
 }

 .footer-badge {
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 1.5px;
     text-transform: uppercase;
     color: rgba(255, 255, 255, 0.3);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 4px;
     padding: 3px 10px;
 }

 /* ── DIVIDER ────────────────────────────────────── */
 .footer-rule {
     border: none;
     border-top: 1px solid rgba(255, 255, 255, 0.06);
     margin: 0;
 }

 @media (max-width: 767px) {
     .footer-body {
         padding: 48px 0 36px;
     }

     .footer-watermark {
         display: none;
     }
 }