 :root {
   --primary1: #184c8f;
   --primary2: #1e3a70;
   --primary3: #1e3a70;
   --primary4: #0c4a94;
   --light-bg: #f8fafc;
   --soft-bg: #f5f7fa;
   --dark-text: #1b2b44;
   --muted: #6b7280;
   --white: #ffffff;
   --border: #e5e7eb;
 }

 * {
   box-sizing: border-box;
   margin: 0;
   padding: 0;
   scrollbar-width: thin;
   scrollbar-color: var(--primary1) #f8fafc;
 }

 ::-webkit-scrollbar {
   width: 10px;
 }

 ::-webkit-scrollbar-track {
   background: var(--primary1);
 }

 ::-webkit-scrollbar-thumb {
   background: linear-gradient(180deg, var(--scroll-thumb), var(--white));
   border-radius: 12px;
   border: 2px solid var(--scroll-thumb-border);
 }

 ::-webkit-scrollbar-thumb:hover {
   background: var(--scroll-thumb-hover);
 }

 ::-webkit-scrollbar-corner {
   background: var(--scroll-corner);
 }

 .btn-primary {
   background: var(--primary3);
   color: #fff;
   border: 1px solid var(--light-bg);
   outline: none;
   box-shadow: none;
   transition: background-color 0.25s ease, color 0.25s ease;
 }

 body {
   font-family: 'Inter', sans-serif;
   color: var(--dark-text);
   overflow-x: hidden;
   background: #ffffff;
   width: 100%;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
   font-family: 'Rajdhani', sans-serif;
 }

 .dropdown-menu[data-bs-popper] {
   margin-top: 0 !important;
 }

 /* TOP BAR */
 .topbar {
   background: var(--primary1);
   color: #FFF;
   font-size: 15px;
   padding: 10px 0;
   border-bottom: 1px solid var(--border);
 }

 .topbar a {
   color: #FFF;
   text-decoration: none;
 }

 .topbar a:hover {
   color: #FFF;
 }

 .topbar .sep {
   margin: 0 12px;
   opacity: .4;
 }

 /* NAVBAR */
 .navbar {
   background: #fff;
   box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
   padding: 0;
   border-bottom: 1px solid #eef2f7;
 }

 .navbar-brand {
   font-family: 'Rajdhani', sans-serif;
   font-size: 1.5rem;
   font-weight: 700;
   color: var(--primary1) !important;
   letter-spacing: .5px;
 }

 .navbar-brand span {
   color: var(--primary1);
 }

 .nav-link {
   font-weight: 600;
   font-size: 14px;
   color: var(--dark-text) !important;
   padding: 24px 14px !important;
   letter-spacing: .3px;
   transition: color .2s;
   text-transform: uppercase;
 }

 .nav-link:hover, .nav-link.active {
    color: var(--primary1) !important;
    /* background: #e8f4fc; */
    
}

 .dropdown-menu {
   border-top: none;
   box-shadow: 0 18px 30px rgba(15, 23, 42, 0.08);
   border-radius: 0;
   padding: 10px;
   min-width: 220px;
   background: #fff;
   margin-top: 0;
 }

.dropdown-item {
    border-radius: 0;
    font-size: 14.5px;
    padding: 10px 14px;
    color: var(--dark-text);
    font-weight: 600;
    display: flex;
    align-items: center;
}

 .dropdown-item:hover {
   background: var(--light-bg);
   color: var(--primary1);
 }

 .dropdown-item small {
   display: block;
   font-weight: 400;
   color: var(--muted);
   font-size: 11.5px;
   margin-top: 2px;
 }

 .dropdown-item .icons {
    background: var(--primary1);
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    margin: 0 10px 0 0;
}
 .dropdown-item i {
    margin-right: 8px;
    font-size: 16px;
 }

 .mega-menu {
   min-width: 100%;
   display: none;
 }

 .mega-menu .options{
   display: grid !important;
   grid-template-columns: 1fr 1fr;
   gap: 4px;
   right: 0;
   left: auto;
 }

 .mega-menu-3 {
   grid-template-columns: 1fr 1fr 1fr;
   min-width: 900px;
 }

 .navbar-toggler {
   border: none;
 }

 .navbar-toggler:focus {
   box-shadow: none;
 }

 /* Desktop hover dropdown */
 @media (min-width: 992px) {
   .nav-item.dropdown:hover>.dropdown-menu {
     display: block;
   }

   .nav-item.dropdown:hover>.mega-menu {
    
     right: 0;
     left: auto;
   }

   .navbar-nav {
     position: relative;
   }

   .services-dropdown,
   .industries-dropdown,
   .technologies-dropdown {
     position: static;
   }
 }



/* ================================================================
   WHATSAPP FLOAT BUTTON (LEFT SIDE)
   ================================================================ */

.wa-float{
  position:fixed;
  left:20px;
  bottom:24px;
  width:40px;
  height:40px;
  border-radius:50%;
  
  display:flex;
  align-items:center;
  justify-content:center;

  background:linear-gradient(135deg,#25D366,#1ebe5d);
  color:#fff;
  font-size:26px;

  box-shadow:0 10px 30px rgba(0,0,0,0.4);
  z-index:999;

  transition:all 0.3s ease;
}

/* Hover */
.wa-float:hover{
  transform:translateY(-4px) scale(1.08);
  box-shadow:0 15px 40px rgba(37,211,102,0.5);
}

/* Pulse effect */
.wa-float::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:rgba(37,211,102,0.5);
  animation:waPulse 2s infinite;
  z-index:-1;
}

@keyframes waPulse{
  0%{transform:scale(1);opacity:0.7}
  70%{transform:scale(1.6);opacity:0}
  100%{opacity:0}
}

/* Icon animation */
.wa-float i{
  transition:transform 0.3s ease;
}

.wa-float:hover i{
  transform:rotate(-10deg) scale(1.1);
}

/* Mobile adjust */
@media(max-width:768px){
  .wa-float{
    width:50px;
    height:50px;
    font-size:22px;
    left:14px;
    bottom:18px;
  }
}

 /* FOOTER */
 footer {
   background: #132a60;
   color: rgba(255, 255, 255, .7);
   padding: 60px 0 0;
   width: 100%;
   overflow-x: hidden;
 }

 footer h5 {
   color: #fff;
   font-size: 1rem;
   font-weight: 700;
   letter-spacing: .5px;
   margin-bottom: 20px;
   padding-bottom: 10px;
   border-bottom: 2px solid rgba(255, 255, 255, .08);
   display: inline-block;
 }

 footer ul {
   list-style: none;
   padding: 0;
 }

 footer ul li {
   margin-bottom: 9px;
 }

 footer ul li a {
   color: rgba(255, 255, 255, .65);
   text-decoration: none;
   font-size: 13.5px;
   transition: color .2s;
 }

 footer ul li a:hover {
   color: #fff;
 }

 footer p {
   font-size: 13.5px;
   line-height: 1.8;
 }

 .footer-brand {
   font-family: 'Rajdhani', sans-serif;
   font-size: 1.5rem;
   font-weight: 700;
   color: #fff;
   margin-bottom: 14px;
 }

 .footer-brand span {
   color: #93c5fd;
 }

 .footer-social a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 36px;
   height: 36px;
   border-radius: 0;
   background: rgba(255, 255, 255, .08);
   color: rgba(255, 255, 255, .7);
   margin-right: 8px;
   text-decoration: none;
   font-size: 16px;
   transition: all .2s;
 }

 .footer-social a:hover {
   background: var(--primary1);
   color: #fff;
 }

 .footer-bottom {
   background: rgba(0, 0, 0, .15);
   margin-top: 40px;
   padding: 18px 0;
   font-size: 13px;
   color: rgba(255, 255, 255, .45);
 }

 .footer-bottom a {
   color: rgba(255, 255, 255, .45);
   text-decoration: none;
 }

 .footer-bottom a:hover {
   color: #fff;
 }

 /* STATS BAR */
 .stats-bar {
   background: #fff;
   border-bottom: 1px solid var(--border);
 }

 .stat-item {
   padding: 30px 20px;
   text-align: center;
   border-right: 1px solid var(--border);
 }

 .stat-item:last-child {
   border-right: none;
 }

 .stat-num {
   font-family: 'Rajdhani', sans-serif;
   font-size: 2.4rem;
   font-weight: 700;
   color: var(--primary1);
   line-height: 1;
 }

 .stat-label {
   font-size: 12.5px;
   color: var(--muted);
   font-weight: 500;
   margin-top: 4px;
 }

 /* ABOUT STRIP */
 .about-strip {
   padding: 80px 0;
   background: #fff;
 }

 .about-img-wrap {
   border-radius: 0;
   overflow: hidden;
   background: #f8fafc;
   border: 1px solid #eef2f7;
   height: 380px;
   display: flex;
   align-items: center;
   justify-content: center;
   position: relative;
 }

 .about-img-wrap i {
   font-size: 100px;
   color: #94a3b8;
 }

 .about-badge {
   position: absolute;
   bottom: 24px;
   left: 24px;
   background: var(--primary1);
   color: #fff;
   border-radius: 0;
   padding: 14px 20px;
 }

 .about-badge .num {
   font-family: 'Rajdhani', sans-serif;
   font-size: 2rem;
   font-weight: 700;
 }

 .about-badge .lbl {
   font-size: 11px;
   font-weight: 600;
   letter-spacing: 1px;
 }

 .feature-list {
   list-style: none;
   padding: 0;
   margin: 0;
 }

 .feature-list li {
   display: flex;
   align-items: flex-start;
   gap: 12px;
   padding: 12px 0;
   border-bottom: 1px solid var(--border);
   font-size: 14.5px;
   color: var(--dark-text);
 }

 .feature-list li i {
   color: var(--primary1);
   font-size: 18px;
   margin-top: 2px;
   flex-shrink: 0;
 }

 /* CONSULTING */
 .consulting-section {
   background: #f8fafc;
   padding: 80px 0;
 }

 .consulting-card {
   background: #fff;
   border-radius: 0;
   border: 1px solid #eef2f7;
   padding: 28px;
   transition: all .3s;
   height: 100%;
 }

 .consulting-card:hover {
   border-color: #dbe2ea;
   box-shadow: 0 10px 30px rgba(15, 23, 42, .05);
   transform: translateY(-4px);
 }

 .cc-icon {
   width: 50px;
   height: 50px;
   border-radius: 10px;
   background: #f5f7fa;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 20px;
   color: var(--primary1);
   margin-bottom: 16px;
   border: 1px solid #eef2f7;
 }

 .consulting-card h5 {
   font-size: 1.05rem;
   font-weight: 700;
   color: var(--primary1);
   margin-bottom: 10px;
 }

 .consulting-card p {
   font-size: 13.5px;
   color: var(--muted);
   line-height: 1.65;
   margin: 0;
 }


 /* responsive */
 @media(max-width:991px) {

   .mega-menu,
   .mega-menu-3 {
     min-width: 260px;
   }

   .mega-menu.show {
     display: block !important;
   }
 }

 @media(max-width:767px) {
   .carousel-slide {
     height: 500px;
   }

   .slide-title {
     font-size: 1.8rem;
   }

   .mega-menu,
   .mega-menu-3 {
     min-width: 260px;
   }

   .newsletter-strip input {
     width: 200px;
   }

   .split-img-inner {
     min-height: 200px;
   }

   .nav-link {
     padding: 12px 0 !important;
   }

   .navbar-collapse {
     padding: 10px 0 16px;
   }
 }


 .main-content-wrapper {
   position: relative;
   min-height: 60vh;
   /* ensures space */
   width: 100%;
   overflow-x: hidden;
 }

 .page-preloader {
   position: absolute;
   /* 🔥 key change */
   top: 0;
   left: 0;
   width: 100%;
   overflow-x: hidden;
   height: calc(100vh - 100px);
   background: rgba(255, 255, 255, 0.92);
   backdrop-filter: blur(4px);
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 20;
   opacity: 0;
   visibility: hidden;
   transition: opacity 0.35s ease, visibility 0.35s ease;
 }

 .page-preloader.show {
   opacity: 1;
   visibility: visible;
 }

 /* Container */
 .cookie-consent {
   position: fixed;
   bottom: 0;
   left: 0;
   width: 100%;
   overflow-x: hidden;
   background-color: #ffffff;
   /* light gray-lilac */
   border-top: 1px solid #999;
   /* subtle top border */
   box-shadow: 0 -3px 8px rgba(157, 106, 241, 0.1);
   z-index: 999999;
   font-family: 'Inter', sans-serif;
   font-size: 14px;
   color: #333;
   padding: 16px 20px;
   transition: transform 0.3s ease, opacity 0.3s ease;
   display: flex;
   justify-content: center;
 }

 /* Hide when dismissed */
 .cookie-consent.hide {
   transform: translateY(100%);
   opacity: 0;
   pointer-events: none;
 }

 .cookie-content {
   max-width: 1200px;
   width: 100%;
   display: flex;
   align-items: center;
   gap: 15px;
 }

 .cookie-content p {
   flex: 1 1 auto;
   margin: 0;
   line-height: 1.5;
   color: #444;
 }

 .cookie-content a {
   color: var(--primary1);
   /* muted purple */
   text-decoration: underline;
 }



 .cookie-actions {
   flex-shrink: 0;
   display: flex;
   align-items: center;
   gap: 10px;
 }

 /* Buttons */
 .cookie-actions.btn {
   font-weight: 600;
   border-radius: 4px;
   padding: 8px 16px;
   cursor: pointer;
   border: none;
   font-size: 14px;
   transition: background-color 0.25s ease, color 0.25s ease;
 }

 .cookie-actions.btn-primary {
   background-color: var(--primary1);
   color: #fff;
 }



 .cookie-actions.btn-link {
   background: transparent;
   color: #999;
   font-size: 22px;
   line-height: 1;
   padding: 0 6px;
   border: none;
   font-weight: 700;
 }

 .btn-link:hover {
   color: var(--primary12);
 }

 /* Responsive */
 @media (max-width: 768px) {
   .cookie-content {
     flex-direction: column;
     align-items: stretch;
     gap: 12px;
   }

   .cookie-content p {
     font-size: 13px;
   }

   .cookie-actions {
     justify-content: flex-end;
   }
 }

/* Banner */
/* Shared page banner */
.page-banner{
  background: linear-gradient(120deg,var(--primary1),var(--primary2));
  color: var(--white);
}

.page-banner .text-secondary{
  color: #bccbd8 !important;
}

.section-kicker{
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 13px;
  opacity: .85;
}

/* Shared sections */
.section-title{
  font-weight: 700;
  color: var(--primary1);
  margin-bottom: 15px;
}

.soft-bg{
  background: var(--soft-bg);
}

/* Shared content cards */
.content-card{
  background: var(--white);
  padding: 35px;
  border-radius: 14px;
  border: 1px solid var(--border);
  box-shadow: 0 10px 30px rgba(0,0,0,0.04);
  height: 100%;
}

.content-card h4{
  color: var(--primary1);
  margin-bottom: 15px;
  font-weight: 600;
}

.content-card p{
  color: var(--muted);
  line-height: 1.7;
}

@media (max-width:768px){
  .content-card{
    padding: 25px;
  }
}


 /* ═════════════════════════════════════
   REVEAL ANIMATION SYSTEM
═════════════════════════════════════ */

 /* BASE */
 .reveal,
 .reveal-up,
 .reveal-down,
 .reveal-left,
 .reveal-right,
 .reveal-scale,
 .reveal-fade,
 .reveal-zoom,
 .reveal-rotate,
 .reveal-blur {
   opacity: 0;
   will-change: transform, opacity, filter;
   transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
 }

 /* VISIBLE STATE */
 .is-visible {
   opacity: 1 !important;
   transform: none !important;
   filter: blur(0) !important;
 }

 /* ───────── TYPES ───────── */

 /* UP (default) */
 .reveal-up {
   transform: translateY(40px);
 }

 /* DOWN */
 .reveal-down {
   transform: translateY(-40px);
 }

 /* LEFT */
 .reveal-left {
   transform: translateX(-60px);
 }

 /* RIGHT */
 .reveal-right {
   transform: translateX(60px);
 }

 /* SCALE */
 .reveal-scale {
   transform: scale(0.9);
 }

 /* FADE */
 .reveal-fade {
   transition: opacity 0.7s ease;
 }

 /* ZOOM */
 .reveal-zoom {
   transform: scale(0.85) translateY(30px);
 }

 /* ROTATE */
 .reveal-rotate {
   transform: rotate(-5deg) scale(0.95);
 }

 /* BLUR */
 .reveal-blur {
   transform: translateY(20px);
   filter: blur(8px);
 }

 /* ───────── STAGGER DELAYS ───────── */
 .delay-1 {
   transition-delay: 0.2s;
 }

 .delay-2 {
   transition-delay: 0.4s;
 }

 .delay-3 {
   transition-delay: 0.6s;
 }

 .delay-4 {
   transition-delay: 0.8s;
 }

 .delay-5 {
   transition-delay: 1s;
 }

 .delay-6 {
   transition-delay: 1.2s;
 }

 /* ───────── MOBILE / ACCESSIBILITY ───────── */
 @media (prefers-reduced-motion: reduce) {

   .reveal,
   .reveal-up,
   .reveal-down,
   .reveal-left,
   .reveal-right,
   .reveal-scale,
   .reveal-fade,
   .reveal-zoom,
   .reveal-rotate,
   .reveal-blur {
     opacity: 1;
     transform: none;
     filter: none;
     transition: none;
   }
 }


 /* ═════════════════════════════════════
   CTA STRIP
═════════════════════════════════════ */

 .cta-strip {
   padding: 70px 0;
   background: linear-gradient(135deg,
       var(--primary1) 0%,
       var(--primary2) 60%,
       var(--primary1) 100%);
   color: var(--white);
   position: relative;
   overflow: hidden;
 }

 /* subtle grid overlay */
 .cta-strip::before {
   content: "";
   position: absolute;
   inset: 0;
   background-image:
     linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px),
     linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
   background-size: 50px 50px;
   pointer-events: none;
 }

 .cta-strip h2 {
   font-family: 'Rajdhani', sans-serif;
   font-size: 2.2rem;
   font-weight: 700;
   color: var(--white);
   margin-bottom: 10px;
 }

 .cta-strip p {
   color: rgba(255, 255, 255, 0.75);
   font-size: 15px;
   margin-bottom: 6px;
 }

 /* phone number */
 .cta-strip .fs-4 {
   font-size: 1.4rem !important;
   color: var(--white);
 }

 /* buttons */
 .btn-cta-white {
   background: var(--white);
   color: var(--primary1);
   padding: 12px 26px;
   font-weight: 700;
   font-size: 14px;
   border: none;
   text-decoration: none;
   display: inline-block;
   transition: all 0.25s ease;
 }

 .btn-cta-white:hover {
   background: var(--primary1);
   color: var(--white);
   transform: translateY(-2px);
 }

 /* reuse your outline button but enhance */
 .btn-outline-hero {
   border: 1.5px solid rgba(255, 255, 255, 0.4);
   color: var(--white);
   padding: 12px 24px;
   font-weight: 600;
   text-decoration: none;
   transition: all 0.25s ease;
 }

 .btn-outline-hero:hover {
   background: var(--white);
   color: var(--primary1);
   border-color: var(--white);
 }


 /* ═════════════════════════════════════
   NEWSLETTER STRIP
═════════════════════════════════════ */

 .newsletter-strip {
   background: var(--light-bg);
   padding: 40px 0;
   border-top: 1px solid var(--border);
   border-bottom: 1px solid var(--border);
 }

 .newsletter-strip h5 {
   font-family: 'Rajdhani', sans-serif;
   font-size: 1.2rem;
   color: var(--primary1);
   font-weight: 700;
 }

 .newsletter-strip p {
   font-size: 13.5px;
   color: var(--muted);
 }

 /* input + button (if you enable it later) */
 .newsletter-strip input {
   border: 1px solid var(--border);
   border-right: none;
   padding: 11px 18px;
   font-size: 14px;
   outline: none;
   background: var(--white);
   width: 260px;
 }

 .newsletter-strip button {
   background: var(--primary1);
   color: var(--white);
   border: none;
   padding: 11px 22px;
   font-weight: 600;
   font-size: 14px;
   cursor: pointer;
   transition: all 0.25s ease;
 }

 .newsletter-strip button:hover {
   background: var(--primary12);
 }


 /* ═════════════════════════════════════
   RESPONSIVE
═════════════════════════════════════ */

 @media (max-width: 991px) {
   .cta-strip h2 {
     font-size: 1.8rem;
   }

   .cta-strip .btn-cta-white,
   .cta-strip .btn-outline-hero {
     display: block;
     width: 100%;
     margin-bottom: 10px;
     text-align: center;
   }
   
 }

 @media (max-width: 767px) {
   .newsletter-strip input {
     width: 100%;
   }
   .mega-menu .options {
    grid-template-columns: 1fr;
}

   .newsletter-strip .d-flex {
     flex-direction: column;
     gap: 10px;
   }
 }


 /* BUTTON BASE */
 .btn-quote {
   position: relative;
   text-align: center;
   gap: 10px;
   padding: 10px 22px;
   font-size: 14px;
   font-weight: 600;
   color: var(--primary1);
   text-decoration: none;
   border-radius: 6px;
   overflow: hidden;
   background: var(--white);
   margin-left: auto;
   z-index: 1;
   min-width: 150px;
   transition: all 0.5s ease-in-out;
 }

 /* 🔥 RUNNING GRADIENT BORDER */
 .btn-quote::before {
   content: "";
   position: absolute;
   inset: -2px;
   background: linear-gradient(270deg, #7a4acc, #3b82f6, #ec4899, #7a4acc);
   background-size: 400% 400%;
   animation: borderRun 6s linear infinite;
   z-index: -2;
   border-radius: 8px;
 }

 /* INNER BACKGROUND */
 .btn-quote::after {
   content: "";
   position: absolute;
   inset: 2px;
   background: var(--white);
   border-radius: 5px;
   z-index: -1;
 }


 /* TEXT */
 .btn-text {
   position: relative;
   z-index: 2;
 }

 /* ICON (HIDDEN INITIALLY) */
 .btn-icon {
   display: inline-block;
   transition: all 0.5s ease-in-out;
 }

 /* HOVER EFFECT */



 /* SHOW ICON ON HOVER */
 .btn-quote:hover .btn-icon {
   display: inline-block;
   transform: translateX(0);
 }

 /* ANIMATION KEYFRAMES */
 @keyframes borderRun {
   0% {
     background-position: 0% 50%;
   }

   100% {
     background-position: 400% 50%;
   }
 }

.mega-list{
  list-style:none;
  padding:0;
  margin:0;
}

.mega-list li{
  padding:10px 0;
  border-bottom:1px solid var(--border);
}

.mega-list li:last-child{ border-bottom:none; }

.mega-list a{
  text-decoration:none;
  color:var(--dark-text);
  font-weight:500;
  transition:.2s;
  display:block;
}

.mega-list a:hover{
  color:var(--primary1);
  padding-left:6px;
}

/* Scroll Top Icons */
.scroll-top-icon {
  position: fixed;
  right: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 99;
  background: #273d5a;
  color: #fff;  
  width: 40px;
  height: 40px;
  border-radius: 0;
  align-items: center;
  justify-content: center;
  border: none;
}

.animated-top-icon {
  opacity: 0;
  animation: fadeInDown 0.5s forwards;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    top: 0;
  }
  to {
    opacity: 1;
    top: 90%;
  }
}


/* Announcement Link */
.announcement-link {
    position: relative;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
}

/* Blinking badge */
.blink-badge {
    margin-left: 6px;
    padding: 2px 12px;
    font-size: 11px;
    border-radius: 20px;
    background: #ff3b3b;
    color: #fff;
    animation: blinkAnim 1s infinite;
}

/* Glow animation */
@keyframes blinkAnim {
    0%   { opacity: 1; box-shadow: 0 0 0px #ff3b3b; }
    50%  { opacity: 0.4; box-shadow: 0 0 10px #ff3b3b; }
    100% { opacity: 1; box-shadow: 0 0 0px #ff3b3b; }
}

/* Optional hover effect */
.announcement-link:hover {
    color: #00e5ff;
}