/* theme.css */

@font-face {
  font-family: 'HelveticaExtraBold';
  src: url('../fonts/Helvetica-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}
body {
  margin: 0;
 background-color: #0300f5 !important;
  color: white;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  overflow-x: hidden;

}
.heading-bold {
  font-family: 'HelveticaExtraBold', sans-serif;
  font-weight: 800;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: -0.5px;
  margin: 0;
  padding: 0;
}

.animated-headline {
   font-size: 7vw;
  font-weight: 900;
  letter-spacing: 0.1em;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  position: relative;
  height: 1.2em;
}

.animated-headline span {
  display: inline-block;
  opacity: 1;
  transition: opacity 0.4s ease;
  min-width: 0.4em;
}

.animated-headline .hidden {
  opacity: 0;
}

.animated-headline.pdf-only {
  justify-content: center;
}



a {
  color: white;
  text-decoration: none;
  font-size: 12px;
}

.site-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 20px;
  position: absolute;
  width: 100%;
  top: 0;
  z-index: 10;
}

.top-left,
.top-right {
  font-size: 12px;
  font-weight: 600;
}

.top-nav {
  display: flex;
  gap: 15px;
  font-size: 12px;
  font-weight: 500;
}


.navbar .navbar-brand,
.navbar .nav-link,
.navbar div {

  font-size: 12px;
}

.navbar .nav-link.active {
  font-weight: 600;
}

.navbar .nav-link {
  font-weight: 500;

}

.navbar .navbar-brand,
.navbar div a {
  font-weight: 600;
}


.hero {
 background-color: #0300f5; /* your blue */
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.hero-title {
  font-size: 8vw;
  font-weight: 900;
  margin: 0;

  color: white;
  line-height: 1;
}


.overlay-content {
  position: relative;
  z-index: 1;
}


      .huge-number {
      font-size: 20vw;
      line-height: 1;
    }
    .badge-box {
      background-color: white;
      color: #0000FF;
      border-radius: 0.5rem;
      padding: 1rem;
      font-weight: 500;
    }
    .category-list {
      font-size: 1.2rem;
      font-weight: bold;
    }
    .category-list li::marker {
      color: white;
    }


     .custom-card {
      border-radius: 1rem;
      background-color: #fff;
      color: #0000FF;
      padding: 2rem;
    }

    .revenue-text {
      font-weight: 900;
    }

    .big-number {
      font-size: 6rem;
      font-weight: 900;
    }

    .icon-up {
      background-color: #f0f0ff;
      border-radius: 0.5rem;
      padding: 0.3rem 0.6rem;
      font-size: 1.2rem;
      display: inline-block;
    }

    .graph-img {
      max-width: 100%;
      height: auto;
    }

    @media (max-width: 768px) {
      .big-number {
        font-size: 3rem;
      }
    }




:root {
  --brand-blue: #0033FF; /* Update this to match your exact brand blue */
}

.text-brand-blue {
  color: var(--brand-blue) !important;
}

.footer .form-control:focus {
  box-shadow: none;
}

/* Blue input with white text/placeholder */
.email-input {
  background-color: var(--brand-blue);
  color: #ffffff;
  border: none;
  border-radius: 0;
  padding-left: 0.5rem;
}

.email-input::placeholder {
  color: #ffffff;
  opacity: 0.8;
}

.email-input:focus {
  background-color: var(--brand-blue);
  color: #ffffff;
  box-shadow: none;
  border: none;
}

/* Arrow styling */
.email-arrow {
  background-color: var(--brand-blue);
  color: #ffffff;
  border: none;
  border-radius: 0;
  font-weight: bold;
}


/* ─── FOOTER OVERRIDE ─── */
/* Paste this into your main.css or inside a <style> tag in the layout */

.footer.bg-white {
    background: #0300f5 !important;
    color: #ffffff !important;
    border-radius: 15px 15px 0 0;
    padding: 0 !important;
    font-family: 'Inter', sans-serif;
}

.footer .container-fluid {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 !important;
}

.footer .row {
    margin: 0;
    --bs-gutter-y: 0 !important;
}

.footer .row > [class*="col-md"] {
    padding: 50px 40px;
    border-right: 1px dashed rgba(255,255,255,0.60);
}

.footer .row > [class*="col-md"]:last-child {
    border-right: none;
}

/* All text white */
.footer,
.footer p,
.footer a,
.footer label,
.footer .text-brand-blue,
.footer .fw-bold,
.footer .fw-medium,
.footer .small {
    color: #ffffff !important;
}

.footer a {
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.footer a:hover {
    opacity: 0.6;
    color: #ffffff !important;
}

/* Tagline */
.footer .fs-5.fw-bold {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    line-height: 1.3;
    margin-bottom: 25px !important;
}

/* Labels */
.footer .small.fw-medium {
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px;
}

/* Newsletter */
.footer .newsletter {
    margin-top: 25px !important;
}

.footer .newsletter .form-label {
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #ffffff !important;
    margin-bottom: 10px !important;
}

.footer .newsletter .input-group {
    border: 1px dashed rgba(255,255,255,0.60);
    border-radius: 0;
    overflow: hidden;
    transition: border-color 0.3s;
}

.footer .newsletter .input-group:focus-within {
    border-color: #ffffff;
    border-style: solid;
}

.footer .newsletter .email-input {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    padding: 14px 18px;
    font-family: 'Inter', sans-serif;
    font-size: 0.85rem;
    font-weight: 500;
    box-shadow: none !important;
}

.footer .newsletter .email-input::placeholder {
    color: rgba(255,255,255,0.4);
}

.footer .newsletter .email-arrow {
    background: transparent !important;
    border: none !important;
    border-left: 1px dashed rgba(255,255,255,0.60) !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    padding: 14px 20px;
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.footer .newsletter .email-arrow:hover {
    background: #ffffff !important;
    color: #000000 !important;
}

/* Middle nav links */
.footer .list-unstyled li a {
    display: flex !important;
    align-items: center;
    padding: 12px 0 !important;
    margin-bottom: 0 !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 1px dashed rgba(255,255,255,0.60);
    transition: padding-left 0.3s, opacity 0.3s;
}

.footer .list-unstyled li:first-child a {
    border-top: 1px dashed rgba(255,255,255,0.60);
}

.footer .list-unstyled li a:hover {
    padding-left: 10px !important;
    opacity: 0.7;
}

/* Right column alignment */
.footer .text-md-end .list-unstyled li a {
    justify-content: flex-end;
}

.footer .text-md-end .list-unstyled li a:hover {
    padding-left: 0 !important;
    padding-right: 10px;
}

.footer .text-md-end p {
    font-size: 0.8rem !important;
    line-height: 1.8;
    margin-top: 20px;
}

/* Big brand text at bottom */
.footer .hero-title {
    background-color: transparent !important;
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: clamp(2.5rem, 8vw, 7rem) !important;
    font-weight: 900 !important;
    letter-spacing: -2px;
    line-height: 1 !important;
    margin-top: 0 !important;
    padding: 40px 40px 50px;
    border-top: 1px dashed rgba(255,255,255,0.60);
    text-align: center;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 768px) {
    .footer .row > [class*="col-md"] {
        padding: 35px 25px;
        border-right: none;
        border-bottom: 1px dashed rgba(255,255,255,0.60);
    }

    .footer .row > [class*="col-md"]:last-child {
        border-bottom: none;
    }

    .footer .text-md-end .list-unstyled li a {
        justify-content: flex-start;
    }

    .footer .hero-title {
        padding: 30px 20px 40px;
    }
}