/* standard mixins
-------------------------------------------------------------- */
/* responsive mixins
-------------------------------------------------------------- */
/**
 * Truncates a block of text to a given number of lines.
 */
@keyframes film-grain {
  0%, 100% {
    transform: translate(0, 0);
  }
  10% {
    transform: translate(-5%, -10%);
  }
  20% {
    transform: translate(-15%, 5%);
  }
  30% {
    transform: translate(7%, -25%);
  }
  40% {
    transform: translate(21%, 25%);
  }
  50% {
    transform: translate(-25%, 10%);
  }
  60% {
    transform: translate(15%, 0%);
  }
  70% {
    transform: translate(0%, 15%);
  }
  80% {
    transform: translate(25%, 35%);
  }
  90% {
    transform: translate(-10%, 10%);
  }
}
.ts-footer-menus .elementor-widget-n-menu .e-n-menu-heading {
  flex-direction: column;
}
.ts-footer-menus ul li a {
  padding: 8px 0 !important;
  transition: none !important;
}
.ts-footer-menus .elementor-widget-n-menu .e-n-menu-title.e-current, .ts-footer-menus .elementor-widget-n-menu .e-n-menu-title.e-current a {
  color: #ff4a4a !important;
}

.elementor-location-footer ul li a {
  padding: 8px 0 !important;
  transition: none !important;
}
.elementor-location-footer ul li a:hover {
  color: #fff !important;
}

.ts-footer-field {
  background: transparent;
  border: 1px solid #FFFFFF;
  padding: 12px;
  color: #FFFFFF;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1;
  border-radius: 4px;
  width: 100%;
}
.ts-footer-field::placeholder {
  color: #FFFFFF;
}

.mobile-footer .mobile-social-menu ul {
  display: flex;
  gap: 16px;
}
.mobile-footer .mobile-social-menu ul li .elementor-item {
  text-indent: -9999em;
  width: 40px !important;
  height: 40px !important;
}
.mobile-footer .mobile-social-menu ul li .elementor-item::after {
  content: "";
  width: 40px;
  height: 40px;
  display: block;
  opacity: 1 !important;
  background-image: url(../svg/social_icons.svg);
  background-repeat: no-repeat;
  border-radius: 2px;
  overflow: hidden;
}
.mobile-footer .mobile-social-menu ul li:nth-child(1) .elementor-item::after {
  background-position: 0px 0px;
}
.mobile-footer .mobile-social-menu ul li:nth-child(2) .elementor-item::after {
  background-position: -40px 0px;
}
.mobile-footer .mobile-social-menu ul li:nth-child(3) .elementor-item::after {
  background-position: -80px 0px;
}
.mobile-footer .mobile-social-menu ul li:nth-child(4) .elementor-item::after {
  background-position: -120px 0px;
}
.mobile-footer .mobile-social-menu ul li:nth-child(5) .elementor-item::after {
  background-position: -160px 0px;
}
.mobile-footer .mobile-location-menu ul {
  display: flex;
  gap: 16px;
  flex-direction: row !important;
}
.mobile-footer .mobile-location-menu ul li .e-n-menu-title {
  padding: 0 !important;
}
.mobile-footer .mobile-location-menu ul li .e-n-menu-title-text {
  text-indent: -9999em;
  width: 40px !important;
  height: 30px !important;
}
.mobile-footer .mobile-location-menu ul li .e-n-menu-title-text::after {
  content: "";
  width: 40px;
  height: 30px;
  display: block;
  opacity: 1 !important;
  background-image: url(../svg/location_flags.svg);
  background-repeat: no-repeat;
  border-radius: 2px;
  overflow: hidden;
}
.mobile-footer .mobile-location-menu ul li:nth-child(1) .e-n-menu-title-text::after {
  background-position: 0px 0px;
}
.mobile-footer .mobile-location-menu ul li:nth-child(2) .e-n-menu-title-text::after {
  background-position: -40px 0px;
}
.mobile-footer .mobile-location-menu ul li:nth-child(3) .e-n-menu-title-text::after {
  background-position: -80px 0px;
}
.mobile-footer .bordered-wrapper {
  border-top: 1px dashed #3c3a3f;
  padding: 32px 0 !important;
  margin-top: 32px;
}
.mobile-footer .footer-quick-links-container .quick-links-columns {
  flex-direction: column !important;
}

@media screen and (max-width: 640px) {
  .mobile-footer .bordered-wrapper {
    margin-top: 0;
  }
}
.solid-nav .elementor-location-footer .footer-cta {
  margin-top: 0 !important;
}

.elementor-button, .eael-creative-button {
  background-color: #4E4EF2 !important;
  border: 1px solid #4E4EF2 !important;
  border-radius: 4px !important;
  padding: 12px 32px !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  font-size: clamp(12px, 1vw, 14px) !important;
  color: #FFFFFF !important;
}
.elementor-button:hover, .eael-creative-button:hover {
  background-color: #3E28DD !important;
}
.elementor-button.white, .eael-creative-button.white {
  background-color: #FFFFFF !important;
  color: #3e28dd !important;
}
.elementor-button.white:hover, .eael-creative-button.white:hover {
  background-color: #d6d6d6 !important;
}
.elementor-button.outline-red, .eael-creative-button.outline-red {
  background-color: transparent !important;
  color: #ff4a4a !important;
  border: 1px solid #ff4a4a !important;
}
.elementor-button.outline-red:hover, .eael-creative-button.outline-red:hover {
  background-color: transparent !important;
  color: #FFFFFF !important;
}
.elementor-button.outline-white, .eael-creative-button.outline-white {
  background-color: transparent !important;
  color: #FFFFFF !important;
  border: 1px solid #FFFFFF !important;
}
.elementor-button.outline-white:hover, .eael-creative-button.outline-white:hover {
  background-color: transparent !important;
  color: #FFFFFF !important;
}

.outline-blue .elementor-button {
  background-color: transparent !important;
  color: #3e28dd !important;
  border: 1px solid #3e28dd !important;
}
.outline-blue .elementor-button:hover {
  background-color: transparent !important;
  color: #6775f4 !important;
}
.outline-blue.white-text .elementor-button {
  color: #FFFFFF !important;
}

.outline-blue-2 .elementor-button {
  background-color: transparent !important;
  color: #4E4EF2 !important;
  border: 1px solid #4E4EF2 !important;
}
.outline-blue-2 .elementor-button:hover {
  background-color: transparent !important;
  color: #6775f4 !important;
}
.outline-blue-2.white-text .elementor-button {
  color: #FFFFFF !important;
}

.outline-accent.white-text .elementor-button {
  color: #FFFFFF !important;
}
.outline-accent .elementor-button {
  background-color: transparent !important;
  color: #6775f4 !important;
  border: 1px solid #6775f4 !important;
}
.outline-accent .elementor-button:hover {
  background-color: #FFFFFF !important;
  color: #4E4EF2 !important;
}

.text-btn .elementor-button {
  background-color: transparent !important;
  color: #201e23 !important;
  border: none !important;
}
.text-btn .elementor-button:hover {
  background-color: transparent !important;
  color: #3e28dd !important;
}

.white-button .elementor-button, .white-btn .elementor-button {
  background-color: #FFFFFF !important;
  color: #4E4EF2 !important;
  border: none !important;
}
.white-button .elementor-button:hover, .white-btn .elementor-button:hover {
  background-color: #FFFFFF;
  color: #6775f4 !important;
}

#main_nav .menu_wrapper {
  justify-content: space-around !important;
}
#main_nav .nav_menu_item {
  padding: 16px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 20px;
  max-width: 480px;
  align-self: flex-start !important;
}
#main_nav .nav_menu_item p {
  font-size: 14px;
  line-height: 20px;
}
#main_nav .nav_menu_item .nav_title {
  font-size: 20px;
  line-height: 28px;
  margin-bottom: 4px;
  display: block;
}
#main_nav .nav_menu_item:hover {
  background-color: #870839;
}

.transparent-white-nav .main-nav-container, .transparent-dark-nav .main-nav-container, .solid-nav .main-nav-container {
  background: transparent !important;
  box-shadow: none !important;
  position: fixed !important;
  transition: background-color 0.15s ease;
}
.transparent-white-nav .home-hero, .transparent-dark-nav .home-hero, .solid-nav .home-hero {
  padding-top: 128px !important;
  overflow-x: hidden;
}
.transparent-white-nav .ts-inner-hero, .transparent-dark-nav .ts-inner-hero, .solid-nav .ts-inner-hero {
  padding-top: 128px !important;
}
.transparent-white-nav .ts-inner-hero.secondary-text-bg, .transparent-dark-nav .ts-inner-hero.secondary-text-bg, .solid-nav .ts-inner-hero.secondary-text-bg {
  padding-top: 64px !important;
}

.scrolled-logo {
  display: none;
}

#main-logo-white {
  display: none;
}

.transparent-white-nav #main-logo-white, .solid-nav #main-logo-white {
  display: none;
}
.transparent-white-nav .scrolled-logo, .solid-nav .scrolled-logo {
  display: none;
}
.transparent-white-nav .e-n-menu-title-text:not(.elementor-location-footer .e-n-menu-title-text), .solid-nav .e-n-menu-title-text:not(.elementor-location-footer .e-n-menu-title-text) {
  color: #3c3a3f !important;
}
.transparent-white-nav .scrolled, .solid-nav .scrolled {
  background-color: #FFFFFF !important;
}

.solid-nav {
  padding-top: 100px;
}
.solid-nav .main-nav-container {
  background: #FFFFFF !important;
  top: 0 !important;
}

.transparent-dark-nav {
  /*
  #main-logo {
      display: none;
  }

  #main-logo-white {
      display: block;
  }
  */
}
.transparent-dark-nav .elementor-widget-n-menu .e-n-menu-title:not(.e-current):not(:hover) .e-n-menu-dropdown-icon i {
  color: #FFFFFF !important;
}
.transparent-dark-nav .scrolled-logo {
  display: none;
}
.transparent-dark-nav .outline-blue-2 .elementor-button {
  color: #FFFFFF !important;
}
.transparent-dark-nav .outline-blue-2 .elementor-button:hover {
  background-color: transparent !important;
  color: #6775f4 !important;
}
.transparent-dark-nav .jki-menu-11-light::before {
  color: #FFFFFF;
}
.transparent-dark-nav .e-n-menu-title-text:not(.elementor-location-footer .e-n-menu-title-text) {
  color: #FFFFFF !important;
}
.transparent-dark-nav #login-button a {
  color: #FFFFFF !important;
}
.transparent-dark-nav #login-button a:hover {
  color: #ff4a4a !important;
}
.transparent-dark-nav .main-nav-container .outline-blue .elementor-button {
  color: #FFFFFF !important;
}
.transparent-dark-nav .main-nav-container .outline-blue .elementor-button:hover {
  color: #6775f4 !important;
}
.transparent-dark-nav .scrolled {
  background-color: #FFFFFF !important;
}
.transparent-dark-nav .scrolled .e-n-menu-title-text:not(.elementor-location-footer .e-n-menu-title-text) {
  color: #201e23 !important;
}
.transparent-dark-nav .scrolled .elementor-widget-n-menu .e-n-menu-title:not(.e-current):not(:hover) .e-n-menu-dropdown-icon i {
  color: #201e23 !important;
}
.transparent-dark-nav .scrolled #main-logo {
  display: none;
}
.transparent-dark-nav .scrolled #main-logo-white {
  display: none;
}
.transparent-dark-nav .scrolled .scrolled-logo {
  display: block;
}
.transparent-dark-nav .scrolled .scrolled-logo img {
  width: 100% !important;
  min-width: 120px;
}
.transparent-dark-nav .scrolled #login-button a {
  color: #201e23 !important;
}
.transparent-dark-nav .scrolled #login-button a:hover {
  color: #4E4EF2 !important;
}
.transparent-dark-nav .scrolled .outline-blue .elementor-button, .transparent-dark-nav .scrolled .outline-blue-2 .elementor-button {
  color: #4E4EF2 !important;
}
.transparent-dark-nav .scrolled .outline-blue .elementor-button:hover, .transparent-dark-nav .scrolled .outline-blue-2 .elementor-button:hover {
  color: #6775f4 !important;
}
.transparent-dark-nav .scrolled .jki-menu-11-light::before {
  color: #201e23;
}

.mega-wrapper {
  min-width: 1170px;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.2);
  left: 2%;
  right: 2%;
  width: calc(100vw - 4%) !important;
}
.mega-wrapper .elementor-icon {
  margin-top: 0 !important;
}

.ts-mob-menu .elementor-icon {
  margin-top: 0;
}

.elementor-widget-n-menu .e-n-menu-content > .e-con {
  animation-name: dropDown !important;
  animation-duration: var(--n-menu-open-animation-duration, 0.3s); /* You can also define a specific time, e.g., 0.3s */
}

@keyframes dropDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@media screen and (min-width: 1171px) {
  .transparent-white-nav .ts-inner-hero:not(.ts-text-hero), .transparent-dark-nav .ts-inner-hero:not(.ts-text-hero) {
    padding-top: 196px !important;
  }
}
@media screen and (min-width: 1171px) and (max-width: 1440px) {
  .main-nav-container {
    max-width: 100% !important;
  }
  #logo_container {
    width: 120px !important;
    max-width: 120px !important;
  }
  #main-logo {
    width: 120px !important;
    max-width: 120px !important;
  }
  #main-logo img {
    width: 100% !important;
  }
  #main_nav {
    max-width: 600px !important;
  }
  #main_nav .e-n-menu-title-text {
    font-size: 14px !important;
  }
}
@media screen and (min-width: 1441px) {
  #main_nav .e-n-menu-title-text {
    font-size: 16px !important;
  }
  .mega-wrapper {
    align-self: flex-start;
    left: 2%;
    right: 2%;
    width: calc(100vw - 4%) !important;
  }
}
.hero h1 span {
  color: #ff4a4a;
}
.hero .e-con-inner {
  position: relative;
  z-index: 10;
}

.grain-bg {
  position: relative;
  overflow: hidden;
  overflow: hidden;
}
.grain-bg::after {
  content: "";
  pointer-events: none;
  position: absolute;
  top: -100%;
  left: -100%;
  width: 300%;
  height: 300%;
  background: url("../png/grain-1.png") top left repeat;
  animation: film-grain 11s steps(10) infinite;
  z-index: 0;
}

.hero-content-wrapper {
  position: relative;
  z-index: 10;
}
.hero-content-wrapper .home-hero-img {
  display: flex !important;
  justify-content: center !important;
  width: 100vw !important;
  max-width: none !important;
  transform: none !important;
}
.hero-content-wrapper .home-hero-img img {
  display: block !important;
  max-width: 1440px !important;
}

.ts-inner-hero .video-shadow {
  box-shadow: 16px 16px 0px #201e23;
  border-radius: 8px;
  overflow: hidden;
}
.ts-inner-hero .e-con-inner {
  position: relative;
  z-index: 10;
}
.ts-inner-hero.dark-background {
  background: radial-gradient(ellipse at 75% 75%, #3c3a3f 0%, #111 100%);
}
.ts-inner-hero.ts-text-hero.red-logo-mark {
  background-image: url(../svg/logo_mark_blueprint_red.svg), linear-gradient(350deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.04) 12%, rgba(0, 0, 0, 0) 100%);
  background-size: 212px 237px, cover;
  background-position: 125% 110%, center center;
  background-repeat: no-repeat;
}
.ts-inner-hero.ts-text-hero.red-logo-mark.dark-background {
  background-image: url(../svg/logo_mark_blueprint_red.svg), radial-gradient(ellipse at 75% 75%, #3c3a3f 0%, #111 100%);
}
.ts-inner-hero.ts-text-hero.red-logo-mark.large-logo {
  background-size: 240px, cover;
  background-position: 105% 96px, center center;
}
.ts-inner-hero.ts-text-hero.red-logo-mark.large-logo > .e-con-inner {
  justify-content: flex-start;
}
.ts-inner-hero.plans-bg {
  background-position: 125% 150%, center center;
}
.ts-inner-hero.ts-text-hero.red-gantt {
  background-image: url(../svg/gantt.svg), linear-gradient(350deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.04) 12%, rgba(0, 0, 0, 0) 100%);
  background-size: 212px 237px, cover;
  background-position: 150% 110%, center center;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  /*
  .hero-content-wrapper {
      .home-hero-img {
          min-width: 1060px;
          margin-left: 50%;
          transform: translateX(-60%);
      }
  }
  */
  .ts-inner-hero .text-column {
    max-width: 640px;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark, .ts-inner-hero.ts-text-hero.red-gantt {
    background-size: 318px 355.5px, cover;
    background-position: 115% 120%, center center;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark.large-logo, .ts-inner-hero.ts-text-hero.red-gantt.large-logo {
    background-size: 480px, cover;
    background-position: 150% 96px, center center;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark.large-logo > .e-con-inner, .ts-inner-hero.ts-text-hero.red-gantt.large-logo > .e-con-inner {
    justify-content: flex-start;
  }
  .ts-inner-hero.ts-text-hero.red-gantt {
    background-size: 318px 355.5px, cover;
    background-position: 125% 140%, center center;
  }
  .ts-inner-hero.ts-text-hero.red-gantt .e-con-inner > div {
    width: 80%;
  }
  .ts-inner-hero.plans-bg {
    background-position: 125% -190%, center center;
  }
}
@media screen and (min-width: 768px) and (max-width: 1170px) {
  .hero-content-wrapper {
    overflow: hidden;
  }
}
@media screen and (min-width: 1171px) {
  /*
      .hero-content-wrapper .home-hero-img {
          min-width: 1060px;
          margin-left: 50%;
          transform: translateX(-70%);
        }
  */
  .ts-inner-hero .text-column {
    flex: 1 0 50%;
  }
  .ts-inner-hero h1 {
    font-size: clamp(44px, 3vw, 60px) !important;
    line-height: 1.25 !important;
  }
  .ts-inner-hero .video-shadow {
    box-shadow: 24px 24px 0px #201e23;
    border-radius: 8px;
    overflow: hidden;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark, .ts-inner-hero.ts-text-hero.red-gantt {
    background-size: 424px 474px, cover;
    background-position: 105% 125%, center center;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark.large-logo, .ts-inner-hero.ts-text-hero.red-gantt.large-logo {
    background-size: 600px, cover;
    background-position: 105% 96px, center center;
  }
  .ts-inner-hero.ts-text-hero.red-logo-mark.large-logo > .e-con-inner, .ts-inner-hero.ts-text-hero.red-gantt.large-logo > .e-con-inner {
    justify-content: flex-start;
  }
  .ts-inner-hero.ts-text-hero.red-gantt {
    background-size: 424px 474px, cover;
    background-position: 105% 125%, center center;
  }
  .ts-inner-hero.plans-bg {
    background-size: 407px 419.5px, cover !important;
    background-position: 105% 300%, center center !important;
  }
}
.white-icons svg, .white-icons .cls-1 {
  stroke: #FFFFFF !important;
  fill: none !important;
}

.red-icons svg, .red-icons .cls-1 {
  stroke: #ff4a4a !important;
  fill: none !important;
}

.blue-icons svg, .blue-icons .cls-1 {
  stroke: #4E4EF2 !important;
  fill: none !important;
}

.dark-red-icons.icon-border .elementor-icon {
  border: 1.5px solid #870839;
  padding: 8px;
  border-radius: 8px;
}
.dark-red-icons svg, .dark-red-icons .cls-1 {
  stroke: #870839 !important;
  fill: none !important;
}

.hover-white-icons:hover svg, .hover-white-icons:hover .cls-1 {
  stroke: #FFFFFF !important;
  fill: none !important;
}

.icon-border > div {
  align-self: flex-start !important;
}

.arrow-link .card-link p {
  display: flex;
  gap: 8px;
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: 600 !important;
  align-items: center;
}
.arrow-link .card-link p::after {
  content: "";
  width: 24px;
  height: 24px;
  margin-left: 0;
  background-image: url(../svg/arrowicons.svg);
  background-repeat: no-repeat;
  transition: margin-left 0.2s ease;
}
.arrow-link .card-link:hover p::after {
  margin-left: 4px;
}
.arrow-link.red-1 .card-link p::after {
  background-position: 0px 0;
}
.arrow-link.red-2 .card-link p::after {
  background-position: -24px 0;
}
.arrow-link.blue-1 .card-link p::after {
  background-position: -48px 0;
}
.arrow-link.blue-2 .card-link p::after {
  background-position: -72px 0;
}
.arrow-link.white-1 .card-link p::after {
  background-position: -96px 0;
}
.arrow-link.white-2 .card-link p::after {
  background-position: -120px 0;
}
.arrow-link:hover.hover-red-1 .card-link p::after {
  background-position: 0px 0;
}
.arrow-link:hover.hover-red-2 .card-link p::after {
  background-position: -24px 0;
}
.arrow-link:hover.hover-blue-1 .card-link p::after {
  background-position: -48px 0;
}
.arrow-link:hover.hover-blue-2 .card-link p::after {
  background-position: -72px 0;
}
.arrow-link:hover.hover-white-1 .card-link p::after {
  background-position: -96px 0;
}
.arrow-link:hover.hover-white-2 .card-link p::after {
  background-position: -120px 0;
}

.card {
  position: relative;
  z-index: 0;
}
.card .--eael-wrapper-link-tag {
  z-index: 1000 !important;
}
.card svg {
  fill: none !important;
}
.card p.elementor-icon-box-description {
  font-size: clamp(14px, 1.5vw, 16px);
  line-height: 1.5;
}
.card .card-link {
  display: flex;
  gap: 4px;
}
.card:hover .card-link {
  filter: brightness(1.15);
}
.card.hover-white-text:hover p {
  color: #FFFFFF !important;
}
.card.hover-red-link:hover .card-link p {
  color: #ff4a4a !important;
}

.border-card {
  border: 1px dashed #AEADB2;
}

.nav-card .arrow-title p {
  display: flex;
  gap: 8px;
  align-items: flex-end;
}
.nav-card .arrow-title p::after {
  content: "";
  width: 24px;
  height: 24px;
  margin-left: 0;
  background-image: url(../svg/arrownavtitle.svg);
  background-repeat: no-repeat;
  transition: margin-left 0.2s ease;
}
.nav-card:hover .arrow-title p {
  text-decoration: underline;
}
.nav-card:hover .arrow-title p::after {
  background-image: url(../svg/arrownavtitle_white.svg);
}

.carousel-container {
  overflow: hidden;
  white-space: nowrap;
  width: 100%; /* Full width container */
  padding: 32px 0 !important;
}
.carousel-container.no-padding {
  padding: 0 !important;
}
.carousel-container.no-greyscale .carousel-item img {
  filter: none;
}

.carousel-title {
  width: 100%;
  max-width: 100vw !important;
}

.carousel {
  display: flex;
  justify-content: flex-start !important;
  width: auto !important;
  transition: unset !important;
  will-change: transform;
  white-space: no-wrap;
  margin: 16px 0 !important;
}

.carousel-item {
  width: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  flex-shrink: 0; /* Prevent items from shrinking */
}
.carousel-item img {
  width: 100% !important;
  max-width: 96px !important;
  height: auto !important;
  filter: grayscale(1);
}
.carousel-item.invert img {
  filter: grayscale(1) invert(1);
}

.ts-testimonial-container {
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .carousel-item {
    width: 240px;
  }
  .carousel-item img {
    max-width: 128px !important;
  }
}
@media screen and (min-width: 1171px) {
  .ts-testimonial-container {
    overflow: visible;
  }
}
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.rc-wrapper .vertical-cevter, .rc-wrapper .rc-container {
  background-color: unset !important;
}
.rc-wrapper .vertical-cevter {
  flex-direction: column-reverse !important;
  gap: 32px !important;
}

.rc-content {
  width: 100% !important;
  margin: 0 !important;
  height: auto !important;
}
.rc-content .rc-heading {
  margin-bottom: 16px !important;
}
.rc-content .rc-heading h2 {
  color: #201e23 !important;
  margin-bottom: 16px !important;
}
.rc-content .rc-heading h2 span {
  color: #C8102E;
  font-family: "Trim", san-serif !important;
}
.rc-content .rc-lable label, .rc-content p {
  color: #3c3a3f !important;
  font-family: "Inter", sans-serif !important;
}
.rc-content .rc-slider {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.rc-content .rc-slider .rc-slider-rslt, .rc-content .rc-slider .rc-slider-rslt1 {
  color: #3c3a3f !important;
}
.rc-content .rangeslider-wrap {
  flex: 0 0 50% !important;
}
.rc-content .rangeslider-wrap .rc-input {
  width: 100%;
  flex: 1 1 100% !important;
}
.rc-content .rangeslider-wrap .rc-input .irs-line {
  height: 6px !important;
}
.rc-content .rangeslider-wrap .rc-input .irs-handle {
  width: 8px !important;
  border-radius: 2px !important;
}
.rc-content .rc-lable label {
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 32px !important;
  flex: 0 0 40%;
}

.rc-result {
  flex-direction: column !important;
  align-self: stretch !important;
}
.rc-result .w--scoro {
  height: auto !important;
  flex: 0 0 50% !important;
  margin: 0 !important;
  width: 100% !important;
}
.rc-result .w--scoro .inner-div1 {
  display: none !important;
  padding: 32px 0 !important;
}
.rc-result .w--scoro .inner-div2 {
  height: 100% !important;
  border-radius: 8px 8px 0 0 !important;
  background-color: #4E4EF2 !important;
  width: 100% !important;
  padding: 32px 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.rc-result .w--scoro .inner-div2 h2 {
  font-size: clamp(48px, 4vw, 64px) !important;
  line-height: 1 !important;
}
.rc-result .w--scoro.wo--scoro .inner-div2 {
  border-radius: 0 0 8px 8px !important;
  background-color: #3e28dd !important;
}
.rc-result .w--scoro.wo--scoro .inner-div2 h2, .rc-result .w--scoro.wo--scoro .inner-div2 p {
  color: #FFFFFF !important;
}

@media screen and (min-width: 801px) {
  .rc-content {
    width: 60% !important;
    margin: 0 6% 0 0 !important;
  }
  .rangeslider-wrap {
    flex: 0 0 60% !important;
  }
  .rangeslider-wrap .rc-input {
    width: 100%;
    flex: 1 0 100% !important;
  }
  .rangeslider-wrap .rc-input .irs-line {
    height: 6px !important;
  }
  .rangeslider-wrap .rc-input .irs-handle {
    width: 4px !important;
    border-radius: 2px !important;
  }
  .rc-result {
    width: 33% !important;
  }
  .rc-wrapper .vertical-cevter {
    flex-direction: row !important;
    gap: 32px !important;
  }
}
.customer_story_text_container {
  position: relative;
}
.customer_story_text_container::before {
  content: "";
  display: block;
  width: 100%;
  height: 220px;
  background: url(../png/white-stripes.png) no-repeat center center;
  background-size: contain;
  opacity: 0.4;
  position: absolute;
  left: 0;
  top: auto;
  bottom: -16px;
}

.customer_story_image_container {
  box-shadow: 24px 24px 0px #201e23;
}

.stat-container {
  gap: 0 !important;
}

.stat-text {
  font-size: clamp(32px, 5vw, 72px) !important;
  color: #201e23;
  font-family: "Trim", sans-serif !important;
  line-height: 1 !important;
}
.stat-text span {
  color: #C8102E !important;
}

.stat-description {
  line-height: 1 !important;
  font-size: clamp(14px, 2vw, 16px) !important;
}

.ts-faq-container, .ts-integrations-container, .ts-offer-container {
  background-position: -340px 23px !important;
  background-image: url(../svg/logo-mark-blueprint_blue.svg);
  background-repeat: no-repeat;
}
.ts-faq-container p, .ts-integrations-container p, .ts-offer-container p {
  font-size: clamp(14px, 1.5vw, 16px) !important;
}

.ts-integrations-container, .ts-offer-container {
  background-image: url(../svg/logo_mark_blueprint_red.svg);
  background-position: -392px 75px !important;
}

.ts-accordion {
  border: none !important;
}
.ts-accordion .e-n-accordion-item-title {
  display: flex;
  justify-content: space-between;
  padding-top: 32px;
}
.ts-accordion .e-n-accordion-item-title-text {
  font-family: "Trim", sans-serif !important;
}
.ts-accordion .e-n-accordion-item {
  border-top: 1px solid #6775f4 !important;
}
.ts-accordion .e-n-accordion-item:last-child {
  border-bottom: 1px solid #6775f4 !important;
}

.elementor-widget-n-accordion .e-n-accordion-item-title, :where(.elementor-widget-n-accordion .e-n-accordion-item > .e-con) {
  border: none !important;
}

@media screen and (min-width: 641px) {
  .ts-faq-container {
    background-position: -17.5% 120% !important;
  }
  .ts-integrations-container, .ts-offer-container {
    background-position: -80px 136% !important;
  }
}
@media screen and (min-width: 1170px) {
  .ts-faq-container, .ts-integrations-container, .ts-offer-container {
    background-position: -5% 105% !important;
    background-size: 540px;
  }
  .ts-integrations-container, .ts-offer-container {
    background-position: -5% 195% !important;
    background-size: 640px;
  }
}
.welcome-accordion.dark-background .e-n-accordion-item-title .e-n-accordion-item-title-text, .welcome-accordion.dark-background .e-n-accordion-item-title .e-n-accordion-item-title-icon span > i {
  color: #ff4a4a !important;
}
.welcome-accordion.dark-background p, .welcome-accordion.dark-background ul, .welcome-accordion.dark-background li, .welcome-accordion.dark-background i {
  color: #fff !important;
}

.footer-cta {
  width: calc(100% - 48px) !important;
  margin-left: 24px !important;
  border-bottom: 1px dashed #6A6374;
}

.ts-loop-item {
  --lineHeight: 22.4px;
  background: #FFFFFF;
  height: 100%;
  transition: all 0.2s ease-in-out !important;
}
.ts-loop-item .ts-post-category, .ts-loop-item .card-link {
  color: #4E4EF2 !important;
}
.ts-loop-item .ts-post-title {
  color: #201e23;
}
.ts-loop-item .ts-post-excerpt {
  color: #3c3a3f;
  position: relative;
  max-height: calc(var(--lineHeight) * 2);
  text-overflow: "...";
  overflow: hidden;
}
.ts-loop-item .ts-post-excerpt::after {
  content: "...";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0.25ch;
  width: 2ch;
  background: #FFFFFF;
  text-align: right;
  transition: all 0.2s ease-in-out;
}
.ts-loop-item:hover {
  background: #380724;
}
.ts-loop-item:hover .ts-post-category, .ts-loop-item:hover .card-link {
  color: #ff4a4a !important;
}
.ts-loop-item:hover .ts-post-title, .ts-loop-item:hover .ts-post-excerpt {
  color: #FFFFFF;
}
.ts-loop-item:hover .ts-post-excerpt {
  position: relative;
  max-height: calc(var(--lineHeight) * 2);
  text-overflow: "...";
  overflow: hidden;
}
.ts-loop-item:hover .ts-post-excerpt::after {
  content: "...";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0.25ch;
  width: 2ch;
  background: #380724;
  text-align: right;
  transition: all 0.2s ease-in-out;
}
.ts-loop-item.main-loop-item .ts-post-excerpt {
  color: #3c3a3f;
  position: relative;
  max-height: calc(var(--lineHeight) * 3);
  text-overflow: "...";
  overflow: hidden;
}
.ts-loop-item.main-loop-item .ts-post-excerpt::after {
  content: "...";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0.25ch;
  width: 2ch;
  background: #FFFFFF;
  text-align: right;
  transition: all 0.2s ease-in-out;
}
.ts-loop-item.main-loop-item:hover .ts-post-excerpt {
  color: #FFFFFF;
  position: relative;
  max-height: calc(var(--lineHeight) * 3);
  text-overflow: "...";
  overflow: hidden;
}
.ts-loop-item.main-loop-item:hover .ts-post-excerpt::after {
  content: "...";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0.25ch;
  width: 2ch;
  background: #380724;
  text-align: right;
  transition: all 0.2s ease-in-out;
}

.ts-tabs {
  margin: 24px 0;
}
.ts-tabs .e-n-tabs-heading {
  flex-basis: 341px !important;
}
.ts-tabs .e-n-tab-title-text {
  flex-direction: column !important;
  gap: 4px !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}
.ts-tabs .ts-tab-title {
  font-size: 18px !important;
  font-weight: 700 !important;
}
.ts-tabs img {
  max-width: 500px;
}

@media screen and (max-width: 1170px) {
  .ts-tabs .e-n-tab-title[aria-selected=true] {
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
    position: relative;
  }
  .ts-tabs .e-n-tab-title[aria-selected=true]::after {
    content: "";
    width: 16px;
    height: 16px;
    background-color: #870839;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%) rotate(45deg);
    z-index: 100;
  }
}
@media screen and (min-width: 1171px) {
  .ts-tabs img {
    max-width: 100%;
  }
}
.ts-scrolly-nav {
  position: sticky !important;
  z-index: 10 !important;
  top: 106px !important;
  border-radius: 8px;
  --progress: 0%;
  overflow: hidden;
}
.ts-scrolly-nav::after {
  z-index: 20;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 8px;
  content: "";
  width: var(--progress);
  background-color: #ff4a4a;
  transition: width 0.1s linear;
}
.ts-scrolly-nav .ts-scrolly-before, .ts-scrolly-nav .ts-scrolly-after {
  border: 1px dashed #AEADB2 !important;
  position: relative;
}
.ts-scrolly-nav .ts-scrolly-active {
  background-color: #380724 !important;
  color: #FFFFFF !important;
  border: 1px solid #380724 !important;
}
.ts-scrolly-nav .ts-scrolly-active p {
  color: #FFFFFF !important;
}

.scrolly-content-wrapper {
  position: relative;
  top: 16px;
}

.ts-scrolly-content:not(.wp-admin .ts-scrolly-content, .elementor-editor-active .ts-scrolly-content) {
  position: relative;
  z-index: 1;
  opacity: 0;
  transition: opacity 1s ease;
}
.ts-scrolly-content:not(.wp-admin .ts-scrolly-content, .elementor-editor-active .ts-scrolly-content).fadeIn {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .scrolly-content-wrapper img {
    max-width: 480px;
  }
}
@media screen and (min-width: 1171px) {
  .scrolly-content-wrapper {
    position: sticky !important;
    top: 272px;
  }
  .ts-scrolly-content {
    min-height: 100vh !important;
  }
  .ts-scrolly-nav {
    margin-bottom: 64px;
  }
}
.ts-table-data .table {
  border-radius: 8px !important;
  border: 1px solid #AEADB2;
}
.ts-table-data .compare-row .table {
  overflow-x: hidden !important;
}
.ts-table-data .compare-row table {
  min-width: unset !important;
  border-radius: 8px !important;
  background-color: #FFFFFF;
}
.ts-table-data .compare-row table thead tr {
  background: #4E4EF2;
  color: #FFFFFF;
  font-family: "Inter", sans-serif;
}
.ts-table-data .compare-row table thead tr th {
  font-weight: 700 !important;
  padding: 24px 32px;
  text-align: left;
}
.ts-table-data .compare-row table tbody td {
  font-weight: 700;
  color: #201e23;
  padding: 16px 32px;
  text-align: left;
  border-top: 1px solid #AEADB2;
  line-height: 1.25 !important;
}
.ts-table-data .compare-row table tbody td .hasFeature, .ts-table-data .compare-row table tbody td .notIncluded {
  width: 24px;
  height: 24px;
  display: block;
  position: relative;
}
.ts-table-data .compare-row table tbody td .hasFeature::after, .ts-table-data .compare-row table tbody td .notIncluded::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: url(../svg/check.svg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.ts-table-data .compare-row table tbody td .notIncluded::after {
  background-image: url(../svg/close.svg);
}

.ts-processors-table {
  font-size: 10px;
  line-height: 1.25;
  border: 1px solid #4E4EF2;
}

.ts-processors-table thead th {
  padding: 8px;
  background-color: #4E4EF2;
  color: #fff;
}

.ts-processors-table tbody td, .ts-processors-table tbody th {
  padding: 8px;
  color: #201e23;
}

.ts-processors-table tbody tr:nth-child(even) {
  background-color: #fff;
}

@media screen and (min-width: 1171px) {
  .ts-timeline {
    position: relative;
    counter-reset: timeline;
  }
  .ts-timeline::before {
    content: "";
    position: absolute;
    width: 1px;
    top: 5%;
    height: 90%;
    right: auto;
    left: 50%;
    border-left: 1px dashed #201e23;
    z-index: 0;
  }
  .ts-timeline > .e-con-inner {
    position: relative;
  }
  .ts-timeline > .e-con-inner::before, .ts-timeline > .e-con-inner::after {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: #201e23;
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .ts-timeline > .e-con-inner::before {
    top: calc(5% - 8px);
  }
  .ts-timeline > .e-con-inner::after {
    bottom: calc(5% - 8px);
  }
  .ts-timeline .timeline-text-col {
    counter-increment: timeline;
    position: relative;
  }
  .ts-timeline .timeline-text-col::before {
    content: counter(timeline);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-family: "Trim", sans-serif;
    font-size: 20px;
    letter-spacing: 2px;
    line-height: 1;
    color: #201e23;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    left: auto;
  }
  .ts-timeline .timeline-text-col:nth-child(-n+9)::before {
    content: "0" counter(timeline);
  }
  .ts-timeline .timeline-text-col:nth-child(odd)::before {
    right: -48px;
  }
  .ts-timeline .timeline-text-col:nth-child(even)::before {
    left: -48px;
  }
}
.ts-blog-container .ts-blog-filters .jet-filters-group {
  display: flex;
  gap: 8px;
  flex-direction: column !important;
}
.ts-blog-container .ts-blog-filters .jet-filter {
  flex: 1 1 33%;
}
.ts-blog-container .ts-blog-filters .jet-filter .jet-select {
  width: 100%;
  max-width: unset !important;
}
.ts-blog-container .ts-blog-filters .jet-filter select {
  width: 100%;
  border: 1px solid #201e23;
  background-color: #FFFFFF;
  border-radius: 4px;
  padding: 8px 16px;
  color: #201e23 !important;
  background: url(../svg/chevrondown.svg) no-repeat;
  background-position: calc(100% - 0.75rem) center !important;
  -moz-appearance: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 2rem !important;
}

@media screen and (min-width: 768px) {
  .ts-blog-container .ts-blog-filters .jet-filters-group {
    display: flex;
    gap: 24px;
    flex-direction: row !important;
  }
}
html {
  scroll-padding-top: 120px;
}

body,
p,
ul,
ol,
table {
  font-optical-sizing: auto !important;
}
body strong,
body b,
p strong,
p b,
ul strong,
ul b,
ol strong,
ol b,
table strong,
table b {
  font-weight: 700 !important;
}

h1,
h2,
h3,
h4 {
  font-family: "Trim", sans-serif !important;
  font-weight: 400 !important;
  text-wrap: pretty;
}
h1 span,
h2 span,
h3 span,
h4 span {
  color: #cc2939 !important;
}
h1 span.dark,
h2 span.dark,
h3 span.dark,
h4 span.dark {
  color: #870839 !important;
}
h1 span.primary,
h2 span.primary,
h3 span.primary,
h4 span.primary {
  color: #ff4a4a !important;
}

h2 {
  font-size: clamp(32px, 3vw, 42px) !important;
}

.hero-eyebrow h2 {
  font-family: "Trim", Sans-serif;
  text-transform: uppercase;
  line-height: 24px;
  letter-spacing: 2px;
  font-size: clamp(16px, 2vw, 24px) !important;
}

h4 {
  font-size: clamp(16px, 2vw, 24px) !important;
}

.elementor-post h3.elementor-post__title {
  line-height: 1.125 !important;
}

.newsletter-title h4 {
  position: relative;
  padding-left: 32px;
}
.newsletter-title h4::before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  display: block;
  background-image: url(../svg/envelope.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 24px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.portfolio-gallery-container .row-item-info {
  display: flex !important;
  flex-direction: column-reverse !important;
  gap: 8px !important;
}
.portfolio-gallery-container h3 {
  font-family: "Inter", sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.125 !important;
}
.portfolio-gallery-container .info-subtitle {
  font-size: 18px !important;
  line-height: 1.125 !important;
}
.portfolio-gallery-container .row-item {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.25) 15%, rgba(0, 0, 0, 0) 40%);
}
.portfolio-gallery-container .row-item:hover {
  background-image: none;
}

.elementor-widget-text-editor ul {
  list-style: disc !important;
}
.elementor-widget-text-editor ul li {
  margin-bottom: 8px !important;
  margin-left: 16px;
}

.rc-heading h2 {
  font-weight: 400 !important;
}

.no-fill {
  fill: none !important;
}
.no-fill svg {
  fill: none !important;
}

.img-link {
  position: relative;
  border-radius: 0px;
  transition: border-radius 0.3s ease;
}
.img-link p {
  color: #FFFFFF !important;
  font-weight: 500 !important;
  position: relative;
  z-index: 1;
  line-height: 1.125 !important;
}
.img-link::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #201e23;
  mix-blend-mode: multiply;
  opacity: 0.66;
  transition: all 0.3s ease;
  z-index: 0;
}
.img-link:hover {
  border-radius: 8px;
  overflow: hidden;
}
.img-link:hover::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #6775f4;
  mix-blend-mode: multiply;
  opacity: 1;
}

.referral-form-container .hs-form-70c7c5c2-7850-4dea-b8d6-08ce3c7ccccd_04fcb924-12d2-4662-937c-647f3a833be4 .hs-form-field label:not(.hs-error-msg) {
  color: #201e23 !important;
}

.solid-nav a:not(.elementor-button,
.elementor-button-link,
.elementor-location-footer a,
.eael-creative-button) {
  color: #4E4EF2 !important;
}
.solid-nav a:not(.elementor-button,
.elementor-button-link,
.elementor-location-footer a,
.eael-creative-button):hover {
  color: #6775f4 !important;
}

@media screen and (min-width: 768px) and (max-width: 1170px) {
  .heading-width {
    width: 100% !important;
  }
}

/*# sourceMappingURL=overrides.css.map */
