@charset "UTF-8";
:root {
  --black: #000000;
  --black-haze: #f1f2f2;
  --brand-navy: #130034;
  --brand-cyan: #3fc7f9;
  --brand-blue: #4a88f4;
  --brand-purple: #7a66f1;
  --brand-gradient: linear-gradient(90deg, #3fc7f9 0%, #4a88f4 54%, #7a66f1 100%);
  --white: #ffffff;
  /* Legacy JSON / partials — map to new brand */
  --science-blue: #130034;
  --selective-yellow: #7a66f1;
  --science-blue-light: #4a88f4;
  --science-blue-pastel: #d4dcff;
  --selective-yellow-pastel: #e8e4fc;
  --athens-gray: #f1f2f2;
  --athens-gray-dark: #c3c4c6;
  --font-size-36px: 36px;
  --font-size-48px: 48px;
  --font-size-56px: 56px;
  --font-size-l: 18px;
  --font-size-m: 16px;
  --font-size-s: 14px;
  --font-size-xl: 20px;
  --font-size-xxl: 24px;
  --font-size-xxxl: 32px;
  --font-size-xxxxl: 40px;
  --font-family-roboto: "Roboto", Helvetica;
}

.header-logo {
  display: block;
  height: 44px;
  width: auto;
  max-height: 48px;
  max-width: min(420px, 72vw);
}

.headingdesktoph1 {
  font-family: "Roboto", Helvetica;
  font-size: 56px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoph2 {
  font-family: "Roboto", Helvetica;
  font-size: 48px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoph3 {
  font-family: "Roboto", Helvetica;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoph4 {
  font-family: "Roboto", Helvetica;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoph5 {
  font-family: "Roboto", Helvetica;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoph6 {
  font-family: "Roboto", Helvetica;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingdesktoptagline {
  font-family: "Roboto", Helvetica;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0;
}

.headingmobileh2 {
  font-family: "Roboto", Helvetica;
  font-size: 36px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

.headingmobileh6 {
  font-family: "Roboto", Helvetica;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}

footer {
  margin-top: 0 !important;
}

.footer {
  flex: 0 0 auto;
  position: relative;
}

.footer-links,
.footer-links-1 {
  align-items: flex-start;
  display: inline-flex;
  gap: 24px;
}

.footer-links-item,
.footer-links-item-1 {
  color: #ffffff;
  font-weight: 400;
  line-height: 21px;
  margin-top: -1px;
  position: relative;
  text-decoration: underline;
  white-space: nowrap;
  width: fit-content;
}

.credits,
.credits-1 {
  align-items: flex-start;
  align-self: stretch;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 32px;
  position: relative;
  width: 100%;
}

.x2025-fremont-globa,
.x2025-fremont-globa-1 {
  color: #ffffff;
  font-weight: 400;
  line-height: 21px;
  margin-top: -1px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.privacy-policy {
  color: #ffffff;
  font-weight: 400;
  line-height: 2px;
  margin-top: -1px;
  position: relative;
  text-decoration: underline;
  white-space: nowrap;
  width: fit-content;
}

.contact-us {
  display: flex;
  flex-direction: column;
  position: relative;
}

.contact-us-form-anchor {
  scroll-margin-top: 5rem;
}

.contact-us-faq-band,
.contact-us-info-band {
  box-sizing: border-box;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  max-width: 100vw;
}

.contact-us-faq-band {
  background-color: #d4dcff;
  padding: 2rem 1rem;
}
@media (min-width: 768px) {
  .contact-us-faq-band {
    padding: 2.5rem 2rem;
  }
}

.contact-us-info-band {
  background-color: #e8e4fc;
  padding: 2rem 0 0;
}
@media (min-width: 768px) {
  .contact-us-info-band {
    padding: 2.75rem 0 0;
  }
}

.contact-form-section {
  max-width: 100%;
}

.frm-input,
.frm-textarea {
  border-color: #7a66f1;
}
.frm-input:focus,
.frm-textarea:focus {
  border-color: #4a88f4;
  box-shadow: 0 0 0 0.2rem rgba(74, 136, 244, 0.25);
}

.frm-check {
  border-color: #7a66f1;
  background-color: #f1f2f2;
  width: 1.125rem;
  height: 1.125rem;
}
.frm-check:checked {
  background-color: #7a66f1;
  border-color: #7a66f1;
}

.faq-section {
  width: 100%;
}

.faq-section-inner {
  box-sizing: border-box;
}

.faq-contact-accordion {
  --bs-accordion-bg: #ffffff;
  --bs-accordion-border-color: #7a66f1;
  --bs-accordion-border-radius: 1rem;
  --bs-accordion-inner-border-radius: calc(1rem - 1px);
  --bs-accordion-btn-color: #130034;
  --bs-accordion-btn-bg: #ffffff;
  --bs-accordion-btn-focus-border-color: #4a88f4;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.2rem rgba(#4a88f4, 0.25);
  --bs-accordion-active-color: #130034;
  --bs-accordion-active-bg: #e8e4fc;
}
.faq-contact-accordion .accordion-item {
  border: 1px solid #7a66f1;
  border-radius: 1rem;
  overflow: hidden;
  margin-bottom: 0;
}
.faq-contact-accordion .accordion-button {
  font-size: 18px;
  font-weight: 600;
  box-shadow: none;
}
.faq-contact-accordion .accordion-button:not(.collapsed) {
  box-shadow: none;
}
.faq-contact-accordion .accordion-body {
  color: #130034;
  border-top: 1px solid rgba(122, 102, 241, 0.35);
}

.contact-info-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.icon-relume,
.icon-chevron-right-1,
.icon-chevron-right-4,
.icon-dribble-6,
.icon-linked-in-7,
.icon-x-7,
.icon-left-arrow-alt,
.icon-right-arrow-alt,
.icon-dribble {
  height: 24px;
  position: relative;
  width: 24px;
}

.feature-icon {
  height: 40px;
  margin-bottom: 16px;
}

.btn-icon {
  height: 16px;
  width: 16px;
}

.mega-menu-1,
.mega-menu-1-1 {
  align-items: flex-start;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-color: #7a66f1;
  display: flex;
  flex: 0 0 auto;
  position: relative;
  width: 1440px;
}

.page-group,
.page-group-one-1,
.page-group-three-1,
.page-group-four-1 {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px;
  position: relative;
  width: 320px;
}

.menu-item-1 {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 12px;
  height: 61px;
  padding: 8px 0;
  position: relative;
  width: 320px;
}

.menu-3 {
  align-items: flex-start;
  display: flex;
  flex: 1;
  gap: 32px;
  padding: 32px 32px 32px 64px;
  position: relative;
}

.menu-list-3 {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px;
  padding: 32px 32px 32px 64px;
  position: relative;
}

.link-list-1 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  width: fit-content;
}

.nav-link-dropdown,
.nav-link-dropdown-1 {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 4px;
  justify-content: center;
  position: relative;
}

.chevron-down,
.chevron-down-1 {
  height: 24px;
  position: relative;
  width: 24px;
}

.our-services,
.our-services-1,
.about-us,
.about-us-1,
.contact-us-1,
.blog-posts,
.blog-posts-1,
.surname,
.surname-1,
.fa-qs,
.fa-qs-1,
.testimonials-1,
.careers,
.careers-1,
.resources,
.resources-1,
.support-center,
.support-center-1 {
  color: #130034;
  font-weight: 400;
  line-height: 24px;
  margin-top: -1px;
  position: relative;
  white-space: nowrap;
  width: fit-content;
}

.bullet-icon {
  height: 24px;
  margin-right: 12px;
}

.placeholder-image {
  max-width: 100%;
  background: #e5e5e5;
}

.site-cta h2,
.site-cta p {
  color: #ffffff !important;
}

.cta-3 {
  align-items: flex-start;
  background-image: url(../img/cta---3--.png);
  background-position: 50% 50%;
  background-size: cover;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 80px;
  padding: 112px 64px;
  position: relative;
  width: 1440px;
}

.hero-banner .lead {
  font-weight: 400;
  color: inherit;
}

.hero-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 400px;
}

@media (min-width: 992px) {
  .hero-img {
    max-height: 738px;
  }
}
.hero-image {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  background: #e5e5e5;
}

.testimonial-avatar {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 50%;
}

.testimonial-logo {
  height: 32px;
}

.bg-fremont-blue {
  background-color: #130034 !important;
}

.bg-fremont-navy {
  background-color: #130034 !important;
}

.bg-fremont-haze {
  background-color: #f1f2f2 !important;
}

.bg-fremont-gradient {
  background: linear-gradient(90deg, #3fc7f9 0%, #4a88f4 54%, #7a66f1 100%) !important;
}

.bg-brand-lavender {
  background-color: #e8e4fc !important;
}

.bg-brand-blue-pastel {
  background-color: #d4dcff !important;
}

.text-fremont-blue {
  color: #130034 !important;
}

.text-fremont-navy {
  color: #130034 !important;
}

.text-fremont-white {
  color: #ffffff !important;
}

.text-fremont-cyan {
  color: #3fc7f9 !important;
}

.hero-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 400px;
}
@media (min-width: 992px) {
  .hero-image {
    max-height: 738px;
  }
}

.testimonial-avatar {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 50%;
}

.team-card-img {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  height: auto;
  object-fit: cover;
  object-position: center top;
}

.footer-logo {
  display: block;
  height: 40px;
  width: auto;
  max-height: 44px;
  max-width: min(360px, 85vw);
}

.site-section {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

body > section.site-section:last-of-type {
  padding-bottom: 2rem;
}

*, *::before, *::after {
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  font-family: "Roboto", Helvetica, Helvetica, Arial, sans-serif !important;
}

@media (max-width: 991.98px) {
  .mega-menu-inner {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .mega-menu-col {
    min-width: 0 !important;
    width: 100% !important;
  }
}
@media (max-width: 991.98px) {
  .mega-menu-inner {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .mega-menu-col {
    min-width: 0 !important;
    width: 100% !important;
  }
}
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #130034;
  --bs-btn-border-color: #130034;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(33.9076923077, 0, 92.8);
  --bs-btn-hover-border-color: rgb(33.9076923077, 0, 92.8);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(33.9076923077, 0, 92.8);
  --bs-btn-active-border-color: rgb(33.9076923077, 0, 92.8);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #130034;
  --bs-btn-disabled-border-color: #130034;
}

.btn-outline-primary {
  --bs-btn-color: #130034;
  --bs-btn-border-color: #130034;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #130034;
  --bs-btn-hover-border-color: #130034;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #130034;
  --bs-btn-active-border-color: #130034;
  --bs-btn-disabled-color: #130034;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #130034;
}

.btn-warning {
  --bs-btn-color: #fff;
  --bs-btn-bg: #7a66f1;
  --bs-btn-border-color: #7a66f1;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(97.6299401198, 73.9652694611, 238.4347305389);
  --bs-btn-hover-border-color: rgb(97.6299401198, 73.9652694611, 238.4347305389);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(97.6299401198, 73.9652694611, 238.4347305389);
  --bs-btn-active-border-color: rgb(97.6299401198, 73.9652694611, 238.4347305389);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #7a66f1;
  --bs-btn-disabled-border-color: #7a66f1;
}

.btn-outline-warning {
  --bs-btn-color: #7a66f1;
  --bs-btn-border-color: #7a66f1;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #7a66f1;
  --bs-btn-hover-border-color: #7a66f1;
}

.badge.bg-primary {
  background-color: #130034 !important;
}

.badge.bg-warning {
  background-color: #7a66f1 !important;
  color: #ffffff !important;
}

.btn-outline-light {
  --bs-btn-color: #fff;
  --bs-btn-border-color: #fff;
  --bs-btn-hover-color: #130034;
  --bs-btn-hover-bg: #fff;
  --bs-btn-hover-border-color: #fff;
  --bs-btn-active-color: #130034;
  --bs-btn-active-bg: #fff;
  --bs-btn-active-border-color: #fff;
  --bs-btn-disabled-color: rgba(255, 255, 255, 0.55);
  --bs-btn-disabled-border-color: rgba(255, 255, 255, 0.45);
}

.bullet-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  object-fit: contain;
  margin-top: 2px;
}

.feature-icon {
  width: 40px;
  height: 40px;
  object-fit: contain;
  margin-bottom: 0.75rem;
}