:root {
  --bs-primary: #44d2f6;
  --bs-primary-rgb: 68, 210, 246;
  --bs-dark: #111827;
  --bs-dark-rgb: 17, 24, 39;
  --bs-link-color: #19a9cf;
  --bs-link-color-rgb: 25, 169, 207;
  --bs-link-hover-color: #111827;
  --bs-link-hover-color-rgb: 17, 24, 39;
  --bs-primary-text-emphasis: #087f9d;
  --bs-primary-bg-subtle: #dff8fe;
  --bs-primary-border-subtle: #9ceafb;
  --bs-focus-ring-color: rgba(68, 210, 246, .25);
  --bs-body-font-family: "Open Sans", Arial, sans-serif;
  --bs-heading-color: #111827;
}

body {
  font-family: "Open Sans", Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4 {
  font-family: "Roboto", Arial, sans-serif;
  font-weight: 700;
}

.btn {
  font-weight: 600;
  transition: .5s;
}

.btn-square,
.btn-sm-square,
.btn-md-square,
.btn-lg-square,
.btn-xl-square {
  align-items: center;
  border-radius: 50%;
  display: inline-flex;
  font-weight: 400;
  justify-content: center;
  padding: 0;
}

.btn-square { height: 32px; width: 32px; }
.btn-md-square { height: 44px; width: 44px; }
.btn-lg-square { height: 56px; width: 56px; }
.btn-xl-square { height: 66px; width: 66px; }

.btn.btn-primary {
  background: var(--bs-primary) !important;
  border: none;
  color: var(--bs-white) !important;
  font-family: "Roboto", Arial, sans-serif;
  font-weight: 500;
}

.btn.btn-primary:hover {
  background: var(--bs-dark) !important;
  color: var(--bs-light) !important;
}

.btn-outline-primary {
  --bs-btn-color: #087f9d;
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-primary);
  --bs-btn-hover-border-color: var(--bs-primary);
  --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-primary);
  --bs-btn-active-border-color: var(--bs-primary);
  --bs-btn-disabled-color: var(--bs-primary);
  --bs-btn-disabled-border-color: var(--bs-primary);
}

.text-primary,
.text-primary-emphasis {
  color: #19a9cf !important;
}

.bg-primary {
  background-color: var(--bs-primary) !important;
}

.border-primary {
  border-color: var(--bs-primary) !important;
}

.badge.bg-primary,
.alert-primary,
.list-group-item-primary {
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #111827 !important;
}

a {
  color: #19a9cf;
}

a:hover {
  color: var(--bs-dark);
}

.page-link {
  color: #19a9cf;
}

.active > .page-link,
.page-link.active {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: #111827;
}

.form-control:focus,
.form-select:focus,
.btn:focus-visible,
.page-link:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 .25rem rgba(68, 210, 246, .25);
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--bs-primary);
  color: #111827;
}

.product__price,
.product-miniature__price,
.current-price,
.price {
  color: #111827;
}

.product-flags .product-flag,
.product-miniature__flag,
.discount,
.discount-percentage,
.discount-amount {
  background-color: var(--bs-primary) !important;
  color: #111827 !important;
}

.btn.btn-dark {
  background: var(--bs-dark) !important;
  border: none;
  color: var(--bs-white) !important;
}

.btn.btn-dark:hover,
.btn.btn-light:hover {
  background: var(--bs-white) !important;
  color: var(--bs-dark) !important;
}

.btn.btn-light {
  background: var(--bs-primary) !important;
  border: none;
  color: var(--bs-white) !important;
}

.investa-topbar {
  background: var(--bs-dark) !important;
  padding: 2px 10px 2px 20px;
}

.investa-topbar .row {
  min-height: 45px;
}

.investa-topbar a:not(.btn),
.investa-topbar .ps-contactinfo a,
.investa-topbar .dropdown-toggle {
  color: #9ca3af !important;
  font-size: .95rem;
  line-height: 1.5;
}

.investa-topbar a:hover {
  color: var(--bs-primary) !important;
}

.investa-sticky,
.investa-sticky .container {
  transition: .5s !important;
}

.investa-sticky {
  z-index: 1021;
}

.investa-sticky > .position-absolute {
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.header-bottom {
  border-bottom: 0;
  padding: 0;
}

.header-bottom .navbar {
  box-shadow: 0 .75rem 2rem rgba(17, 24, 39, .08);
}

.header-bottom .navbar-brand .logo {
  max-height: 3.5rem;
  max-width: 12rem;
}

.investa-brand-name,
.investa-brand-name:hover {
  color: var(--bs-primary);
  font-family: "Roboto", Arial, sans-serif;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 700;
  text-decoration: none;
}

.ps-mainmenu--desktop {
  flex: 1 1 auto;
}

.ps-mainmenu__tree {
  align-items: center;
  gap: .25rem;
  justify-content: flex-end;
  margin: 0;
  padding-left: 0;
}

.ps-mainmenu__tree-item {
  list-style: none;
  margin: 0 5px !important;
  position: relative;
}

.ps-mainmenu__tree-item::before,
.ps-mainmenu__tree-item::after {
  border: 0 solid var(--bs-primary);
  content: "";
  height: 0;
  position: absolute;
  transition: .5s;
  width: 0;
}

.ps-mainmenu__tree-item::before {
  left: 0;
  top: 0;
}

.ps-mainmenu__tree-item::after {
  bottom: 0;
  right: 0;
}

.ps-mainmenu__tree-item:hover::after,
.ps-mainmenu__tree-item:hover::before,
.ps-mainmenu__tree-item.current::after,
.ps-mainmenu__tree-item.current::before {
  border-width: 1px;
  width: 100%;
}

.ps-mainmenu__tree-link.nav-link {
  color: var(--bs-dark) !important;
  font-family: "Roboto", Arial, sans-serif;
  font-weight: 500;
  padding: .5rem .9rem;
}

.ps-mainmenu__tree-link.nav-link:hover,
.ps-mainmenu__tree-item.current .ps-mainmenu__tree-link {
  color: var(--bs-primary) !important;
}

.ps-mainmenu__tree-dropdown-toggle {
  border: 0;
  background: transparent;
}

.header-block__action-btn {
  border-radius: 50rem;
  color: var(--bs-dark);
}

.header-block__action-btn:hover {
  color: var(--bs-primary);
}

.investa-home {
  margin-top: -2.5rem;
}

.investa-home .page-content--home {
  display: block;
}

.investa-hero .carousel-item {
  min-height: clamp(560px, 78vh, 820px);
  overflow: hidden;
  position: relative;
}

.investa-hero .carousel-item::before {
  animation: investaRotateMoveLeft 5s linear infinite;
  background: var(--bs-dark);
  content: "";
  height: 1200px;
  left: -265px;
  opacity: .7;
  position: absolute;
  top: -150px;
  transform: rotate(-30deg);
  width: 300px;
  z-index: 2;
}

.investa-hero .carousel-item::after {
  background: rgba(0, 0, 0, .5);
  content: "";
  inset: 0;
  position: absolute;
  z-index: 2;
}

.investa-hero__image {
  height: clamp(560px, 78vh, 820px);
  object-fit: cover;
  width: 100%;
}

.investa-hero__media {
  position: relative;
}

.investa-hero__media::before {
  animation: investaRotateMoveCircle 10s linear infinite;
  background: transparent;
  border: 100px solid rgba(68, 210, 246, .2);
  border-radius: 300px;
  content: "";
  height: 600px;
  position: absolute;
  right: -300px;
  top: -300px;
  width: 600px;
  z-index: 3;
}

.investa-hero__media::after {
  animation: investaRotateMoveRight 5s linear infinite;
  background: rgba(68, 210, 246, .2);
  content: "";
  height: 1200px;
  left: 70px;
  position: absolute;
  top: -150px;
  transform: rotate(-30deg);
  width: 150px;
  z-index: 3;
}

.investa-hero .carousel-caption {
  align-items: center;
  bottom: 0;
  display: flex !important;
  left: 50%;
  padding: 2rem 1rem;
  right: auto;
  top: 0;
  transform: translateX(-50%);
  width: min(1140px, 100%);
  z-index: 4;
}

.investa-hero__content {
  max-width: 900px;
}

.investa-hero__content.text-center {
  margin-inline: auto;
}

.investa-hero__content.text-end {
  margin-left: auto;
}

.investa-hero h1 {
  color: #fff;
  font-size: clamp(2.5rem, 7vw, 5.75rem);
  line-height: 1.05;
}

.investa-hero p {
  color: rgba(255, 255, 255, .85);
  max-width: 760px;
}

.investa-hero .carousel-control-prev,
.investa-hero .carousel-control-next {
  background: var(--bs-primary);
  border-radius: 40px;
  height: 60px;
  opacity: 1;
  top: 50%;
  transform: translateY(-50%);
  width: 60px;
  z-index: 5;
}

.investa-hero .carousel-control-prev { left: 30px; }
.investa-hero .carousel-control-next { right: 30px; }

.investa-hero .carousel-control-prev:hover,
.investa-hero .carousel-control-next:hover {
  background: var(--bs-dark);
}

.investa-about .text {
  position: relative;
}

.investa-about .text::after {
  background: var(--bs-primary);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 4px;
}

.investa-service .service-item {
  border-radius: 10px;
  box-shadow: 0 0 45px rgba(0, 0, 0, .18);
  overflow: hidden;
}

.investa-service .service-img {
  overflow: hidden;
}

.investa-service .service-img img,
.investa-project .project-img img {
  transition: .5s;
}

.investa-service .service-item:hover .service-img img,
.investa-project .project-item:hover .project-img img {
  transform: scale(1.12);
}

.investa-service .service-content,
.investa-project .project-content {
  position: relative;
}

.investa-service .service-content::after,
.investa-project .project-content::after {
  background: var(--bs-dark);
  border-radius: inherit;
  bottom: 0;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  transition: .5s;
  width: 100%;
  z-index: 1;
}

.investa-service .service-item:hover .service-content::after,
.investa-project .project-item:hover .project-content::after {
  height: 100%;
}

.investa-service .service-content-inner,
.investa-project .project-content-inner {
  position: relative;
  z-index: 2;
}

.investa-service .service-item:hover .service-content-inner,
.investa-service .service-item:hover .service-content-inner a,
.investa-project .project-item:hover .project-content-inner,
.investa-project .project-item:hover .project-content-inner a,
.investa-project .project-item:hover .project-icon i {
  color: #fff !important;
}

.investa-project .project-item {
  overflow: hidden;
}

.investa-project .project-img {
  border-radius: 10px;
  overflow: hidden;
}

.investa-project .project-content {
  border-radius: 10px;
  box-shadow: 0 0 45px rgba(0, 0, 0, .08);
  margin: -5rem auto 0;
  min-height: 270px;
  width: 82%;
}

.footer__main,
.investa-footer {
  background: var(--bs-dark);
  color: #9ca3af;
}

.footer__main {
  padding-block: 3rem 1rem;
}

.footer__main a,
.footer__main .footer-block a {
  color: #9ca3af;
}

.footer__main a:hover,
.footer__main .footer-block a:hover {
  color: var(--bs-primary);
}

.footer__main .footer-block__title {
  color: #fff;
}

.copyright {
  background: var(--bs-dark) !important;
  border-top: 1px solid rgba(255,255,255,.08);
}

.back-to-top {
  align-items: center;
  bottom: 30px;
  display: flex;
  height: 45px;
  justify-content: center;
  position: fixed;
  right: 30px;
  width: 45px;
  z-index: 99;
}

@keyframes investaRotateMoveCircle {
  0% { top: -400px; }
  50% { right: -200px; }
  75% { top: -200px; }
  100% { top: -400px; }
}

@keyframes investaRotateMoveRight {
  0% { left: 0; }
  50% { left: 70px; }
  100% { left: 0; }
}

@keyframes investaRotateMoveLeft {
  0% { left: -240px; }
  50% { left: -300px; }
  100% { left: -240px; }
}

@media (max-width: 1199.98px) {
  .ps-mainmenu--desktop {
    flex: 0 0 auto;
  }

  .ps-mainmenu__mobile-toggle {
    display: flex;
  }
}

@media (max-width: 991.98px) {
  .investa-home {
    margin-top: 0;
  }

  .investa-hero .carousel-control-prev,
  .investa-hero .carousel-control-next {
    top: 42px;
  }

  .investa-hero .carousel-control-prev {
    left: auto;
    right: 105px;
  }

  .investa-hero .carousel-control-next {
    right: 30px;
  }

  .investa-hero__content,
  .investa-hero__content.text-end {
    margin-inline: auto;
    text-align: center !important;
  }
}

@media (max-width: 575.98px) {
  .header-bottom .navbar {
    padding-inline: 1rem !important;
  }

  .investa-hero h1 {
    font-size: 2.35rem;
  }

  .investa-hero .btn {
    width: 100%;
  }
}
