:root {
  --font-body: "Figtree", sans-serif;
  --body-size:16px;
  --body-line-height:1.6;
  --body-background:#ffffff;
  --body-small-size:14px;
  --body-small-line-height:1.6;
  --color-base:#5A5A7A;
  --color-base-dark:#162029;
  --color-accent:#FEBA29;
  --color-accent2:#2A5293;
  --border-color:#E9DFFF;
  --radius-sm:8px;
  --radius-12:12px;
  --radius-md:16px;
  --transition-base:0.3s;
  --blockquote-01:#F4F3FB;
  --gradient-x: linear-gradient(90deg, #3FADFF -4%, #9658FF 9.55%, #C252D8 17.13%, #E44EA5 26.89%, #FE7A29 66.48%, #F7BE00 100%);
  --brand-orange:#FE7A29;
  --brand-pink:#E44EA5;
  --brand-yellow:#F7BE00;
  --brand-purple-light:#C252D8;
  --brand-purple-dark:#9658FF;
  --brand-blue:#3FADFF;
  --brand-cyan:#4FDDFF;
  --brand-navy:#2A5293;
  --brand-dark:#1A1A2E;
}

/*
    Subpage Blocks
*/
/*
    Breadcrumbs
*/
.breadcrumbs {
  border-top: 1px solid var(--border-color);
  background-color: #ffffff;
  padding-top: 9.5px;
  padding-bottom: 9.5px;
  min-height: 36px;
}
@media (min-width: 576px) {
  .breadcrumbs {
    padding-top: 20px;
    padding-bottom: 20px;
    min-height: 62px;
  }
}
.breadcrumbs__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
  white-space: nowrap;
}
@media (min-width: 576px) {
  .breadcrumbs__list {
    gap: 19px;
  }
}
.breadcrumbs__item {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  font-size: 12px;
  line-height: 1.4;
  color: #1A1A2E;
  letter-spacing: 1%;
}
@media (min-width: 576px) {
  .breadcrumbs__item {
    font-size: 14px;
    gap: 21px;
    letter-spacing: 0.4px;
  }
}
.breadcrumbs__item:not(:last-child)::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1.5px solid #9090B0;
  border-right: 1.5px solid #9090B0;
  transform: rotate(45deg);
}
.breadcrumbs .breadcrumbs__link {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
  color: #9090B0;
}
@media (hover: hover) {
  .breadcrumbs .breadcrumbs__link:hover {
    color: var(--brand-orange);
  }
}

.pagination__holder {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 24px;
}
@media (min-width: 576px) {
  .pagination__holder {
    margin-top: 40px;
  }
}
.pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--border-color);
  color: #2A5293;
  border-radius: var(--radius-sm);
  background: #fff;
  cursor: pointer;
}
.pagination__list {
  display: flex;
  align-items: center;
  gap: 2px;
}
.pagination__list a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border-radius: var(--radius-sm);
  font-size: 14px;
  text-decoration: none;
  border: 1px solid var(--border-color);
  color: #2A5293;
  background: transparent;
  transition: color var(--transition-base), border-color var(--transition-base);
}
.pagination__list a:hover {
  color: #FE7A29;
}
.pagination__list a strong {
  font-size: 16px;
}
.pagination__list .is-active a {
  border-color: #FE7A29;
  color: #FE7A29;
}

.page-heading {
  --page-heading-indent: 40px;
  display: flex;
  flex-direction: column;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: var(--page-heading-indent);
  padding-bottom: var(--page-heading-indent);
  gap: 8px;
}
.page-heading:not(.page-heading--left) {
  justify-content: center;
  align-items: center;
}
.page-heading:not(.page-heading--left) .page-heading__description {
  text-align: center;
}
@media (min-width: 1101px) {
  .page-heading {
    min-height: 243px;
  }
}
@media (min-width: 769px) {
  .page-heading {
    --page-heading-indent: 90px;
    gap: 16px;
  }
}
@media (max-width: 768px) {
  .page-heading {
    --page-heading-indent: 60px;
  }
}
@media (max-width: 575px) {
  .page-heading {
    --page-heading-indent: 40px;
  }
}
.page-heading-single {
  display: grid;
  gap: 40px;
  align-items: center;
  padding: 40px 24px;
  max-width: 1272px;
  margin-left: auto;
  margin-right: auto;
}
.page-heading-single .page-heading-indent {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 768px) {
  .page-heading-single .page-heading-indent .tt-btn_type1 {
    margin-top: 7px;
  }
}
@media (min-width: 769px) {
  .page-heading-single .page-heading-indent {
    gap: 16px;
  }
}
@media (min-width: 576px) {
  .page-heading-single {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (min-width: 769px) {
  .page-heading-single {
    padding-top: 90px;
    padding-bottom: 90px;
    gap: 40px;
    grid-template-columns: 620fr 574fr;
  }
}
.page-heading__row {
  display: flex;
  align-items: center;
  gap: 16px;
}
.page-heading__data {
  color: #5A5A7A;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
}
.page-heading__label {
  display: inline-block;
  font-size: 10px;
  line-height: 1;
  font-weight: bold;
  padding: 8px 12px;
  max-width: fit-content;
  background-color: #ffffff;
  color: var(--color-accent2);
  border-radius: 100px;
  text-transform: uppercase;
}
@media (min-width: 576px) {
  .page-heading__label {
    font-size: 12px;
    padding: 12px 16px;
  }
}
.page-heading__title {
  font-weight: bold;
  color: #1A1A2E;
  font-size: 22px;
  line-height: 1.4;
}
@media (min-width: 576px) {
  .page-heading__title {
    font-size: 36px;
    line-height: 1.2;
  }
}
@media (min-width: 769px) {
  .page-heading__title {
    font-size: 40px;
    line-height: 1.4;
  }
}
.page-heading__description {
  max-width: 680px;
  font-size: 14px;
  line-height: 1.6;
}
@media (min-width: 576px) {
  .page-heading__description {
    font-size: 16px;
  }
}
.page-heading--limit > * {
  max-width: 680px;
  text-align: center;
}

/*
    Subpage Section
*/
/*
    Filter Grid
*/
.filter-nav__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}
.filter-nav__item {
  flex: 0 0 auto;
}
.filter-nav__link {
  -webkit-tap-highlight-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  min-height: 41px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.4px;
  font-weight: bold;
  text-decoration: none;
  color: #2A5293;
  background: #F8F7FF;
  border-radius: var(--radius-sm);
  text-transform: uppercase;
  transition: background var(--transition-base), color var(--transition-base);
}
@media (hover: hover) {
  .filter-nav__link:hover {
    color: var(--brand-orange);
  }
}
.filter-nav__link--active {
  background: #2A5293;
  color: #fff;
}

/*
    Cards
*/
.cards__grid {
  display: grid;
  gap: 20px;
}
@media (min-width: 576px) {
  .cards__grid--col-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 769px) {
  .cards__grid--col-4 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1101px) {
  .cards__grid--col-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 576px) {
  .cards__grid--col-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1101px) {
  .cards__grid--col-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.cards__grid--top-indent {
  margin-top: 40px;
}

.card2__item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  border-radius: var(--radius-md);
  border: 1px solid var(--border-color);
  padding: 7px;
}
.card2__img {
  width: 100%;
  height: 200px;
  position: relative;
}
.card2__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  object-fit: cover;
}
@media (min-width: 769px) {
  .card2__img {
    height: 193px;
  }
}
.card2__holder {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px 8px 13px 8px;
  font-size: 14px;
}
.card2__holder .tt-btn_link {
  margin-top: auto;
}
@media (min-width: 576px) {
  .card2__holder {
    padding: 24px 8px 14px 8px;
  }
}
.card2__row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.card2__label {
  background: rgba(254, 122, 41, 0.1);
  color: #FE7A29;
  font-weight: bold;
  border-radius: var(--radius-sm);
  min-height: 18px;
  padding: 6px 8px;
  font-size: 8px;
  line-height: 1;
  letter-spacing: 1%;
  text-transform: uppercase;
}
.card2__data {
  color: #5A5A7A;
  font-size: 12px;
  line-height: 1.2;
}
.card2__title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  color: #1A1A2E;
}
.card2__title a {
  text-decoration: none;
  color: #1A1A2E;
}
@media (hover: hover) {
  .card2__title a {
    transition: color var(--transition-base);
  }
  .card2__title a:hover {
    color: var(--brand-orange);
  }
}
.card2__description {
  padding-bottom: 14px;
}

.single-layout {
  line-height: 1.6;
}
.single-layout--width {
  max-width: 930px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1025px) {
  .single-layout--width .page-heading {
    padding-left: 60px;
    padding-right: 60px;
  }
}
.single-layout ul {
  display: grid;
  gap: 8px;
  margin-left: 10px;
}
.single-layout ul li {
  position: relative;
  padding-left: 12px;
}
.single-layout ul li::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  position: absolute;
  left: 0px;
  top: 10px;
}
.single-layout ol {
  display: grid;
  gap: 8px;
  list-style: decimal;
  padding-left: 20px;
}
.single-layout ol li {
  list-style-type: decimal;
}
.single-layout img {
  border-radius: 12px;
}
.single-layout blockquote {
  margin-top: 24px;
  background-color: #F8F7FF;
  color: #2A5293;
  padding: 24px;
  border-radius: var(--radius-sm);
  font-weight: 600;
  font-size: 16px;
  line-height: 1.6;
}
@media (min-width: 576px) {
  .single-layout blockquote {
    font-size: 18px;
  }
}
.single-layout > *:not(:first-child):not(p) {
  margin-top: 24px;
}
.single-layout h1, .single-layout h2, .single-layout h3, .single-layout h4, .single-layout h5, .single-layout h6 {
  padding-bottom: 8px;
}
.single-layout p + p {
  margin-top: 16px;
}
.single-layout h1 + *, .single-layout h2 + *, .single-layout h3 + *, .single-layout h4 + *, .single-layout h5 + *, .single-layout h6 + *,
.single-layout > *:first-child {
  margin-top: 0 !important;
}

.row-social {
  margin-top: 40px;
  display: inline-flex;
  background-color: #F4F3FB;
  border-radius: var(--radius-sm);
}
@media (min-width: 576px) {
  .row-social {
    gap: 24px;
    align-items: center;
    padding: 8px 16px 8px 24px;
  }
}
@media (max-width: 575px) {
  .row-social {
    width: 100%;
    gap: 12px;
    flex-direction: column;
    padding: 16px;
  }
  .row-social .row-social__btn {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 355px) {
  .row-social .row-social__col {
    flex-direction: column;
  }
  .row-social .row-social__btn {
    width: 100%;
  }
}
.row-social__col {
  display: flex;
  align-items: center;
  gap: 16px;
}
.row-social__title {
  font-weight: bold;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1%;
}
.row-social__btn {
  --btn-color: #9090B0;
  --btn-color-hover: #ffffff;
  --btn-bg: #ffffff;
  --btn-bg-hover: rgba(254, 122, 41, 1);
  --btn-shadow: none;
  --box-shadow-hover: none;
  font-family: var(--font-body);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  -webkit-tap-highlight-color: transparent;
  width: fit-content;
  padding: 8px 20px;
  height: 42px;
  font-size: 16px;
  line-height: 1.4;
  border-radius: 16px;
  font-weight: 600;
  letter-spacing: 3%;
  border: none;
  color: var(--btn-color);
  background: var(--btn-bg);
  box-shadow: var(--btn-shadow);
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.3s, background 0.3s, box-shadow 0.3s;
}
.row-social__btn:hover {
  color: var(--btn-color-hover);
  background: var(--btn-bg-hover);
  box-shadow: var(--btn-shadow-hover);
}

.box-border__holder {
  display: grid;
  gap: 20px;
}
@media (min-width: 769px) {
  .box-border__holder {
    grid-template-columns: repeat(2, 1fr);
    max-width: 1060px;
    margin-left: auto;
    margin-right: auto;
  }
}
.box-border__item {
  display: grid;
  gap: 24px;
  line-height: 1.6;
  border-radius: var(--radius-sm);
  border: 1px solid var(--border-color);
  background-color: #ffffff;
  text-align: center;
  padding: 24px 24px 40px 24px;
}
@media (min-width: 1101px) {
  .box-border__heading {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
  }
}
.box-border__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 6px 18.5px;
  font-size: 12px;
  line-height: 1.4;
  text-transform: uppercase;
  background: rgba(254, 122, 41, 0.1);
  color: #FE7A29;
  letter-spacing: 1%;
  border-radius: var(--radius-sm);
  min-height: 29px;
}
.box-border__tag + .box-border__title {
  margin-top: 12px;
}

.box-type3__holder {
  max-width: 1706px;
  padding-left: 80px;
  padding-right: 80px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  line-height: 1.6;
}
@media (min-width: 576px) {
  .box-type3__holder {
    gap: 40px;
  }
}
@media (max-width: 575px) {
  .box-type3__holder {
    gap: 24px;
  }
}
@media (min-width: 769px) {
  .box-type3__holder {
    grid-template-columns: 55fr 45fr;
  }
}
@media (min-width: 1101px) {
  .box-type3__holder {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 1025px) {
  .box-type3__holder {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (max-width: 1024px) {
  .box-type3__holder {
    padding-left: 24px;
    padding-right: 24px;
  }
}
@media (max-width: 768px) {
  .box-type3__img img {
    max-height: 552px;
    object-position: top;
  }
}
.box-type3__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.box-type4__item {
  width: 100%;
  height: 100%;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background-color: #F8F7FF;
}
.box-type4__holder {
  text-align: center;
  padding: 24px 15px;
}
@media (max-width: 768px) {
  .box-type4__img img {
    max-height: 270px;
    object-fit: cover;
    object-position: top;
  }
}
.box-type4__list {
  display: inline-flex;
  gap: 8px;
  margin-top: 16px;
}
.box-type4__list a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  background-color: #ffffff;
  border-radius: var(--radius-sm);
}

.row-col-2 {
  max-width: 1288px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  gap: 60px;
  align-items: center;
}
@media (max-width: 575px) {
  .row-col-2 {
    gap: 40px;
  }
}
@media (min-width: 769px) {
  .row-col-2 {
    grid-template-columns: 45fr 55fr;
  }
  .row-col-2__col {
    order: 1;
  }
  .row-col-2 .box-form {
    order: 2;
  }
}
@media (min-width: 1025px) {
  .row-col-2 {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (max-width: 1024px) {
  .row-col-2 {
    padding-left: 24px;
    padding-right: 24px;
  }
}

.box-form {
  padding: 24px;
  border-radius: var(--radius-sm);
}
.box-form__heading {
  padding-bottom: 16px;
}
@media (max-width: 575px) {
  .box-form__heading {
    font-size: 22px;
    padding-bottom: 10px;
  }
}

.data-type2 {
  display: flex;
  gap: 16px;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.data-type2__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 55px;
  min-width: 56px;
  background: rgb(248, 247, 255);
  border-radius: 4px;
  border: 1px solid var(--border-color);
  color: #9090B0;
  transition: color var(--transition-base), background var(--transition-base), border-color var(--transition-base);
}
.data-type2__link {
  display: grid;
}
.data-type2__tag {
  color: #5A5A7A;
}
.data-type2__text {
  font-size: 18px;
  line-height: 1.6;
  font-weight: 600;
  color: #1A1A2E;
  transition: color var(--transition-base);
}
.data-type2 + .data-type2 {
  margin-top: 16px;
}
@media (hover: hover) {
  .data-type2:hover .data-type2__icon {
    background: var(--brand-orange);
    color: #ffffff;
    border-color: var(--brand-orange);
  }
  .data-type2:hover .data-type2__text {
    color: var(--brand-orange);
  }
}

.project__item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  border-radius: var(--radius-md);
  border: 1px solid var(--border-color);
  padding: 7px;
}
.project__item .tt-btn_type1 {
  font-size: 14px;
  height: 34px;
  gap: 4px;
  margin-top: auto;
}
.project__item .tt-btn_type1 + .tt-btn_type1 {
  margin-top: inherit;
}
.project__img {
  width: 100%;
  height: 274px;
  position: relative;
}
.project__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  object-fit: cover;
}
@media (min-width: 1440px) {
  .project__img {
    height: 362px;
  }
}
.project__holder {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px 0px 1px;
  font-size: 14px;
  width: 100%;
}
.project__holder .tt-btn_link {
  margin-top: auto;
}
@media (min-width: 576px) {
  .project__holder {
    padding: 15px 1px 0px;
  }
}
.project__row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.project__label {
  background: rgba(254, 122, 41, 0.1);
  color: #FE7A29;
  font-weight: bold;
  border-radius: var(--radius-sm);
  min-height: 18px;
  padding: 6px 8px;
  font-size: 8px;
  line-height: 1;
  letter-spacing: 1%;
  text-transform: uppercase;
}
.project__data {
  color: #5A5A7A;
  font-size: 12px;
  line-height: 1.2;
}
.project__title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  color: #1A1A2E;
}
.project__title a {
  text-decoration: none;
  color: #1A1A2E;
}
@media (hover: hover) {
  .project__title a {
    transition: color var(--transition-base);
  }
  .project__title a:hover {
    color: var(--brand-orange);
  }
}
.project__description {
  padding-bottom: 14px;
}