/* === Base Styles & Fonts === */
body {
  margin: 0;
  padding: 0;
  font-family: "IBM Plex Sans", Arial, sans-serif;
  background: #0a0826;
  color: #f5f6fa;
  min-height: 100vh;
  overflow-x: hidden;
}

/* === Navbar === */
.navbar {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.2rem 2.5rem;
  background: rgba(10, 8, 38, 0.92);
  box-shadow: 0 2px 16px 0 rgba(72, 0, 139, 0.07);
}

.navbar__brand span {
  font-family: "Orbitron", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.7rem;
  letter-spacing: 2px;
  color: #ffd93d;
  text-shadow: 0 0 8px #ffef8a;
}

.navbar__links {
  list-style: none;
  display: flex;
  gap: 2.2rem;
  margin: 0;
  padding: 0;
}

.navbar__links a {
  position: relative;
  font-size: 1.05rem;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 1px;
  transition: color 0.2s;
}

/* Animated underline + glow on hover */
.navbar__links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  height: 2.5px;
  background: linear-gradient(90deg, #ffd93d, #f72585, #7209b7);
  border-radius: 2px;
  transform: scaleX(0);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 0 8px 2px #91eae4aa;
  opacity: 0.7;
}

.navbar__links a:hover,
.navbar__links a:focus {
  color: #ffd93d;
}
.navbar__links a:hover::after,
.navbar__links a:focus::after {
  transform: scaleX(1);
}

/* === Hero Section === */
/* Full viewport, center content, relative for background layering */
.hero {
  position: relative;
  min-height: 100vh;
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding-top: 3rem;
  padding-bottom: 3rem;
  z-index: 1;
}

/* === Animated SVG Blob Background === */
.hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.hero__bg svg {
  position: absolute;
  width: 120vw;
  height: 120vh;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  filter: blur(2px) brightness(0.9);
  opacity: 0.85;
  pointer-events: none;
}

/* Animated multi-color gradient overlay using unique palette */
.hero__gradient-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at 60% 40%,
    #ffd93d33 0%,
    #f7258533 60%,
    #7209b733 100%
  );
  mix-blend-mode: lighten;
  pointer-events: none;
}

/* === Hero Content === */
.hero__content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
}

/* === Headline: Orbitron, animated gradient === */
.hero__headline {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  margin: 0 0 1.2rem 0;
  line-height: 1.1;
  letter-spacing: 2px;
  color: transparent;
  background: none;
}

/* Animated gradient text using unique palette */
.gradient-animate {
  display: inline-block;
  background: linear-gradient(
    90deg,
    #ffd93d 0%,
    #ff6b6b 25%,
    #f72585 50%,
    #4d96ff 75%,
    #6bcb77 100%
  );
  background-size: 200% auto;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  animation: gradient-move 4s linear infinite;
}
@keyframes gradient-move {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

/* === Subheadline: IBM Plex Sans === */
.hero__subheadline {
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-size: 1.25rem;
  color: #e0e0e0;
  margin-bottom: 2.2rem;
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 0.01em;
}

/* === CTA Button: Neon Glow Animation & Border Reveal === */
.hero__cta {
  display: inline-block;
  padding: 0.95rem 2.5rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  background: transparent;
  border: 2px solid #ffd93d;
  border-radius: 40px;
  box-shadow: 0 0 18px 2px #ffd93d55, 0 0 8px 2px #f7258555;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  transition: color 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.hero__cta::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #ffd93d, #f72585, #7209b7);
  transition: left 0.4s;
  z-index: 0;
  opacity: 0.18;
}

.hero__cta:hover {
  color: #ffd93d;
  border-color: #f72585;
  box-shadow: 0 0 24px 4px #f72585aa, 0 0 12px 2px #ffd93d99;
}
.hero__cta:hover::before {
  left: 0;
}

/* === Features Section: Futuristic Services/Why Choose Us === */
/* Section layout & background */
.features {
  position: relative;
  padding: 6rem 0 4rem 0;
  background: linear-gradient(180deg, #0a0826 80%, #1a1440 100%);
  overflow: hidden;
}

/* Animated SVG blobs in background corners */
.features__bg {
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.features__bg--left {
  left: -60px;
  top: 0;
}
.features__bg--right {
  right: -40px;
  bottom: 0;
}

/* Section container */
.features__container {
  position: relative;
  z-index: 2;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 2rem;
}

/* Section heading/title */
.features__title {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 2.3rem;
  margin-bottom: 2.5rem;
  text-align: center;
  letter-spacing: 1.5px;
}

/* Features grid layout */
.features__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 2.5rem;
}

/* Feature card design */
.feature-card {
  background: rgba(255, 255, 255, 0.03);
  border-radius: 1.5rem;
  box-shadow: 0 4px 32px 0 #3a0ca322;
  padding: 2.2rem 1.5rem 1.7rem 1.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  border: 1.5px solid #ffd93d22;
  transition: transform 0.18s, box-shadow 0.18s;
}

/* 3D tilt + glow border + scale-up on hover */
.feature-card:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 8px 40px 0 #ffd93d33, 0 2px 12px 0 #f7258533;
  border-color: #ffd93d55;
}

/* Animated underline on card title */
.feature-card__title {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 1.25rem;
  color: #ffd93d;
  margin: 0 0 0.6rem 0;
  letter-spacing: 1px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  transition: color 0.2s;
}

/* Card icon (animated SVG) */
.feature-card__icon {
  margin-bottom: 1.1rem;
  min-height: 54px;
}

/* Card description */
.feature-card__desc {
  color: #e0e0e0;
  font-size: 1.05rem;
  line-height: 1.5;
}

/* ===== Services Section ===== */
.services {
  padding: 6rem 0 6rem 0;
  background: linear-gradient(180deg, #1a1440 0%, #0a0826 100%);
}
.services__title {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 2.3rem;
  margin-bottom: 2.5rem;
  text-align: center;
  letter-spacing: 1.5px;
}
.services__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 2.5rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}
.service-card {
  background: rgba(255, 255, 255, 0.04);
  border-radius: 1.5rem;
  box-shadow: 0 4px 32px 0 #3a0ca322;
  padding: 2.2rem 1.5rem 1.7rem 1.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  border: 1.5px solid #ffd93d22;
  transition: transform 0.18s, box-shadow 0.18s;
}
.service-card__icon {
  margin-bottom: 1.1rem;
  min-height: 54px;
}
.service-card__title {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 1.15rem;
  color: #f72585;
  margin: 0 0 0.6rem 0;
  letter-spacing: 1px;
}
.service-card__desc {
  color: #e0e0e0;
  font-size: 1.02rem;
  line-height: 1.5;
}

/* Service Card Variants */
.service-card--glow {
  box-shadow: 0 0 24px 4px #ff6b6b44, 0 4px 32px 0 #ffd93d22;
}
.service-card--neon {
  border: 2px solid #ffd93d55;
  box-shadow: 0 0 18px 2px #ffd93d55, 0 0 8px 2px #f7258555;
}
.service-card--tilt {
  transform: rotate(-2deg);
}
.service-card--gradient {
  border: 2px solid transparent;
  background: linear-gradient(120deg, #ffd93d22 0%, #f7258522 100%);
}
.service-card--scale:hover {
  transform: scale(1.06);
  box-shadow: 0 0 32px 0 #f7258533;
}
.service-card--pulse {
  animation: pulse 2.5s infinite;
}
@keyframes pulse {
  0%,
  100% {
    box-shadow: 0 0 18px 2px #7209b755;
  }
  50% {
    box-shadow: 0 0 32px 8px #7209b7aa;
  }
}
.service-card--border-anim {
  border: 2px solid #00c6ae55;
  transition: border-color 0.3s;
}
.service-card--border-anim:hover {
  border-color: #ffd93d;
}
.service-card--shadow {
  box-shadow: 0 8px 40px 0 #3a0ca355, 0 2px 12px 0 #ffd93d33;
}

/* Animated SVG Icon Effects */
.icon-float {
  animation: floatY 3.5s ease-in-out infinite alternate;
}
@keyframes floatY {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-10px);
  }
}
.icon-rotate {
  animation: rotate360 7s linear infinite;
}
@keyframes rotate360 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Responsive Design */
@media (max-width: 900px) {
  .features__grid,
  .services__grid {
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
  }
  .navbar {
    padding: 1rem 1.2rem;
  }
}
@media (max-width: 600px) {
  .features__grid,
  .services__grid {
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }
  .hero__headline {
    font-size: 2.1rem;
  }
  .features,
  .services {
    padding: 3rem 0 2rem 0;
  }
  .navbar__links {
    gap: 1.1rem;
  }
}

/* Utility */
::-webkit-scrollbar {
  width: 8px;
  background: #1a1440;
}
::-webkit-scrollbar-thumb {
  background: #ffd93d44;
  border-radius: 8px;
}

/* =========================
   About Us Section
   ========================= */

/* Section layout */
.aboutus {
  width: 100%;
  padding: 80px 0;
  background: linear-gradient(120deg, #0a0826 80%, #1a1440 100%);
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.aboutus__container {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1200px;
  margin: 0 auto;
  gap: 4.5rem;
  padding: 0 2rem;
  position: relative;
  z-index: 2;
}
.aboutus__visual {
  flex: 1 1 340px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 260px;
  max-width: 380px;
  position: relative;
}
.aboutus__svg {
  width: 100%;
  max-width: 340px;
  height: auto;
  display: block;
  filter: drop-shadow(0 0 32px #ffd93d33) drop-shadow(0 0 24px #f7258533);
}
.aboutus__blob {
  /* Unique floating/morphing animation */
  animation: aboutus-blob-float 7s ease-in-out infinite alternate;
}
@keyframes aboutus-blob-float {
  0% {
    d: path(
      "M170 40 Q260 60 300 170 Q320 260 210 300 Q120 320 60 210 Q20 120 130 60 Q170 40 170 40 Z"
    );
    filter: drop-shadow(0 0 32px #ffd93d33);
    transform: translateY(0px) scale(1);
  }
  40% {
    d: path(
      "M170 60 Q250 80 290 170 Q310 250 210 290 Q130 320 80 210 Q40 130 140 80 Q170 60 170 60 Z"
    );
    filter: drop-shadow(0 0 40px #f7258533);
    transform: translateY(-12px) scale(1.04);
  }
  70% {
    d: path(
      "M170 50 Q240 70 310 170 Q320 250 200 310 Q110 320 70 210 Q30 130 120 70 Q170 50 170 50 Z"
    );
    filter: drop-shadow(0 0 36px #4d96ff33);
    transform: translateY(10px) scale(0.98);
  }
  100% {
    d: path(
      "M170 40 Q260 60 300 170 Q320 260 210 300 Q120 320 60 210 Q20 120 130 60 Q170 40 170 40 Z"
    );
    filter: drop-shadow(0 0 32px #ffd93d33);
    transform: translateY(0px) scale(1);
  }
}
/* Fallback for browsers not supporting d:path animation */
@supports not (d: path("M0 0")) {
  .aboutus__blob {
    animation: aboutus-blob-float-fallback 7s ease-in-out infinite alternate;
  }
  @keyframes aboutus-blob-float-fallback {
    0%,
    100% {
      transform: translateY(0px) scale(1);
    }
    40% {
      transform: translateY(-12px) scale(1.04);
    }
    70% {
      transform: translateY(10px) scale(0.98);
    }
  }
}
.aboutus__lines {
  animation: aboutus-lines-move 8s linear infinite alternate;
}
@keyframes aboutus-lines-move {
  0% {
    opacity: 0.13;
  }
  50% {
    opacity: 0.22;
  }
  100% {
    opacity: 0.13;
  }
}

/* Text styles */
.aboutus__content {
  flex: 1 1 380px;
  max-width: 540px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  z-index: 2;
}
.aboutus__headline {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1.1rem;
  letter-spacing: 2px;
  line-height: 1.1;
  /* Gradient text animation (reuse .gradient-animate) */
}
.aboutus__tagline {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 1.25rem;
  color: #ffd93d;
  margin-bottom: 1.2rem;
  letter-spacing: 1.2px;
  text-shadow: 0 0 8px #ffd93d33;
  background: linear-gradient(90deg, #ffd93d, #f72585, #00c6ae, #ffd93d);
  background-size: 200% auto;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: gradient-move 5s linear infinite;
}
.aboutus__desc {
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-size: 1.08rem;
  color: #e0e0e0;
  margin-bottom: 2.1rem;
  line-height: 1.7;
  letter-spacing: 0.1px;
}
.aboutus__cta {
  display: inline-block;
  padding: 0.9rem 2.2rem;
  font-size: 1.08rem;
  font-family: "Orbitron", Arial, sans-serif;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(90deg, #f72585 0%, #ffd93d 100%);
  border: none;
  border-radius: 40px;
  box-shadow: 0 0 16px 2px #ffd93d44, 0 0 8px 2px #f7258544;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition: color 0.2s, box-shadow 0.2s, background 0.2s;
}
.aboutus__cta::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #ffd93d, #f72585, #00c6ae);
  opacity: 0.18;
  transition: left 0.4s;
  z-index: 0;
}
.aboutus__cta:hover {
  color: #ffd93d;
  background: linear-gradient(90deg, #ffd93d 0%, #f72585 100%);
  box-shadow: 0 0 24px 4px #f72585aa, 0 0 12px 2px #ffd93d99;
}
.aboutus__cta:hover::before {
  left: 0;
}

/* Optional: Animated dots background */
.aboutus__dots-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: transparent;
}
.aboutus__dots-bg::before {
  content: "";
  position: absolute;
  left: 10%;
  top: 10%;
  width: 180px;
  height: 180px;
  background-image: radial-gradient(circle, #ffd93d33 1.5px, transparent 1.5px),
    radial-gradient(circle, #f7258533 1.5px, transparent 1.5px),
    radial-gradient(circle, #00c6ae33 1.5px, transparent 1.5px);
  background-size: 36px 36px, 48px 48px, 60px 60px;
  background-position: 0 0, 12px 24px, 24px 12px;
  opacity: 0.18;
  animation: aboutus-dots-move 14s linear infinite alternate;
}
@keyframes aboutus-dots-move {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(24px);
  }
}

/* Responsive Design */
@media (max-width: 900px) {
  .aboutus__container {
    flex-direction: column;
    gap: 2.5rem;
    align-items: center;
    text-align: center;
  }
  .aboutus__content {
    align-items: center;
    max-width: 100%;
  }
  .aboutus__visual {
    max-width: 320px;
    margin-bottom: 0.5rem;
  }
}
@media (max-width: 600px) {
  .aboutus {
    padding: 40px 0;
  }
  .aboutus__headline {
    font-size: 1.5rem;
  }
  .aboutus__tagline {
    font-size: 1.05rem;
  }
  .aboutus__visual {
    min-width: 180px;
    max-width: 220px;
  }
}

/* Accessibility: focus styles for cards */
.feature-card:focus-within {
  outline: 2px solid #ffd93d;
  outline-offset: 2px;
}

/* ===========================
   Contact Us Section Styles
   =========================== */

/* Fonts */
.contactus__headline {
  font-family: "Orbitron", Arial, sans-serif;
  font-size: 2.3rem;
  margin-bottom: 1.5rem;
  text-align: left;
  letter-spacing: 1.5px;
  /* Gradient text animation reused for consistency */
}

/* Section layout */
.contactus {
  background: linear-gradient(180deg, #0a0826 80%, #1a1440 100%);
  padding: 6rem 0 6rem 0;
  position: relative;
  overflow: hidden;
}
.contactus__container {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  max-width: 1100px;
  margin: 0 auto;
  gap: 3.5rem;
  padding: 0 2rem;
  position: relative;
  z-index: 2;
}
.contactus__details-card,
.contactus__form-card {
  flex: 1 1 340px;
  background: rgba(255,255,255,0.03);
  border-radius: 1.5rem;
  box-shadow: 0 4px 32px 0 #3A0CA322;
  padding: 2.5rem 2rem 2rem 2rem;
  border: 1.5px solid #FFD93D22;
  min-width: 260px;
  max-width: 430px;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.contactus__details-card {
  align-items: flex-start;
  justify-content: flex-start;
}
.contactus__form-card {
  align-items: stretch;
  justify-content: flex-start;
}
.contactus__headline {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 2rem;
  margin-bottom: 1.2rem;
  letter-spacing: 1.2px;
  text-align: left;
}
.contactus__info {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  font-size: 1.08rem;
}
.contactus__info-item {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.contactus__info-label {
  color: #FFD93D;
  font-weight: 600;
  margin-right: 0.2rem;
}
.contactus__info-value,
.contactus__info-link {
  color: #fff;
  font-weight: 400;
  text-decoration: none;
  transition: color 0.2s;
}
.contactus__info-link:hover {
  color: #F72585;
  text-decoration: underline;
}
.contactus__socials {
  display: flex;
  gap: 1.2rem;
  margin-top: 0.5rem;
}
.contactus__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.06);
  border-radius: 50%;
  width: 38px;
  height: 38px;
  transition: background 0.2s, box-shadow 0.2s;
  box-shadow: 0 2px 8px 0 #FFD93D22;
}
.contactus__social-link:hover {
  background: #FFD93D22;
  box-shadow: 0 0 12px 2px #FFD93D55;
}
.contactus__social-link svg {
  display: block;
}

.contactus__form {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.contactus__fields {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}
.contactus__field {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.contactus__field label {
  font-size: 1rem;
  color: #FFD93D;
  font-weight: 600;
  margin-bottom: 0.1rem;
  letter-spacing: 0.5px;
}
.contactus__field input,
.contactus__field textarea {
  background: rgba(255,255,255,0.06);
  border: 1.5px solid #FFD93D33;
  border-radius: 0.7rem;
  padding: 0.7rem 1rem;
  color: #fff;
  font-size: 1rem;
  font-family: inherit;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
  resize: none;
}
.contactus__field textarea {
  min-height: 90px;
  max-height: 220px;
}
.contactus__field input:focus,
.contactus__field textarea:focus {
  border-color: #F72585;
  box-shadow: 0 0 0 2px #FFD93D44;
}
.contactus__submit {
  margin-top: 0.8rem;
  padding: 0.9rem 2.2rem;
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  background: transparent;
  border: 2px solid #FFD93D;
  border-radius: 40px;
  box-shadow: 0 0 18px 2px #FFD93D55, 0 0 8px 2px #F7258555;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: color 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.contactus__submit::before {
  content: '';
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #FFD93D, #F72585, #7209B7);
  transition: left 0.4s;
  z-index: 0;
  opacity: 0.18;
}
.contactus__submit:hover {
  color: #FFD93D;
  border-color: #F72585;
  box-shadow: 0 0 24px 4px #F72585aa, 0 0 12px 2px #FFD93D99;
}
.contactus__submit:hover::before {
  left: 0;
}

/* Responsive for Contact Us */
@media (max-width: 900px) {
  .contactus__container {
    flex-direction: column;
    gap: 2.2rem;
    padding: 0 1rem;
    align-items: stretch;
  }
  .contactus__details-card,
  .contactus__form-card {
    min-width: 0;
    width: 100%;
    max-width: 100%;
    padding: 2rem 1rem 1.5rem 1rem;
  }
}
@media (max-width: 600px) {
  .contactus {
    padding: 3rem 0 2rem 0;
  }
  .contactus__details-card,
  .contactus__form-card {
    padding: 1.2rem 0.7rem 1rem 0.7rem;
  }
}
  }
  .contactus__svg {
    width: 220px;
    height: 220px;
  }
  .contactus__form {
    padding: 1.5rem 1rem 1.2rem 1rem;
  }
  .contactus__headline {
    text-align: center;
  }
}
@media (max-width: 600px) {
  .contactus {
    padding: 48px 0;
  }
  .contactus__svg {
    width: 140px;
    height: 140px;
  }
  .contactus__form {
    padding: 1rem 0.5rem 0.7rem 0.5rem;
  }
}

/* =========================
   Futuristic Footer Section
   ========================= */

/* Fonts for footer logo */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@700&display=swap');

.footer {
  position: relative;
  width: 100vw;
  background: linear-gradient(180deg, #1a1440 60%, #0a0826 100%);
  overflow: hidden;
  padding: 0;
  margin: 0;
  z-index: 2;
}

/* Animated SVG wave at top */
.footer__wave {
  width: 100%;
  height: 60px;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  pointer-events: none;
}

/* Dots/Noise BG */
.footer__dots-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background-image:
    radial-gradient(#FFD93D22 1.5px, transparent 1.5px),
    radial-gradient(#F7258522 1.5px, transparent 1.5px),
    radial-gradient(#00C6AE22 1.5px, transparent 1.5px);
  background-size: 36px 36px, 48px 48px, 60px 60px;
  background-position: 0 0, 18px 24px, 24px 12px;
  opacity: 0.18;
  animation: footer-dots-move 12s linear infinite alternate;
}
@keyframes footer-dots-move {
  0% { background-position: 0 0, 18px 24px, 24px 12px; }
  100% { background-position: 24px 24px, 0 0, 12px 24px; }
}

.footer__container {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1.2fr 1fr;
  gap: 2.5rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 2rem 0 2rem;
  align-items: flex-start;
}

.footer__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
}
.footer__logo {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 2px;
  background: linear-gradient(90deg, #FFD93D, #F72585, #4D96FF, #6BCB77, #7209B7);
  background-size: 200% auto;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  text-shadow: 0 0 16px #FFD93D55, 0 0 8px #F7258555;
  animation: gradient-move 4s linear infinite;
  display: inline-block;
}
.footer__tagline {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 1.05rem;
  color: #FFD93D;
  letter-spacing: 1.2px;
  text-shadow: 0 0 8px #FFD93D33;
  opacity: 0.8;
}

/* Quick Links */
.footer__links {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  margin-top: 0.2rem;
}
.footer__link {
  color: #fff;
  font-family: 'IBM Plex Sans', Arial, sans-serif;
  font-size: 1.08rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-decoration: none;
  position: relative;
  padding-bottom: 2px;
  transition: color 0.2s;
}
.footer__link::after {
  content: '';
  display: block;
  width: 0;
  height: 2.5px;
  background: linear-gradient(90deg, #FFD93D, #F72585, #4D96FF, #6BCB77, #7209B7);
  border-radius: 2px;
  transition: width 0.3s;
  margin-top: 2px;
  box-shadow: 0 0 8px 2px #FFD93D55;
  opacity: 0.7;
}
.footer__link:hover,
.footer__link:focus {
  color: #FFD93D;
}
.footer__link:hover::after,
.footer__link:focus::after {
  width: 100%;
}

/* Contact Info */
.footer__contact {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  font-family: 'IBM Plex Mono', 'IBM Plex Sans', monospace, Arial, sans-serif;
  font-size: 1.02rem;
  color: #FFD93D;
  background: rgba(255,255,255,0.03);
  border-radius: 1rem;
  padding: 1.1rem 1.2rem 1rem 1.2rem;
  box-shadow: 0 2px 16px 0 #FFD93D11;
  border: 1.5px solid #FFD93D22;
  margin-bottom: 0.5rem;
}
.footer__contact-item {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  line-height: 1.5;
}
.footer__contact-label {
  color: #F72585;
  font-weight: 700;
  font-size: 1.01em;
  letter-spacing: 0.5px;
}
.footer__contact-value,
.footer__contact-link {
  color: #FFD93D;
  font-weight: 400;
  text-decoration: none;
  transition: color 0.2s;
  font-family: inherit;
}
.footer__contact-link:hover {
  color: #F72585;
  text-decoration: underline;
}

/* Social Icons */
.footer__socials {
  display: flex;
  gap: 1.2rem;
  align-items: center;
  margin-top: 0.7rem;
}
.footer__social {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.06);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  transition: background 0.2s, box-shadow 0.2s, transform 0.2s;
  box-shadow: 0 2px 8px 0 #FFD93D22;
  position: relative;
  overflow: hidden;
  animation: footer-social-float 4s ease-in-out infinite alternate;
}
@keyframes footer-social-float {
  0% { transform: translateY(0);}
  100% { transform: translateY(-6px);}
}
.footer__social svg {
  display: block;
  width: 22px;
  height: 22px;
  filter: drop-shadow(0 0 6px #FFD93D44);
  transition: filter 0.2s;
}
.footer__social:hover,
.footer__social:focus {
  background: #FFD93D22;
  box-shadow: 0 0 16px 2px #FFD93D55;
  transform: scale(1.08);
}
.footer__social:hover svg,
.footer__social:focus svg {
  filter: drop-shadow(0 0 12px #FFD93D) brightness(1.2) invert(0.1);
}

/* Copyright */
.footer__copyright {
  text-align: center;
  color: #FFD93D;
  font-size: 1.01rem;
  opacity: 0.7;
  padding: 32px 0 18px 0;
  letter-spacing: 1px;
  font-family: 'IBM Plex Sans', Arial, sans-serif;
  z-index: 3;
  position: relative;
}

/* Footer */
.footer {
  background: #120c2b;
  color: #fff;
  position: relative;
  margin-top: 0;
  padding: 0;
  font-family: 'IBM Plex Sans', Arial, sans-serif;
}
.footer__wave {
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
.footer__content {
  max-width: 1100px;
  margin: 0 auto;
  padding: 2.5rem 2rem 2rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
}
.footer__brand {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 1.5rem;
  color: #FFD93D;
  letter-spacing: 2px;
  margin-bottom: 0.5rem;
}
.footer__links {
  display: flex;
  gap: 2rem;
  margin-bottom: 0.5rem;
}
.footer__links a {
  color: #FFD93D;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
}
.footer__links a:hover {
  color: #F72585;
}
.footer__copyright {
  font-size: 0.98rem;
  color: #e0e0e0;
  opacity: 0.7;
  margin-top: 0.5rem;
}
@media (max-width: 600px) {
  .footer__content {
    padding: 1.5rem 0.7rem 1rem 0.7rem;
    gap: 0.7rem;
  }
  .footer__links {
    gap: 1rem;
    flex-wrap: wrap;
  }
}

/* Smooth fade-in for footer */
.footer__container,
.footer__copyright {
  animation: footer-fadein 1.2s cubic-bezier(0.4,0,0.2,1);
}
@keyframes footer-fadein {
  from { opacity: 0; transform: translateY(32px);}
  to { opacity: 1; transform: translateY(0);}
}

/* ===========================
   Futuristic HUD Footer
   =========================== */

/* Fonts */
.hud-footer {
  font-family: 'IBM Plex Sans', Arial, sans-serif;
  background: #0a0826;
  position: relative;
  width: 100vw;
  overflow: hidden;
  padding: 100px 0 0 0;
  z-index: 10;
  box-shadow: 0 -2px 32px 0 #3A0CA322;
}

/* Top neon SVG divider */
.hud-footer__divider {
  width: 100vw;
  min-height: 16px;
  background: transparent;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 12;
  pointer-events: none;
}

/* Glitch animated heading */
.hud-footer__glitch-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 32px;
  margin-bottom: 36px;
  z-index: 13;
  position: relative;
}
.hud-footer__glitch {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 2.2rem;
  color: #FFD93D;
  letter-spacing: 2px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  animation: glitch-flicker 2.5s infinite steps(2, end);
  filter: drop-shadow(0 0 8px #FFD93D88);
  user-select: none;
}
.hud-footer__glitch::before,
.hud-footer__glitch::after {
  content: attr(aria-label);
  position: absolute;
  left: 0; top: 0; width: 100%; height: 100%;
  opacity: 0.5;
  z-index: -1;
  pointer-events: none;
}
.hud-footer__glitch::before {
  color: #F72585;
  left: 2px; top: -2px;
  animation: glitch-anim1 2.5s infinite linear alternate-reverse;
}
.hud-footer__glitch::after {
  color: #4D96FF;
  left: -2px; top: 2px;
  animation: glitch-anim2 2.5s infinite linear alternate;
}
@keyframes glitch-flicker {
  0%, 100% { opacity: 1; }
  10% { opacity: 0.7; }
  20% { opacity: 1; }
  30% { opacity: 0.5; }
  40% { opacity: 1; }
  50% { opacity: 0.8; }
  60% { opacity: 1; }
  70% { opacity: 0.6; }
  80% { opacity: 1; }
  90% { opacity: 0.9; }
}
@keyframes glitch-anim1 {
  0% { clip-path: inset(0 0 80% 0); }
  20% { clip-path: inset(0 0 60% 0); }
  40% { clip-path: inset(0 0 40% 0); }
  60% { clip-path: inset(0 0 20% 0); }
  80% { clip-path: inset(0 0 10% 0); }
  100% { clip-path: inset(0 0 0 0); }
}
@keyframes glitch-anim2 {
  0% { clip-path: inset(80% 0 0 0); }
  20% { clip-path: inset(60% 0 0 0); }
  40% { clip-path: inset(40% 0 0 0); }
  60% { clip-path: inset(20% 0 0 0); }
  80% { clip-path: inset(10% 0 0 0); }
  100% { clip-path: inset(0 0 0 0); }
}

/* Panels Layout */
.hud-footer__panels {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 2.5rem 2.2rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem 70px 2rem;
  position: relative;
  z-index: 14;
}

/* Panel base style */
.hud-footer__panel {
  background: rgba(255,255,255,0.04);
  border-radius: 1.3rem;
  box-shadow: 0 4px 32px 0 #3A0CA322;
  border: 1.5px solid #FFD93D22;
  padding: 2.1rem 1.7rem 1.5rem 1.7rem;
  min-width: 220px;
  max-width: 320px;
  margin-bottom: 0.7rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  /* Asymmetric staggered effect */
  transform: translateY(0);
}
.hud-footer__panel--company { z-index: 2; box-shadow: 0 0 32px 0 #FFD93D33; }
.hud-footer__panel--nav { z-index: 3; transform: translateY(24px); }
.hud-footer__panel--contact { z-index: 2; transform: translateY(12px); }
.hud-footer__panel--social { z-index: 4; transform: translateY(36px); }
.hud-footer__panel--data { z-index: 1; transform: translateY(8px); }

/* Company Info Panel */
.hud-footer__company-name {
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 1.7rem;
  letter-spacing: 2px;
  background: linear-gradient(90deg, #FFD93D, #F72585, #4D96FF, #00C6AE, #FFD93D);
  background-size: 200% auto;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  animation: hud-footer-gradient-move 4s linear infinite;
  text-shadow: 0 0 8px #FFD93D88, 0 0 16px #F7258555;
  filter: brightness(1.2);
  margin-bottom: 0.5rem;
  user-select: none;
}
@keyframes hud-footer-gradient-move {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}
.hud-footer__company-tagline {
  font-size: 1.08rem;
  color: #FFD93D;
  opacity: 0.7;
  letter-spacing: 1px;
  font-family: 'IBM Plex Sans', Arial, sans-serif;
  text-shadow: 0 0 8px #FFD93D33;
  margin-bottom: 0.2rem;
  animation: hud-footer-flicker 2.5s infinite alternate;
}
@keyframes hud-footer-flicker {
  0%, 100% { opacity: 0.7; }
  10% { opacity: 1; }
  20% { opacity: 0.5; }
  30% { opacity: 0.8; }
  40% { opacity: 0.6; }
  50% { opacity: 1; }
  60% { opacity: 0.7; }
  70% { opacity: 0.9; }
  80% { opacity: 0.6; }
  90% { opacity: 1; }
}

/* Navigation Panel */
.hud-footer__nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  align-items: flex-start;
}
.hud-footer__nav-link {
  display: inline-block;
  font-family: 'Orbitron', Arial, sans-serif;
  font-size: 1.08rem;
  color: #FFD93D;
  background: linear-gradient(90deg, #FFD93D, #F72585, #4D96FF, #00C6AE, #FFD93D);
  background-size: 200% auto;
  border-radius: 2rem;
  padding: 0.55rem 1.5rem;
  margin: 0.1rem 0;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 1px;
  box-shadow: 0 0 12px 2px #FFD93D33;
  border: 2px solid transparent;
  transition: background 0.3s, color 0.2s, border 0.3s, box-shadow 0.2s;
  position: relative;
  overflow: hidden;
}
.hud-footer__nav-link:hover, .hud-footer__nav-link:focus {
  color: #fff;
  background-position: 100% 0;
  border: 2px solid #F72585;
  box-shadow: 0 0 24px 4px #F72585aa, 0 0 12px 2px #FFD93D99;
}
.hud-footer__nav-link::after {
  content: '';
  position: absolute;
  left: 0; top: 0;
  width: 0; height: 100%;
  background: linear-gradient(90deg, #FFD93D, #F72585, #4D96FF, #00C6AE, #FFD93D);
  transition: width 0.4s;
  opacity: 0.18;
  z-index: 0;
  border-radius: 2rem;
}
.hud-footer__nav-link:hover::after {
  width: 100%;
}

/* Contact Details Panel */
.hud-footer__contact-card {
  background: rgba(10,8,38,0.7);
  border-radius: 1rem;
  border: 1.5px solid #4D96FF33;
  box-shadow: 0 0 16px 0 #4D96FF22;
  padding: 1.1rem 1rem 1rem 1rem;
  font-size: 1.04rem;
  font-family: 'IBM Plex Mono', 'IBM Plex Sans', monospace;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  position: relative;
  overflow: hidden;
}
.hud-footer__contact-row {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  color: #FFD93D;
  font-weight: 500;
  letter-spacing: 0.5px;
}
.hud-footer__contact-link {
  color: #4D96FF;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
  position: relative;
}
.hud-footer__contact-link:hover {
  color: #F72585;
  text-decoration: underline;
}
.hud-footer__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255,255,255,0.04);
  box-shadow: 0 0 8px 0 #FFD93D22;
  animation: hud-footer-icon-float 3s ease-in-out infinite alternate;
}
.hud-footer__icon--address { animation-delay: 0s; }
.hud-footer__icon--phone { animation-delay: 0.7s; }
.hud-footer__icon--email { animation-delay: 1.4s; }
@keyframes hud-footer-icon-float {
  0% { transform: translateY(0);}
  100% { transform: translateY(-6px);}
}

/* Social Media Panel */
.hud-footer__socials {
  display: flex;
  gap: 1.1rem;
  margin-top: 0.2rem;
}
.hud-footer__social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #FFD93D22 0%, #F7258522 100%);
  box-shadow: 0 0 12px 2px #FFD93D33;
  border: 2px solid #FFD93D33;
  transition: background 0.2s, box-shadow 0.2s, transform 0.2s, filter 0.2s;
  position: relative;
  overflow: hidden;
  animation: hud-footer-social-float 3.5s ease-in-out infinite alternate;
}
.hud-footer__social-btn:hover, .hud-footer__social-btn:focus {
  background: linear-gradient(135deg, #F72585 0%, #FFD93D 100%);
  box-shadow: 0 0 24px 4px #F72585aa, 0 0 12px 2px #FFD93D99;
  transform: scale(1.13) rotate(-6deg);
  filter: invert(1) brightness(1.2);
  border-color: #F72585;
}
.hud-footer__social-btn:nth-child(2) { animation-delay: 0.7s; }
.hud-footer__social-btn:nth-child(3) { animation-delay: 1.4s; }
@keyframes hud-footer-social-float {
  0% { transform: translateY(0);}
  100% { transform: translateY(-8px);}
}

/* Data Panel */
.hud-footer__panel--data {
  background: rgba(0,198,174,0.07);
  border: 1.5px solid #00C6AE33;
  box-shadow: 0 0 24px 0 #00C6AE22;
  align-items: flex-start;
  min-width: 170px;
  max-width: 200px;
  font-family: 'IBM Plex Mono', 'IBM Plex Sans', monospace;
  font-size: 1.01rem;
  gap: 0.4rem;
}
.hud-footer__data-label {
  color: #FFD93D;
  font-weight: 600;
  opacity: 0.7;
  margin-bottom: 0.1rem;
  letter-spacing: 0.5px;
}
.hud-footer__data-value {
  color: #F72585;
  font-weight: 700;
  font-size: 1.08rem;
  margin-bottom: 0.2rem;
  letter-spacing: 1px;
}
.hud-footer__data-date {
  color: #4D96FF;
  font-size: 1.02rem;
  font-weight: 600;
}

/* Animated grid background for the footer */
.hud-footer__bg {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 1;
}
.hud-footer__bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, #FFD93D0A 0 1px, transparent 1px 60px),
              repeating-linear-gradient(180deg, #FFD93D0A 0 1px, transparent 1px 60px);
  animation: hud-footer-grid-move 12s linear infinite;
  opacity: 0.18;
  z-index: 1;
}
.hud-footer__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 60% 40%, #FFD93D22 0%, #F7258522 60%, #7209B722 100%);
  opacity: 0.13;
  z-index: 2;
}
@keyframes hud-footer-grid-move {
  0% { background-position: 0 0, 0 0; }
  100% { background-position: 60px 60px, 60px 60px; }
}

/* Responsive Design */
@media (max-width: 1100px) {
  .hud-footer__panels {
    gap: 1.2rem 1rem;
    padding: 0 1rem 60px 1rem;
  }
  .hud-footer__panel {
    min-width: 180px;
    max-width: 100vw;
    padding: 1.5rem 1rem 1.1rem 1rem;
  }
}
@media (max-width: 800px) {
  .hud-footer__panels {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    gap: 1.1rem 0.7rem;
    padding-bottom: 40px;
  }
  .hud-footer__panel {
    min-width: 140px;
    max-width: 100vw;
    padding: 1.1rem 0.7rem 0.8rem 0.7rem;
    margin-bottom: 0.5rem;
  }
}
@media (max-width: 600px) {
  .hud-footer {
    padding: 60px 0 0 0;
  }
  .hud-footer__glitch-wrap {
    margin-top: 18px;
    margin-bottom: 18px;
  }
  .hud-footer__panels {
    flex-direction: column;
    align-items: stretch;
    gap: 0.7rem;
    padding: 0 0.5rem 20px 0.5rem;
  }
  .hud-footer__panel {
    min-width: 0;
    max-width: 100vw;
    padding: 0.8rem 0.5rem 0.6rem 0.5rem;
    margin-bottom: 0.3rem;
    transform: none !important;
  }
  .hud-footer__panel--nav .hud-footer__nav-list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.7rem;
  }
  .hud-footer__nav-link {
    padding: 0.45rem 1rem;
    font-size: 0.98rem;
  }
  .hud-footer__social-btn {
    width: 36px;
    height: 36px;
  }
}

/* ===========================
   Neptune Mobi Apps Futuristic Footer
   =========================== */

/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@700&family=Audiowide&family=Staatliches&display=swap');

/* Layout & Background */
.neptune-footer {
  width: 100vw;
  padding: 100px 0 0 0;
  background: #0a0826;
  position: relative;
  overflow: hidden;
  z-index: 20;
  box-shadow: 0 -2px 32px 0 #3A0CA322;
}

/* Neon SVG Divider */
.neptune-footer__divider {
  width: 100vw;
  min-height: 18px;
  background: transparent;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 22;
  pointer-events: none;
}

/* Glitch Heading */
.neptune-footer__glitch-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 48px;
  margin-bottom: 48px;
  z-index: 23;
  position: relative;
}
.neptune-footer__glitch {
  font-family: 'Orbitron', 'Audiowide', 'Staatliches', Arial, sans-serif;
  font-size: 2.5rem;
  color: #FFD93D;
  letter-spacing: 2px;
  text-align: center;
  text-transform: uppercase;
  position: relative;
  animation: neptune-glitch-flicker 2.5s infinite steps(2, end);
  filter: drop-shadow(0 0 8px #FFD93D88);
  user-select: none;
  background: linear-gradient(90deg, #FFD93D, #FF6B6B, #6BCB77, #4D96FF, #F72585, #7209B7, #3A0CA3, #00C6AE, #FFD93D);
  background-size: 400% auto;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  animation: neptune-glitch-flicker 2.5s infinite steps(2, end), neptune-footer-gradient-move 6s linear infinite;
}
.neptune-footer__glitch::before,
.neptune-footer__glitch::after {
  content: attr(aria-label);
  position: absolute;
  left: 0; top: 0; width: 100%; height: 100%;
  opacity: 0.5;
  z-index: -1;
  pointer-events: none;
}
.neptune-footer__glitch::before {
  color: #F72585;
  left: 2px; top: -2px;
  animation: neptune-glitch-anim1 2.5s infinite linear alternate-reverse;
}
.neptune-footer__glitch::after {
  color: #4D96FF;
  left: -2px; top: 2px;
  animation: neptune-glitch-anim2 2.5s infinite linear alternate;
}
@keyframes neptune-glitch-flicker {
  0%, 100% { opacity: 1; }
  10% { opacity: 0.7; }
  20% { opacity: 1; }
  30% { opacity: 0.5; }
  40% { opacity: 1; }
  50% { opacity: 0.8; }
  60% { opacity: 1; }
  70% { opacity: 0.6; }
  80% { opacity: 1; }
  90% { opacity: 0.9; }
}
@keyframes neptune-glitch-anim1 {
  0% { clip-path: inset(0 0 80% 0); }
  20% { clip-path: inset(0 0 60% 0); }
  40% { clip-path: inset(0 0 40% 0); }
  60% { clip-path: inset(0 0 20% 0); }
  80% { clip-path: inset(0 0 10% 0); }
  100% { clip-path: inset(0 0 0 0); }
}
@keyframes neptune-glitch-anim2 {
  0% { clip-path: inset(80% 0 0 0); }
  20% { clip-path: inset(60% 0 0 0); }
  40% { clip-path: inset(40% 0 0 0); }
  60% { clip-path: inset(20% 0 0 0); }
  80% { clip-path: inset(10% 0 0 0); }
  100% { clip-path: inset(0 0 0 0); }
}
@keyframes neptune-footer-gradient-move {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}

/* Panels Layout */
.neptune-footer__panels {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 2.5rem 2.2rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem 70px 2rem;
  position: relative;
  z-index: 24;
}

/* Panel Base Style */
.neptune-footer__panel {
  background: rgba(255,255,255,0.04);
  border-radius: 1.3rem;
  box-shadow: 0 4px 32px 0 #3A0CA322;
  border: 1.5px solid #FFD93D22;
  padding: 2.1rem 1.7rem 1.5rem 1.7rem;
  min-width: 220px;
  max-width: 320px;
  margin-bottom: 0.7rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  /* Asymmetric staggered effect */
  transform: translateY(0);
}
.neptune-footer__panel--brand { z-index: 2; box-shadow: 0 0 32px 0 #FFD93D33; }
.neptune-footer__panel--nav { z-index: 3; transform: translateY(24px); }
.neptune-footer__panel--contact { z-index: 2; transform: translateY(12px); }
.neptune-footer__panel--social { z-index: 4; transform: translateY(36px); }
.neptune-footer__panel--data { z-index: 1; transform: translateY(8px); }

/* Brand Panel */
.neptune-footer__brand-logo {
  font-family: 'Orbitron', 'Audiowide', 'Staatliches', Arial, sans-serif;
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 2px;
  background: linear-gradient(90deg, #FFD93D, #FF6B6B, #6BCB77, #4D96FF, #F72585, #7209B7, #3A0CA3, #00C6AE, #FFD93D);
  background-size: 400% auto;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  animation: neptune-footer-gradient-move 6s linear infinite;
  text-shadow: 0 0 16px #FFD93D55, 0 0 8px #F7258555;
  display: inline-block;
  filter: brightness(1.2);
  user-select: none;
}

/* Navigation Panel */
.neptune-footer__nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  align-items: flex-start;
}
.neptune-footer__nav-link {
  display: inline-block;
  font-family: 'Orbitron', 'Audiowide', Arial, sans-serif;
  font-size: 1.08rem;
  color: #FFD93D;
  background: linear-gradient(90deg, #FFD93D, #FF6B6B, #6BCB77, #4D96FF, #F72585, #7209B7, #3A0CA3, #00C6AE, #FFD93D);
  background-size: 200% auto;
  border-radius: 2rem;
  padding: 0.55rem 1.5rem;
  margin: 0.1rem 0;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 1px;
  box-shadow: 0 0 12px 2px #FFD93D33;
  border: 2px solid transparent;
  transition: background 0.3s, color 0.2s, border 0.3s, box-shadow 0.2s, transform 0.2s;
  position: relative;
  overflow: hidden;
}
.neptune-footer__nav-link:hover, .neptune-footer__nav-link:focus {
  color: #fff;
  background-position: 100% 0;
  border: 2px solid #F72585;
  box-shadow: 0 0 24px 4px #F72585aa, 0 0 12px 2px #FFD93D99;
  transform: scale(1.07);
}
.neptune-footer__nav-link::after {
  content: '';
  position: absolute;
  left: 0; top: 0;
  width: 0; height: 100%;
  background: linear-gradient(90deg, #FFD93D, #FF6B6B, #6BCB77, #4D96FF, #F72585, #7209B7, #3A0CA3, #00C6AE, #FFD93D);
  transition: width 0.4s;
  opacity: 0.18;
  z-index: 0;
  border-radius: 2rem;
}
.neptune-footer__nav-link:hover::after {
  width: 100%;
}

/* Contact Info Panel */
.neptune-footer__contact-card {
  background: rgba(10,8,38,0.7);
  border-radius: 1rem;
  border: 1.5px solid #4D96FF33;
  box-shadow: 0 0 16px 0 #4D96FF22;
  padding: 1.1rem 1rem 1rem 1rem;
  font-size: 1.04rem;
  font-family: 'IBM Plex Mono', 'IBM Plex Sans', monospace;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  position: relative;
  overflow: hidden;
}
.neptune-footer__contact-row {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  color: #FFD93D;
  font-weight: 500;
  letter-spacing: 0.5px;
  line-height: 1.5;
}
.neptune-footer__contact-link {
  color: #4D96FF;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
  position: relative;
  word-break: break-all;
}
.neptune-footer__contact-link:hover {
  color: #F72585;
  text-decoration: underline;
}
.neptune-footer__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255,255,255,0.04);
  box-shadow: 0 0 8px 0 #FFD93D22;
  animation: neptune-footer-icon-float 3s ease-in-out infinite alternate;
  flex-shrink: 0;
}
@keyframes neptune-footer-icon-float {
  0% { transform: translateY(0);}
  100% { transform: translateY(-6px);}
}

/* Social Media Panel */
.neptune-footer__socials {
  display: flex;
  gap: 1.1rem;
  margin-top: 0.2rem;
}
.neptune-footer__social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #FFD93D22 0%, #F7258522 100%);
  box-shadow: 0 0 12px 2px #FFD93D33;
  border: 2px solid #FFD93D33;
  transition: background 0.2s, box-shadow 0.2s, transform 0.2s, filter 0.2s;
  position: relative;
  overflow: hidden;
  animation: neptune-footer-social-float 3.5s ease-in-out infinite alternate;
}
.neptune-footer__social-btn:hover, .neptune-footer__social-btn:focus {
  background: linear-gradient(135deg, #F72585 0%, #FFD93D 100%);
  box-shadow: 0 0 24px 4px #F72585aa, 0 0 12px 2px #FFD93D99;
  transform: scale(1.13) rotate(-6deg);
  filter: invert(1) brightness(1.2);
  border-color: #F72585;
}
.neptune-footer__social-btn:nth-child(2) { animation-delay: 0.7s; }
.neptune-footer__social-btn:nth-child(3) { animation-delay: 1.4s; }
@keyframes neptune-footer-social-float {
  0% { transform: translateY(0);}
  100% { transform: translateY(-8px);}
}

/* Data Panel */
.neptune-footer__panel--data {
  background: rgba(0,198,174,0.07);
  border: 1.5px solid #00C6AE33;
  box-shadow: 0 0 24px 0 #00C6AE22;
  align-items: flex-start;
  min-width: 170px;
  max-width: 200px;
  font-family: 'IBM Plex Mono', 'IBM Plex Sans', monospace;
  font-size: 1.01rem;
  gap: 0.4rem;
}
.neptune-footer__data-label {
  color: #FFD93D;
  font-weight: 600;
  opacity: 0.7;
  margin-bottom: 0.1rem;
  letter-spacing: 0.5px;
}
.neptune-footer__data-value {
  color: #F72585;
  font-weight: 700;
  font-size: 1.08rem;
  margin-bottom: 0.2rem;
  letter-spacing: 1px;
}
.neptune-footer__data-date {
  color: #4D96FF;
  font-size: 1.02rem;
  font-weight: 600;
}

/* Animated grid/dots background */
.neptune-footer__bg {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 10;
}
.neptune-footer__bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, #FFD93D0A 0 1px, transparent 1px 60px),
              repeating-linear-gradient(180deg, #FFD93D0A 0 1px, transparent 1px 60px);
  animation: neptune-footer-grid-move 12s linear infinite;
  opacity: 0.18;
  z-index: 1;
}
.neptune-footer__bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 60% 40%, #FFD93D22 0%, #F7258522 60%, #7209B722 100%);
  opacity: 0.13;
  z-index: 2;
}
@keyframes neptune-footer-grid-move {
  0% { background-position: 0 0, 0 0; }
  100% { background-position: 60px 60px, 60px 60px; }
}

/* Responsive Design */
@media (max-width: 1100px) {
  .neptune-footer__panels {
    gap: 1.2rem 1rem;
    padding: 0 1rem 60px 1rem;
  }
  .neptune-footer__panel {
    min-width: 180px;
    max-width: 100vw;
    padding: 1.5rem 1rem 1.1rem 1rem;
  }
}
@media (max-width: 800px) {
  .neptune-footer__panels {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    gap: 1.1rem 0.7rem;
    padding-bottom: 40px;
  }
  .neptune-footer__panel {
    min-width: 140px;
    max-width: 100vw;
    padding: 1.1rem 0.7rem 0.8rem 0.7rem;
    margin-bottom: 0.5rem;
  }
}
@media (max-width: 600px) {
  .neptune-footer {
    padding: 60px 0 0 0;
  }
  .neptune-footer__glitch-wrap {
    margin-top: 18px;
    margin-bottom: 18px;
  }
  .neptune-footer__panels {
    flex-direction: column;
    align-items: stretch;
    gap: 0.7rem;
    padding: 0 0.5rem 20px 0.5rem;
  }
  .neptune-footer__panel {
    min-width: 0;
    max-width: 100vw;
    padding: 0.8rem 0.5rem 0.6rem 0.5rem;
    margin-bottom: 0.3rem;
    transform: none !important;
  }
  .neptune-footer__panel--nav .neptune-footer__nav-list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.7rem;
  }
  .neptune-footer__nav-link {
    padding: 0.45rem 1rem;
    font-size: 0.98rem;
  }
  .neptune-footer__social-btn {
    width: 36px;
    height: 36px;
  }
}

/* End Neptune Mobi Apps Footer */
