/* Applied after template CSS so Manrope wins over Inter / Plus Jakarta. */
:root {
  --saas-Inter: var(--font-manrope), "Manrope", sans-serif;
  --saas-Plus-Jakarta-Sans: var(--font-manrope), "Manrope", sans-serif;
  --saas-Be-Vietnam-Pro: var(--font-manrope), "Manrope", sans-serif;
  --saas-Lexend: var(--font-manrope), "Manrope", sans-serif;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
button,
input,
textarea,
.navbar,
.btn_text,
.saas_btn,
.section_title,
.section_title_four,
.app_banner_content,
.app_features_content,
.service_item,
.fact_item,
.f_widget,
.legal_page {
  font-family: var(--font-manrope), "Manrope", sans-serif;
}

/* Repliqa wordmark (~2.67:1). Keep nav compact; footer slightly larger. */
.navbar .navbar-brand.sticky_logo img {
  height: 32px;
  width: auto;
  max-height: 32px;
}

@media (min-width: 992px) {
  .navbar .navbar-brand.sticky_logo img {
    height: 36px;
    max-height: 36px;
  }
}

.f_widget.f_about_widget .f_logo img {
  height: 40px;
  width: auto;
  max-width: 140px;
}

/* Sticky nav: hide on scroll down, show on scroll up */
.navbar.sticky_nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  transition:
    transform 0.28s ease,
    background-color 0.28s ease,
    box-shadow 0.28s ease;
  will-change: transform;
}

.navbar.sticky_nav.navbar_fixed {
  position: fixed;
  transform: translateY(0);
}

.navbar.sticky_nav.navbar_fixed.navbar_hidden {
  transform: translateY(-110%);
  pointer-events: none;
}

/* Keep Add to Chrome CTA pinned on the right of the nav bar */
.navbar .container {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%;
}

.navbar .navbar-brand {
  order: 1;
  flex-shrink: 0;
  margin-right: 0;
}

.navbar .navbar-collapse {
  order: 2;
  flex-basis: auto;
  flex-grow: 1;
}

.navbar .nav_right {
  display: flex;
  align-items: center;
  order: 3;
  margin-left: auto;
  flex-shrink: 0;
}

.navbar .navbar-toggler {
  display: none !important;
}

@media (min-width: 992px) {
  .navbar .navbar-brand {
    margin-right: 45px;
  }

  .navbar .nav_right .signup_btn {
    margin-left: 10px;
  }
}

/* Small screens: logo left, CTA flush top-right, no hamburger / links */
@media (max-width: 991px) {
  .navbar > .container,
  .navbar .container {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .navbar .navbar-collapse {
    display: none !important;
  }

  .navbar .navbar-brand {
    margin-right: 0 !important;
  }

  .navbar .nav_right {
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .navbar .nav_right .signup_btn {
    margin-left: 0 !important;
    padding: 10px 14px;
    font-size: 14px;
  }

  /* Hero: only heroOne, horizontally centered */
  .saas_banner_area_five .app_banner_img {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 32px auto 0 !important;
    position: relative;
  }

  .saas_banner_area_five .app_banner_img .app_img {
    position: relative !important;
    width: auto !important;
    max-width: 100%;
    margin: 0 auto !important;
    left: auto !important;
    right: auto !important;
  }

  .saas_banner_area_five .app_banner_img .app_img.two,
  .saas_banner_area_five .app_banner_img .app_shap_one,
  .saas_banner_area_five .app_banner_img .app_shap_two {
    display: none !important;
  }

  .saas_banner_area_five .heroshot__one {
    width: min(280px, 72vw) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    transform: none !important;
  }

  .saas_banner_area_five .heroshot__two {
    display: none !important;
  }
}

/* Accordion open/close animation */
.repliqa_accordion .accordion-item.is-active:before {
  height: 100%;
}

.repliqa_accordion .accordion-collapse {
  display: grid !important;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease;
  visibility: visible !important;
  height: auto !important;
  overflow: hidden;
}

.repliqa_accordion .accordion-collapse.is-open {
  grid-template-rows: 1fr;
}

.repliqa_accordion .accordion-collapse-inner {
  overflow: hidden;
  min-height: 0;
}

.repliqa_accordion .accordion-body {
  display: block !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  padding: 0 30px 24px 30px !important;
  max-width: 640px;
  opacity: 0;
  transform: translateY(-6px);
  transition:
    opacity 0.28s ease 0.05s,
    transform 0.28s ease 0.05s;
}

.repliqa_accordion .accordion-collapse.is-open .accordion-body {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .repliqa_accordion .accordion-collapse,
  .repliqa_accordion .accordion-body {
    transition: none;
  }
}

/* Equal-height service cards */
.service_category_area .row {
  display: flex;
  flex-wrap: wrap;
  row-gap: 30px;
}

.service_category_area .row > [class*="col-"] {
  display: flex;
}

.service_category_area .service_item {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
}

.service_category_area .service_item p {
  flex-grow: 1;
}

.service_category_area .service_lucide_icon {
  width: 32px;
  height: 32px;
  color: #fff;
  flex-shrink: 0;
}

