body
{
    background-color: rgb(7, 18, 46);
}

.hero-section {
  position: relative;
  min-height: 70vh;
  background: url('./assets/sec_building.png') center / cover no-repeat;
}

/* Dark overlay */
.hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

/* Content sits above image + overlay */
.hero-content {
  position: relative;
  z-index: 2;
}

/* Form styling */
.hero-form {
  max-width: 420px;
}

.hero-form {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(12px);
  padding: 1.5rem;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.feature-section {
  background-color: rgb(11, 26, 65);
  padding: 4rem 0;
  color: #fff;
}

.feature-card {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  padding: 2rem 1.5rem;
  height: 100%;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35);
}

.feature-icon {
  height: 64px;
  margin-bottom: 1.25rem;
}

.feature-card h5 {
  margin-bottom: 0.75rem;
  font-weight: 600;
}

.feature-card p {
  font-size: 0.95rem;
  opacity: 0.85;
}

.feature-card {
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.losses-section {
  background-color: rgb(11, 26, 65);
  color: #fff;
}

.losses-section h2 {
  font-weight: 600;
}

.loss-card {
  max-width: 600px;
  background: rgba(255, 255, 255, 0.06);
  border-radius: 18px;
  padding: 2.5rem 2rem;
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.loss-amount {
  display: block;
  font-size: 1.8rem;
  font-weight: 700;
  color: #ff6b6b;
  margin-bottom: 1rem;
}

.loss-text {
  font-size: 1.05rem;
  opacity: 0.9;
  margin-bottom: 1.5rem;
}

.loss-source {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  font-size: 0.85rem;
  opacity: 0.75;
}

/* Carousel controls */
.carousel-control-prev-icon,
.carousel-control-next-icon {
  filter: invert(1);
}

.badges-section {
  background: #f8f9fa;
}

.badges-section h4 {
  font-weight: 600;
}

.badges-wrapper {
  opacity: 0.85;
}

.badge-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}

.badge-item img {
  height: 56px;
  filter: grayscale(100%);
  transition: filter 0.3s ease, transform 0.3s ease;
}

.badge-item span {
  font-size: 0.75rem;
  color: #6c757d;
}

/* Subtle trust interaction */
.badge-item:hover img {
  filter: grayscale(0%);
  transform: scale(1.05);
}

.site-footer {
  background: #f8f9fa;
  padding: 3rem 0 2rem;
  font-size: 0.9rem;
}

.site-footer a {
  color: #6c757d;
  text-decoration: none;
}

.site-footer a:hover {
  color: #0b1a41;
  text-decoration: underline;
}

.footer-integration {
  opacity: 0.9;
}

.qb-icon {
  height: 36px;
  width: auto;
}

.footer-links {
  font-weight: 500;
}

.footer-legal {
  max-width: 760px;
  margin: 0 auto;
  line-height: 1.5;
}

.site-footer {
  background: rgb(11, 26, 65);
  color: #fff;
}

.site-footer a {
  color: rgba(255,255,255,0.7);
}

.founder-section {
  background: #f8f9fa;
}

.founder-card {
  background: #fff;
  border-radius: 20px;
  padding: 2.5rem;
  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.founder-image img {
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%;
  border: 4px solid rgba(11, 26, 65, 0.1);
}

.founder-role {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: rgb(11, 26, 65);
}

.founder-content h3 {
  font-weight: 600;
}

.founder-content p {
  font-size: 0.95rem;
  color: #555;
}

#how-it-works #steps-column
{
    overflow: scroll; /* Hide the overflowing content */
    height: 520px;
}

.pricing-section {
  background: #f8f9fa;
}

.pricing-card {
  background: #fff;
  border-radius: 20px;
  padding: 2.5rem 2rem;
  height: 100%;
  box-shadow: 0 18px 40px rgba(0,0,0,0.08);
  position: relative;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pricing-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 60px rgba(0,0,0,0.12);
}

.pricing-card h5 {
  font-weight: 600;
}

.plan-subtitle {
  font-size: 0.9rem;
  color: #6c757d;
  margin-bottom: 1.5rem;
}

.feature-list {
  list-style: none;
  padding: 0;
  margin-bottom: 2rem;
}

.feature-list li {
  margin-bottom: 0.6rem;
  font-size: 0.9rem;
}

.pricing-card.popular {
  border: 2px solid rgb(11, 26, 65);
}

.badge-popular {
  position: absolute;
  top: -12px;
  right: 20px;
  background: rgb(11, 26, 65);
  color: #fff;
  font-size: 0.7rem;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  font-weight: 600;
}

.pricing-card.audit {
  background: linear-gradient(180deg, #ffffff, #f1f3f5);
}

.why-card {
  border-radius: 24px;
  padding: 2.5rem;
  box-shadow: 0 30px 60px rgba(0,0,0,0.15);
}

.dark-card {
  background: rgb(11, 26, 65);
  color: #fff;
}

.dark-card .text-muted {
  color: rgba(255,255,255,0.65) !important;
}

.stat-big {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
}

.stat-label {
  font-size: 0.8rem;
  text-transform: uppercase;
  opacity: 0.75;
}

.graph-placeholder {
  background: rgba(255,255,255,0.06);
  border-radius: 16px;
  padding: 1rem;
}

.card:hover {
  transform: translateY(-4px);
  transition: 0.2s ease;
}


/* 1. Define the animation that moves the content */
@keyframes marquee-scroll {
    0% {
        /* Start with the content visible */
        transform: translateX(0%);
    }
    100% {
        /* Move the content to the left by half its width (or more, depending on repeats) */
        /* Since we doubled the content in the HTML, we only need to move it by 50% */
        transform: translateX(-50%); 
    }
}

/* 2. Apply the animation to the content */
.scrolling-content {
    /* Set the animation properties: name, duration, speed curve, and loop infinitely */
    animation: marquee-scroll 20s linear infinite; /* Adjust 20s for speed */
    
    /* Ensure the content is wide enough to contain the logos/text */
    width: fit-content; 
    
    /* Optional: Pause the animation when the user hovers over it */
    &:hover {
        animation-play-state: paused;
    }
}

