/**
 * WEBSITE: https://themefisher.com
 * TWITTER: https://twitter.com/themefisher
 * FACEBOOK: https://www.facebook.com/themefisher
 * GITHUB: https://github.com/themefisher/
 */

/*=== MEDIA QUERY ===*/
@import url("https://fonts.googleapis.com/css2?family=Hind:wght@400;500;600;700&family=Montserrat:wght@400;700&family=Poppins:wght@300;400;600;700&display=swap");
html {
  overflow-x: hidden;
}

/* Landing-page company story, leadership and live visitor total. */
.company-story { position: relative; overflow: hidden; background: #f7f8f6; }
.company-story__pattern { position: absolute; inset: 0; opacity: .38; pointer-events: none; background: radial-gradient(circle at 8% 12%, rgba(219,135,0,.17), transparent 25%), radial-gradient(circle at 92% 88%, rgba(27,70,47,.12), transparent 30%); }
.company-story .container { position: relative; z-index: 1; }
.company-story__content { height: 100%; padding: clamp(30px, 5vw, 62px); border-radius: 24px; background: #fff; box-shadow: 0 24px 70px rgba(28,41,32,.09); }
.company-story__eyebrow, .ceo-card__label { display: inline-flex; align-items: center; gap: 10px; color: #db8700; font-size: 11px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.company-story__eyebrow::before { content: ''; width: 32px; height: 2px; background: currentColor; }
.company-story__content h2 { max-width: 680px; margin: 18px 0 22px; color: #1d2821; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.06; letter-spacing: -.035em; }
.company-story__lead { color: #354139; font-size: 1.12rem; line-height: 1.72; }
.company-story__content > p:not(.company-story__lead) { color: #68736c; line-height: 1.8; }
.company-story__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 30px; }
.company-story__link { color: #28352d; font-weight: 800; border-bottom: 1px solid #aeb7b1; }
.company-story__link:hover { color: #db8700; border-color: #db8700; }
.visitor-total { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; margin-top: 38px; padding: 19px 22px; border: 1px solid #e2e7e3; border-radius: 16px; background: linear-gradient(110deg, #fbfcfb, #f2f6f3); }
.visitor-total__icon { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 14px; background: #1d3527; color: #fff; font-size: 18px; box-shadow: 0 10px 24px rgba(29,53,39,.18); }
.visitor-total strong, .visitor-total span { display: block; }
.visitor-total strong { color: #1d2821; font-size: clamp(1.7rem, 4vw, 2.4rem); line-height: 1; font-variant-numeric: tabular-nums; }
.visitor-total span { margin-top: 5px; color: #59655e; font-size: 12px; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; }
.visitor-total small { max-width: 130px; color: #849088; font-size: 11px; line-height: 1.45; text-align: right; }
.ceo-card { position: relative; height: 100%; min-height: 610px; overflow: hidden; border-radius: 24px; background: #14251b; box-shadow: 0 26px 72px rgba(19,40,27,.2); }
.ceo-card__portrait { position: relative; height: 350px; }
.ceo-card__portrait img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.ceo-card__portrait::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(7,19,12,.98) 3%, rgba(7,19,12,.65) 46%, rgba(7,19,12,.08) 78%); }
.ceo-card__portrait--placeholder { display: grid; align-content: start; justify-items: end; padding: 48px; background: radial-gradient(circle at 75% 18%, rgba(219,135,0,.38), transparent 30%), linear-gradient(145deg, #234832, #0e2016); color: rgba(255,255,255,.75); }
.ceo-card__portrait--placeholder::before { content: ''; position: absolute; top: -70px; right: -80px; width: 310px; height: 310px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; box-shadow: 0 0 0 48px rgba(255,255,255,.025), 0 0 0 96px rgba(255,255,255,.02); }
.ceo-card__portrait--placeholder i { position: relative; z-index: 1; font-size: 64px; }
.ceo-card__portrait--placeholder span { position: relative; z-index: 1; margin-top: 12px; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.ceo-card__body { position: relative; z-index: 2; margin-top: -38px; padding: 30px clamp(30px, 5vw, 48px) clamp(30px, 5vw, 48px); color: rgba(255,255,255,.72); }
.ceo-card__body h2 { margin: 14px 0 5px; color: #fff; font-size: clamp(1.8rem, 3.2vw, 2.7rem); }
.ceo-card__body > strong { display: block; color: #f7a27a; font-size: 12px; letter-spacing: .09em; text-transform: uppercase; }
.ceo-card blockquote { position: relative; margin: 25px 0 18px; padding-left: 20px; border-left: 3px solid #db8700; color: #fff; font-family: inherit; font-size: 1.03rem; font-style: normal; line-height: 1.65; }
.ceo-card__body p { margin: 0; color: rgba(255,255,255,.67); line-height: 1.65; }
@media (max-width: 767px) {
  .company-story__content { padding: 28px 22px; border-radius: 18px; }
  .visitor-total { grid-template-columns: auto 1fr; padding: 16px; }
  .visitor-total small { grid-column: 2; max-width: none; text-align: left; }
  .ceo-card { min-height: 570px; border-radius: 18px; }
  .ceo-card__portrait { height: 320px; }
  .ceo-card__body { padding: 28px 24px; }
}

:root {
  --motion-duration-instant: 150ms;
  --motion-duration-fast: 200ms;
  --motion-duration-standard: 300ms;
  --motion-duration-reveal: 600ms;
  --motion-ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --motion-ease-exit: cubic-bezier(0.4, 0, 1, 1);
  --motion-distance-small: 8px;
  --motion-distance-medium: 16px;
  --motion-distance-large: 24px;
}

body {
  line-height: 1.5;
  font-family: "Hind", serif;
  -webkit-font-smoothing: antialiased;
  font-size: 17px;
  color: rgba(0, 0, 0, 0.65);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  color: #242424;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 42px;
}

h3, .h3 {
  font-size: 1.5rem;
}

h4, .h4 {
  font-size: 1.3rem;
  line-height: 30px;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

p {
  line-height: 30px;
}

.navbar-toggle .icon-bar {
  background: #db8700;
}

input[type=email], input[type=password], input[type=text], input[type=tel] {
  box-shadow: none;
  height: 45px;
  outline: none;
  font-size: 14px;
  transition: border-color var(--motion-duration-fast) ease, box-shadow var(--motion-duration-fast) ease;
}
input[type=email]:focus, input[type=password]:focus, input[type=text]:focus, input[type=tel]:focus {
  box-shadow: none;
  border: 1px solid #db8700;
}

.form-control {
  box-shadow: none;
  border-radius: 0;
}
.form-control:focus {
  box-shadow: 0 0 0 3px rgba(219, 135, 0, 0.12);
  border: 1px solid #db8700;
}

.py-7 {
  padding: 7rem 0px;
}

.btn {
  display: inline-block;
  font-size: 14px;
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 1rem 2.5rem 0.8rem;
  text-transform: uppercase;
  border-radius: 0;
  transition: color var(--motion-duration-fast) ease,
              background-color var(--motion-duration-fast) ease,
              border-color var(--motion-duration-fast) ease,
              box-shadow var(--motion-duration-fast) ease,
              transform var(--motion-duration-instant) var(--motion-ease-standard);
}
.btn:not(:disabled):hover {
  transform: translateY(-2px);
}
.btn:not(:disabled):active {
  transform: translateY(0);
}
.btn:disabled {
  cursor: wait;
  opacity: 0.72;
}
.btn.btn-icon i {
  font-size: 16px;
  vertical-align: middle;
  margin-right: 5px;
}
.btn:focus {
  outline: 0px;
  box-shadow: none;
}

.btn-main, .btn-small, .btn-transparent {
  background: #db8700;
  color: #fff;
}
.btn-main:hover, .btn-small:hover, .btn-transparent:hover {
  background: #ae6b00;
  color: #fff;
}

.btn-solid-border {
  border: 2px solid #db8700;
  background: transparent;
  color: #242424;
}
.btn-solid-border:hover {
  border: 2px solid #db8700;
  background: #db8700;
}

.btn-transparent {
  background: transparent;
  padding: 0;
  color: #db8700;
}
.btn-transparent:hover {
  background: transparent;
  color: #db8700;
}

.btn-large {
  padding: 20px 45px;
}
.btn-large.btn-icon i {
  font-size: 16px;
  vertical-align: middle;
  margin-right: 5px;
}

.btn-small {
  padding: 13px 25px 10px;
  font-size: 12px;
}

.btn-round {
  border-radius: 4px;
}

.btn-round-full {
  border-radius: 50px;
}

.btn.active:focus, .btn:active:focus, .btn:focus {
  outline: 0;
}

.bg-gray {
  background: #f5f8f9;
}

.bg-primary {
  background: #db8700;
}

.bg-primary-dark {
  background: #ae6b00;
}

.bg-primary-darker {
  background: #dd0b0b;
}

.bg-dark {
  background: #242424;
}

.bg-gradient {
  background-image: linear-gradient(145deg, rgba(19, 177, 205, 0.95) 0%, rgba(152, 119, 234, 0.95) 100%);
  background-repeat: repeat-x;
}

.section {
  padding: 100px 0;
}

.section-sm {
  padding: 70px 0;
}

.section-title {
  margin-bottom: 70px;
}
.section-title .title {
  font-size: 50px;
  line-height: 50px;
}
.section-title p {
  color: #666;
  font-family: "Poppins", sans-serif;
}

.subtitle {
  color: #db8700;
  font-size: 14px;
  letter-spacing: 1px;
}

.overly, .hero-img, .cta, .slider, .page-title {
  position: relative;
}
.overly:before, .hero-img:before, .cta:before, .slider:before, .page-title:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  background: #000;
}

.overly-2, .latest-blog, .cta-block, .bg-counter {
  position: relative;
}
.overly-2:before, .latest-blog:before, .cta-block:before, .bg-counter:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
}

.text-color {
  color: #db8700;
}

.text-black {
  color: #242424;
}

.text-color2 {
  color: #c54041;
}

.text-color2 {
  color: #b99769;
}

.text-sm {
  font-size: 14px;
}

.text-md {
  font-size: 2.25rem;
}

.text-lg {
  font-size: 3.75rem;
}

.no-spacing {
  letter-spacing: 0px;
}

/* Links */
a {
  color: #242424;
  text-decoration: none;
}

a:focus, a:hover {
  color: #db8700;
  text-decoration: none;
}

a:focus {
  outline: none;
}

.content-title {
  font-size: 40px;
  line-height: 50px;
}

.page-title {
  padding: 100px 0;
}
.page-title .block h1 {
  color: #fff;
}
.page-title .block p {
  color: #fff;
}

.page-wrapper {
  padding: 70px 0;
}

#wrapper-work {
  overflow: hidden;
  padding-top: 100px;
}
#wrapper-work ul li {
  width: 50%;
  float: left;
  position: relative;
}
#wrapper-work ul li img {
  width: 100%;
  height: 100%;
}
#wrapper-work ul li .items-text {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  background: rgba(0, 0, 0, 0.6);
  padding-left: 44px;
  padding-top: 140px;
}
#wrapper-work ul li .items-text h2 {
  padding-bottom: 28px;
  padding-top: 75px;
  position: relative;
}
#wrapper-work ul li .items-text h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 75px;
  height: 3px;
  background: #fff;
}
#wrapper-work ul li .items-text p {
  padding-top: 30px;
  font-size: 16px;
  line-height: 27px;
  font-weight: 300;
  padding-right: 80px;
}

/*--
	features-work Start 
--*/
#features-work {
  padding-top: 50px;
  padding-bottom: 75px;
}
#features-work .block ul li {
  width: 19%;
  text-align: center;
  display: inline-block;
  padding: 40px 0px;
}

#navbar {
  background: rgb(34, 35, 40);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
#navbar li {
  padding-left: 15px;
}
@media (max-width: 992px) {
  #navbar li {
    padding-left: 0;
  }
}
#navbar .nav-link {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #fff;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.5px;
  transition: all 0.25s ease;
}
#navbar .nav-link:hover, #navbar .nav-link:focus,
#navbar .active .nav-link {
  color: #db8700;
}
#navbar .btn {
  padding: 0.7rem 1.5rem 0.5rem;
  color: #fff;
}
@media (max-width: 992px) {
  #navbar .btn {
    margin: 15px 0 10px;
  }
}

.header-top {
  background: rgb(34, 35, 40);
  color: #919194;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.header-top .header-top-socials {
  border-right: 1px solid rgba(255, 255, 255, 0.05);
  padding: 12px 0px;
}
.header-top .header-top-socials {
  margin-left: -8px;
}
.header-top .header-top-socials a {
  color: #919194;
  margin-right: 8px;
  font-size: 16px;
  padding: 0 8px;
}
.header-top .header-top-socials a:hover {
  color: #db8700;
}
.header-top .header-top-info {
  color: #919194;
  font-size: 16px;
}
.header-top .header-top-info a span {
  color: #fff;
}
.header-top .header-top-info a {
  margin-left: 35px;
  color: #919194;
}

.navbar-toggler {
  padding: 0;
  font-size: 1.5rem;
  color: #fff;
}
.navbar-toggler:focus {
  outline: 0;
}

.navbar-brand {
  color: #fff;
  font-weight: 600;
  letter-spacing: 1px;
}
.navbar-brand span {
  color: #db8700;
}

.navbar-brand-logo {
  display: inline-flex;
  align-items: center;
  letter-spacing: 0;
}
.navbar-brand-logo img {
  width: 104px;
  height: 104px;
  margin: -17px 0;
  object-fit: contain;
}

.dropdown-menu {
  padding: 0px;
  border: 0;
  border-radius: 0px;
}
@media (max-width: 992px) {
  .dropdown-menu {
    text-align: center;
    float: left !important;
    width: 100%;
    margin: 0;
  }
}
.dropdown-menu li:first-child {
  margin-top: 5px;
}
.dropdown-menu li:last-child {
  margin-bottom: 5px;
}

.dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-menu,
.dropright .dropdown-menu {
  margin: 0;
}

.dropleft .dropdown-toggle::before,
.dropright .dropdown-toggle::after {
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  border: 0;
  font-size: 10px;
  vertical-align: 1px;
}

.dropleft .dropdown-toggle::before {
  content: "\f053";
  margin-right: 5px;
}

.dropright .dropdown-toggle::after {
  content: "\f054";
  margin-left: 5px;
}

.dropdown-item {
  padding: 0.8rem 1.5rem 0.55rem;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 500;
}
@media (max-width: 992px) {
  .dropdown-item {
    padding: 0.6rem 1.5rem 0.35rem;
  }
}

.dropdown-submenu.active > .dropdown-toggle,
.dropdown-submenu:hover > .dropdown-item,
.dropdown-item.active,
.dropdown-item:hover {
  background: #db8700;
  color: #fff;
}

ul.dropdown-menu li {
  padding-left: 0px !important;
}

@media (min-width: 992px) {
  .dropdown-menu {
    transition: all 0.2s ease-in, visibility 0s linear 0.2s, transform 0.2s linear;
    display: block;
    visibility: hidden;
    opacity: 0;
    min-width: 200px;
    margin-top: 15px;
  }
  .dropdown-menu li:first-child {
    margin-top: 10px;
  }
  .dropdown-menu li:last-child {
    margin-bottom: 10px;
  }
  .dropleft .dropdown-menu,
.dropright .dropdown-menu {
    margin-top: -10px;
  }
  .dropdown:hover > .dropdown-menu {
    visibility: visible;
    transition: all 0.45s ease 0s;
    opacity: 1;
  }
}
.bg-1 {
  background: url("../images/bg/home-2.jpg") no-repeat 50% 50%;
  background-size: cover;
}

.bg-2 {
  background: url("../images/bg/home-5.jpg");
  background-size: cover;
}

.slider {
  background: url("../images/bg/home-1.jpg") no-repeat;
  background-size: cover;
  background-position: 10% 0%;
  padding: 200px 0;
  position: relative;
}
@media (max-width: 768px) {
  .slider {
    padding: 150px 0;
  }
}
.slider .block h1 {
  font-size: 70px;
  line-height: 80px;
  font-weight: 600;
  color: #fff;
}
.slider .block p {
  margin-bottom: 30px;
  color: #b9b9b9;
  font-size: 18px;
  line-height: 27px;
  font-weight: 300;
}
.slider .block span {
  letter-spacing: 1px;
}

.intro-item i {
  font-size: 60px;
  line-height: 60px;
}

.color-one {
  color: #db8700;
}

.color-two {
  color: #00d747;
}

.color-three {
  color: #9262ff;
}

.color-four {
  color: #088ed3;
}

.bg-about {
  position: absolute;
  content: "";
  left: 0px;
  top: 0px;
  width: 45%;
  min-height: 650px;
  background: url("../images/bg/home-8.jpg") no-repeat;
  background-size: cover;
}

.about-content {
  padding: 20px 0px 0px 80px;
}
.about-content h4 {
  font-weight: 600;
}
.about-content h4:before {
  position: absolute;
  content: "\f576";
  font-family: "Font Awesome 5 Free";
  font-size: 30px;
  position: absolute;
  top: 8px;
  left: -65px;
  font-weight: 700;
}

.opportunity-morph { overflow: hidden; background: #17271d; isolation: isolate; }
.opportunity-morph__slide, .opportunity-morph__slide img, .opportunity-morph__veil { position: absolute; inset: 0; }
.opportunity-morph__slide { opacity: 0; will-change: opacity, clip-path, transform; animation: opportunity-morph-cycle 18s ease-in-out infinite; }
.opportunity-morph__slide--two { animation-delay: 6s; }
.opportunity-morph__slide--three { animation-delay: 12s; }
.opportunity-morph__slide img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); animation: opportunity-morph-drift 6s ease-out infinite; }
.opportunity-morph__slide--two img { animation-delay: 6s; }
.opportunity-morph__slide--three img { animation-delay: 12s; }
.opportunity-morph__veil { z-index: 2; pointer-events: none; background: linear-gradient(120deg, rgba(11,28,18,.2), transparent 52%, rgba(219,135,0,.16)); }
@keyframes opportunity-morph-cycle {
  0% { opacity: 0; clip-path: circle(0% at 18% 28%); transform: scale(1.04); }
  4% { opacity: 1; }
  10%, 29% { opacity: 1; clip-path: circle(150% at 50% 50%); transform: scale(1); }
  35%, 100% { opacity: 0; clip-path: circle(150% at 82% 72%); transform: scale(.98); }
}
@keyframes opportunity-morph-drift {
  0% { transform: scale(1.08) translate3d(-1%, 0, 0); }
  100% { transform: scale(1.02) translate3d(1%, -1%, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .opportunity-morph__slide, .opportunity-morph__slide img { animation: none; }
  .opportunity-morph__slide--one { opacity: 1; clip-path: none; transform: none; }
  .opportunity-morph__slide--one img { transform: none; }
}

@media (max-width: 992px) {
  .opportunity-about .bg-about.opportunity-morph {
    display: block;
    position: relative;
    width: 100%;
    min-height: clamp(280px, 62vw, 480px);
    margin-bottom: 55px;
  }
}

.counter-item .counter-stat {
  font-size: 50px;
}
.counter-item p {
  margin-bottom: 0px;
}

.bg-counter {
  background: url("../images/bg/counter.jpg") no-repeat;
  background-size: cover;
}

.team-img-hover .team-social li a.facebook {
  background: #6666cc;
}

.team-img-hover .team-social li a.twitter {
  background: #3399cc;
}

.team-img-hover .team-social li a.instagram {
  background: #cc66cc;
}

.team-img-hover .team-social li a.linkedin {
  background: #3399cc;
}

.team-img-hover {
  position: absolute;
  top: 10px;
  left: 10px;
  right: 10px;
  bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.6);
  opacity: 0;
  transition: all 0.2s ease-in-out;
  transform: scale(0.8);
}

.team-img-hover li a {
  display: inline-block;
  color: #fff;
  width: 50px;
  height: 50px;
  font-size: 20px;
  line-height: 50px;
  border: 2px solid transparent;
  border-radius: 2px;
  text-align: center;
  transform: translateY(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: all 0.3s ease-in-out;
}

.team-img-hover:hover li a:hover {
  transform: translateY(4px);
}

.team-item:hover .team-img-hover {
  opacity: 1;
  transform: scale(1);
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
}

.service-item {
  position: relative;
  padding-left: 80px;
}
.service-item i {
  position: absolute;
  left: 0px;
  top: 5px;
  font-size: 50px;
  opacity: 0.4;
}

.cta {
  background: url("../images/bg/home-3.jpg") fixed 50% 50%;
  background-size: cover;
  padding: 120px 0px;
}

.cta-block {
  background: url("../images/bg/home-3.jpg") no-repeat;
  background-size: cover;
}

.testimonial-item {
  padding: 50px 30px;
}
.testimonial-item i {
  font-size: 40px;
  position: absolute;
  left: 30px;
  top: 30px;
  z-index: 1;
}
.testimonial-item .testimonial-text {
  font-size: 20px;
  line-height: 38px;
  color: #242424;
  margin-bottom: 30px;
  font-style: italic;
}
.testimonial-item .testimonial-item-content {
  padding-left: 65px;
}

.slick-slide:focus, .slick-slide a {
  outline: none;
}

.hero-img {
  background: url("../images/bg/home-5.jpg");
  position: absolute;
  content: "";
  background-size: cover;
  width: 100%;
  height: 100%;
  top: 0px;
}

.h70 {
  height: 55%;
}

.lh-45 {
  line-height: 45px;
}

.pricing-header h1 {
  font-size: 70px;
  font-weight: 300;
}

.pricing .btn-solid-border {
  border-color: #dedede;
}
.pricing .btn-solid-border:Hover {
  border-color: #db8700;
}

.portflio-item .portfolio-item-content {
  position: absolute;
  content: "";
  right: 0px;
  bottom: 0px;
  opacity: 0;
  transition: all 0.35s ease;
}
.portflio-item:before {
  position: absolute;
  content: "";
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  transition: all 0.35s ease;
  overflow: hidden;
}
.portflio-item:hover:before {
  opacity: 1;
}
.portflio-item:hover .portfolio-item-content {
  opacity: 1;
  bottom: 20px;
  right: 30px;
}
.portflio-item .overlay-item {
  position: absolute;
  content: "";
  left: 0px;
  top: 0px;
  bottom: 0px;
  right: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  color: #db8700;
  opacity: 0;
  transition: all 0.35s ease;
}
.portflio-item:hover .overlay-item {
  opacity: 1;
}

.contact-form-wrap .form-group {
  padding-bottom: 15px;
  margin: 0px;
}
.contact-form-wrap .form-group .form-control {
  background: #f5f8f9;
  height: 48px;
  border: 1px solid #EEF2F6;
  box-shadow: none;
  width: 100%;
}
.contact-form-wrap .form-group-2 {
  margin-bottom: 13px;
}
.contact-form-wrap .form-group-2 textarea {
  background: #f5f8f9;
  height: 135px;
  border: 1px solid #EEF2F6;
  box-shadow: none;
  width: 100%;
}

.address-block li {
  margin-bottom: 10px;
}
.address-block li i {
  font-size: 20px;
  width: 20px;
}

.social-icons li {
  margin: 0 6px;
}
.social-icons i {
  margin-right: 15px;
  font-size: 25px;
}

.google-map {
  position: relative;
}

.google-map #map {
  width: 100%;
  height: 450px;
}

/*=================================================================
  Latest Posts
==================================================================*/
.blog-item-content h3 {
  line-height: 36px;
}
.blog-item-content h3 a {
  transition: all 0.4s ease 0s;
}
.blog-item-content h3 a:hover {
  color: #db8700 !important;
}

.lh-36 {
  line-height: 36px;
}

.tags a {
  background: #f5f8f9;
  display: inline-block;
  padding: 8px 23px;
  border-radius: 38px;
  margin-bottom: 10px;
  border: 1px solid #eee;
  font-size: 14px;
  text-transform: capitalize;
}

.pagination .nav-links a,
.pagination .nav-links span.current {
  font-size: 20px;
  font-weight: 500;
  color: #c9c9c9;
  margin: 0 10px;
  text-transform: uppercase;
  letter-spacing: 1.2px;
}

.pagination .nav-links span.current,
.pagination .nav-links a.next,
.pagination .nav-links a.prev {
  color: #242424;
}

h3.quote {
  font-size: 24px;
  line-height: 40px;
  font-weight: normal;
  padding: 0px 25px 0px 85px;
  margin: 65px 0 65px 0 !important;
  position: relative;
}
@media (max-width: 768px) {
  h3.quote {
    padding: 0;
    padding-left: 20px;
  }
}

h3.quote::before {
  content: "";
  width: 55px;
  height: 2px;
  background: #db8700;
  position: absolute;
  top: 25px;
  left: 0;
}
@media (max-width: 768px) {
  h3.quote::before {
    top: 5px;
    width: 2px;
    height: 35px;
  }
}

.nav-posts-title {
  line-height: 25px;
  font-size: 18px;
}

.latest-blog {
  position: relative;
  padding-bottom: 150px;
}

.zambia-life { overflow: hidden; background: #101c16; }
.zambia-life::before { z-index: 1; background: linear-gradient(110deg, rgba(5,14,9,.9), rgba(5,14,9,.62)); }
.zambia-life > .container { position: relative; z-index: 2; }
.zambia-life__backgrounds { position: absolute; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; }
.zambia-life__backgrounds span { position: absolute; inset: -4%; opacity: 0; background-position: center; background-size: cover; animation: zambiaLifeBackdrop 24s ease-in-out infinite; will-change: opacity, transform; }
.zambia-life__backgrounds span:nth-child(1) { opacity: 1; animation-delay: 0s; }
.zambia-life__backgrounds span:nth-child(2) { animation-delay: -18s; }
.zambia-life__backgrounds span:nth-child(3) { animation-delay: -12s; }
.zambia-life__backgrounds span:nth-child(4) { animation-delay: -6s; }
@keyframes zambiaLifeBackdrop {
  0%, 20% { opacity: 1; transform: scale(1.04); }
  25%, 95% { opacity: 0; transform: scale(1.12); }
  100% { opacity: 1; transform: scale(1.04); }
}

.mt-70 {
  margin-top: -70px;
}

.border-1 {
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.blog-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

/*=================================================================
  Single Blog Page
==================================================================*/
.post.post-single {
  border: none;
}
.post.post-single .post-thumb {
  margin-top: 30px;
}

.post-sub-heading {
  border-bottom: 1px solid #dedede;
  padding-bottom: 20px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 16px;
  margin-bottom: 20px;
}

.post-social-share {
  margin-bottom: 50px;
}

.post-comments {
  margin: 30px 0;
}
.post-comments .media {
  margin-top: 20px;
}
.post-comments .media > .pull-left {
  padding-right: 20px;
}
.post-comments .comment-author {
  margin-top: 0;
  margin-bottom: 0px;
  font-weight: 500;
}
.post-comments .comment-author a {
  color: #db8700;
  font-size: 14px;
  text-transform: uppercase;
}
.post-comments time {
  margin: 0 0 5px;
  display: inline-block;
  color: #808080;
  font-size: 12px;
}
.post-comments .comment-button {
  color: #db8700;
  display: inline-block;
  margin-left: 5px;
  font-size: 12px;
}
.post-comments .comment-button i {
  margin-right: 5px;
  display: inline-block;
}
.post-comments .comment-button:hover {
  color: #db8700;
}

.post-excerpt {
  margin-bottom: 60px;
}
.post-excerpt h3 a {
  color: #000;
}
.post-excerpt p {
  margin: 0 0 30px;
}
.post-excerpt blockquote.quote-post {
  margin: 20px 0;
}
.post-excerpt blockquote.quote-post p {
  line-height: 30px;
  font-size: 20px;
  color: #db8700;
}

.single-blog {
  background-color: #fff;
  margin-bottom: 50px;
  padding: 20px;
}

.blog-subtitle {
  font-size: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #dedede;
  margin-bottom: 25px;
  text-transform: uppercase;
}

.next-prev {
  border-bottom: 1px solid #dedede;
  border-top: 1px solid #dedede;
  margin: 20px 0;
  padding: 25px 0;
}
.next-prev a {
  color: #000;
}
.next-prev a:hover {
  color: #db8700;
}
.next-prev .prev-post i {
  margin-right: 10px;
}
.next-prev .next-post i {
  margin-left: 10px;
}

.social-profile ul li {
  margin: 0 10px 0 0;
  display: inline-block;
}
.social-profile ul li a {
  color: #4e595f;
  display: block;
  font-size: 16px;
}
.social-profile ul li a i:hover {
  color: #db8700;
}

.comments-section {
  margin-top: 35px;
}

.author-about {
  margin-top: 40px;
}

.post-author {
  margin-right: 20px;
}

.post-author > img {
  border: 1px solid #dedede;
  max-width: 120px;
  padding: 5px;
  width: 100%;
}

.comment-list ul {
  margin-top: 20px;
}
.comment-list ul li {
  margin-bottom: 20px;
}

.comment-wrap {
  border: 1px solid #dedede;
  border-radius: 1px;
  margin-left: 20px;
  padding: 10px;
  position: relative;
}
.comment-wrap .author-avatar {
  margin-right: 10px;
}
.comment-wrap .media .media-heading {
  font-size: 14px;
  margin-bottom: 8px;
}
.comment-wrap .media .media-heading a {
  color: #db8700;
  font-size: 13px;
}
.comment-wrap .media .comment-meta {
  font-size: 12px;
  color: #888;
}
.comment-wrap .media p {
  margin-top: 15px;
}

.comment-reply-form {
  margin-top: 80px;
}
.comment-reply-form input, .comment-reply-form textarea {
  height: 35px;
  border-radius: 0;
  box-shadow: none;
}
.comment-reply-form input:focus, .comment-reply-form textarea:focus {
  box-shadow: none;
  border: 1px solid #db8700;
}
.comment-reply-form textarea, .comment-reply-form .btn-main, .comment-reply-form .btn-transparent, .comment-reply-form .btn-small {
  height: auto;
}

.widget {
  margin-bottom: 30px;
  padding-bottom: 35px;
}
.widget .widget-title {
  margin-bottom: 15px;
  padding-bottom: 10px;
  font-size: 16px;
  color: #333;
  font-weight: 500;
  border-bottom: 1px solid #dedede;
}
.widget.widget-latest-post .media .media-object {
  width: 100px;
  height: auto;
}
.widget.widget-latest-post .media .media-heading a {
  color: #242424;
  font-size: 16px;
}
.widget.widget-latest-post .media p {
  font-size: 12px;
  color: #808080;
}
.widget.widget-category ul li {
  margin-bottom: 10px;
}
.widget.widget-category ul li a {
  color: #837f7e;
  transition: all 0.3s ease;
}
.widget.widget-category ul li a:before {
  padding-right: 10px;
}
.widget.widget-category ul li a:hover {
  color: #db8700;
  padding-left: 5px;
}
.widget.widget-tag ul li {
  margin-bottom: 10px;
  display: inline-block;
  margin-right: 5px;
}
.widget.widget-tag ul li a {
  color: #837f7e;
  display: inline-block;
  padding: 8px 15px;
  border: 1px solid #dedede;
  border-radius: 30px;
  font-size: 14px;
  transition: all 0.3s ease;
}
.widget.widget-tag ul li a:hover {
  color: #fff;
  background: #db8700;
  border: 1px solid #db8700;
}

.footer {
  padding-bottom: 10px;
}
.footer .copyright a {
  font-weight: 600;
}

.lh-35 {
  line-height: 35px;
}

.logo {
  color: #242424;
  font-weight: 600;
  letter-spacing: 1px;
}
.logo span {
  color: #db8700;
}

.sub-form {
  position: relative;
}
.sub-form .form-control {
  border: 1px solid rgba(0, 0, 0, 0.06);
  background: #f5f8f9;
}

.footer-btm {
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.footer-socials li a {
  margin-left: 15px;
}

.scroll-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 999;
  height: 40px;
  width: 40px;
  background: #db8700;
  border-radius: 50%;
  text-align: center;
  line-height: 43px;
  color: white;
  cursor: pointer;
  transition: 0.3s;
  display: none;
}
@media (max-width: 480px) {
  .scroll-to-top {
    bottom: 15px;
    right: 15px;
  }
}
.scroll-to-top:hover {
  background-color: #333;
}

/*=== MEDIA QUERY ===*/
@media (max-width: 992px) {
  .slider .block h1 {
    font-size: 56px;
    line-height: 70px;
  }
  .bg-about {
    display: none;
  }
  .opportunity-about .bg-about.opportunity-morph {
    display: block;
    position: relative;
    width: 100%;
    min-height: clamp(280px, 62vw, 480px);
    margin-bottom: 55px;
  }
  section.about {
    border: 1px solid #dee2e6;
    border-left: 0;
    border-right: 0;
  }
  .footer-socials {
    margin-top: 20px;
  }
  .footer-socials li a {
    margin-left: 0px;
  }
}
@media (max-width: 768px) {
  .navbar-toggler {
    color: #fff;
  }
  .bg-about {
    display: none;
  }
  .slider .block h1 {
    font-size: 48px;
    line-height: 62px;
  }
  .blog-item-meta span {
    margin: 6px 0px;
  }
  .widget {
    margin-bottom: 30px;
    padding-bottom: 0px;
  }
}
@media (max-width: 480px) {
  .header-top .header-top-info a {
    margin-left: 10px;
    margin-right: 10px;
  }
  .navbar-toggler {
    color: #fff;
  }
  .slider .block h1 {
    font-size: 38px;
    line-height: 50px;
  }
  .content-title {
    font-size: 28px;
    line-height: 46px;
  }
  .p-5 {
    padding: 2rem !important;
  }
  h2, .h2 {
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 36px;
  }
  .testimonial-item .testimonial-item-content {
    padding-left: 0px;
    padding-top: 30px;
  }
  .widget {
    margin-bottom: 30px;
    padding-bottom: 0px;
  }
}
@media (max-width: 400px) {
  .header-top .header-top-info a {
    display: block;
  }
  .navbar-toggler {
    color: #fff;
  }
  .content-title {
    font-size: 28px;
    line-height: 46px;
  }
  .bg-about {
    display: none;
  }
  .p-5 {
    padding: 2rem !important;
  }
  h2, .h2 {
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 36px;
  }
  .testimonial-item .testimonial-item-content {
    padding-left: 0px;
    padding-top: 30px;
  }
  .text-lg {
    font-size: 3rem;
  }
  .widget {
    margin-bottom: 30px;
    padding-bottom: 0px;
  }
}

/*=================================================================
  Motion system
==================================================================*/
#navbar {
  transition: background-color var(--motion-duration-standard) ease,
              box-shadow var(--motion-duration-standard) ease;
}

#navbar.is-scrolled {
  background-color: #fff;
  box-shadow: 0 8px 28px rgba(36, 36, 36, 0.08);
}

#navbar .nav-link {
  position: relative;
}

#navbar .nav-link::after {
  position: absolute;
  right: 1rem;
  bottom: 0.55rem;
  left: 1rem;
  height: 2px;
  content: "";
  background: #db8700;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--motion-duration-fast) var(--motion-ease-standard);
}

#navbar .nav-item.active > .nav-link::after,
#navbar .nav-link:hover::after,
#navbar .nav-link:focus-visible::after {
  transform: scaleX(1);
}

#navbar .dropdown-toggle i {
  transition: transform var(--motion-duration-fast) var(--motion-ease-standard);
}

#navbar .dropdown.show > .dropdown-toggle i,
#navbar .dropdown:hover > .dropdown-toggle i {
  transform: rotate(180deg);
}

.card,
.service-item,
.compliance-item,
.fact-item {
  transition: transform var(--motion-duration-fast) var(--motion-ease-standard),
              box-shadow var(--motion-duration-fast) ease,
              border-color var(--motion-duration-fast) ease;
}

a.card:hover,
a.card:focus-visible,
.service-item:hover,
.compliance-item:hover,
.fact-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 32px rgba(36, 36, 36, 0.1) !important;
}

.about-item-img,
.portfolio-img,
.project-image {
  overflow: hidden;
}

.about-item-img img,
.portfolio-img img,
.project-image img {
  transition: transform var(--motion-duration-reveal) var(--motion-ease-standard);
}

.about-item-img:hover img,
.portfolio-img:hover img,
.project-image:hover img {
  transform: scale(1.025);
}

.alert {
  animation: motion-alert-in var(--motion-duration-standard) var(--motion-ease-standard) both;
}

@keyframes motion-alert-in {
  from {
    opacity: 0;
    transform: translateY(calc(-1 * var(--motion-distance-small)));
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.submit-spinner {
  display: inline-block;
  width: 0.9rem;
  height: 0.9rem;
  margin-right: 0.55rem;
  vertical-align: -0.1rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: motion-spin 650ms linear infinite;
}

@keyframes motion-spin {
  to { transform: rotate(360deg); }
}

.password-toggle i {
  transition: opacity var(--motion-duration-instant) ease,
              transform var(--motion-duration-instant) var(--motion-ease-standard);
}

.password-toggle:active i {
  transform: scale(0.88);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
  }
}
/*# sourceMappingURL=style.css.map */

/* Owner workspace */
.owner-portal { max-width: 1440px; }
.owner-nav { display:flex; align-items:center; gap:1.5rem; padding:.75rem 1rem; background:#17231e; border-radius:12px; box-shadow:0 8px 22px rgba(23,35,30,.12); }
.owner-nav__brand { display:flex; align-items:center; gap:.65rem; color:#fff; font-weight:700; white-space:nowrap; }
.owner-nav__brand:hover,.owner-nav__brand:focus { color:#f2aa4c; }
.owner-nav__links { display:flex; gap:.25rem; overflow-x:auto; scrollbar-width:thin; }
.owner-nav__links a { display:flex; align-items:center; gap:.45rem; padding:.65rem .75rem; border-radius:8px; color:#d8e0dc; font-size:.88rem; white-space:nowrap; }
.owner-nav__links a:hover,.owner-nav__links a:focus,.owner-nav__links a.active { color:#17231e; background:#fff; }
.owner-page-header { display:flex; justify-content:space-between; align-items:flex-start; gap:1.5rem; }
.owner-page-header h1 { margin:0 0 .35rem; font-size:clamp(1.65rem,3vw,2.35rem); color:#17231e; }
.owner-page-header p:not(.owner-eyebrow) { margin:0; color:#68736d; }
.owner-eyebrow { margin:0 0 .3rem; color:#b56514; font-size:.76rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.owner-stat { display:flex; align-items:center; gap:1rem; padding:1.2rem; border:1px solid #e8ecea; border-radius:12px; background:#fff; box-shadow:0 6px 18px rgba(23,35,30,.06); }
.owner-stat__icon { display:grid; place-items:center; width:44px; height:44px; border-radius:10px; background:#f5f7f6; font-size:1.15rem; }
.owner-stat span:not(.owner-stat__icon) { display:block; color:#68736d; font-size:.8rem; }
.owner-stat strong { display:block; color:#17231e; font-size:1.25rem; line-height:1.3; }
.owner-project-row { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem .25rem; border-bottom:1px solid #edf0ee; color:#24312b; }
.owner-project-row:last-child { border-bottom:0; }
.owner-project-row:hover { color:#b56514; }
.owner-project-row strong,.owner-project-row span,.owner-project-row small,.owner-table td strong,.owner-table td small { display:block; }
.owner-project-row small,.owner-table td small { margin-top:.2rem; color:#7c8580; font-size:.78rem; }
.owner-pipeline { display:flex; justify-content:space-between; padding:.6rem 0; border-bottom:1px solid #edf0ee; }
.owner-action { display:flex; align-items:center; gap:.8rem; padding:.85rem 0; color:#24312b; border-bottom:1px solid #edf0ee; }
.owner-action i { width:32px; color:#b56514; text-align:center; }
.owner-action strong,.owner-action small { display:block; }
.owner-action small { color:#7c8580; }
.owner-empty { padding:3rem 1rem; text-align:center; color:#68736d; }
.owner-empty>i { margin-bottom:1rem; color:#b9c1bd; font-size:2rem; }
.owner-table th { border-top:0; color:#69736e; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; }
.owner-table td { vertical-align:middle; }
.owner-form-section { margin-bottom:1.25rem; }
.owner-section-title { display:flex; gap:1rem; margin-bottom:1.5rem; border-bottom:1px solid #edf0ee; }
.owner-section-title>i { color:#b56514; font-size:1.1rem; }
.owner-section-title h2 { margin-bottom:.2rem; }
.owner-section-title p { color:#78817c; font-size:.88rem; }
.owner-form-actions { position:sticky; bottom:0; z-index:5; display:flex; justify-content:flex-end; gap:.5rem; padding:1rem; background:rgba(255,255,255,.96); border:1px solid #e4e9e6; border-radius:10px; box-shadow:0 -6px 20px rgba(23,35,30,.08); }
.owner-details dt,.owner-details dd { padding-top:.5rem; padding-bottom:.5rem; border-bottom:1px solid #edf0ee; }
.owner-review-notes { margin-top:1.5rem; padding:1rem; border-left:4px solid #dc3545; background:#fff4f5; }
.owner-document { display:flex; align-items:center; gap:.75rem; padding:.65rem 0; border-top:1px solid #edf0ee; }
.owner-document i { color:#b56514; }.owner-document span,.owner-document strong,.owner-document small { display:block; }.owner-document small { color:#7c8580; }
.owner-message-meta { display:flex; flex-wrap:wrap; gap:1rem; color:#747e79; font-size:.85rem; }.owner-message { color:#2e3934; line-height:1.8; }
@media(max-width:991px){.owner-nav{display:block}.owner-nav__brand{margin-bottom:.65rem}.owner-page-header{align-items:flex-start}.owner-table{min-width:760px}}
@media(max-width:575px){.owner-portal{padding-left:15px!important;padding-right:15px!important}.owner-page-header{display:block}.owner-page-header>.btn{margin-top:1rem;width:100%}.owner-nav__links a span{display:none}.owner-nav__links a{font-size:1rem}.owner-form-actions{flex-wrap:wrap}.owner-form-actions .btn{flex:1 1 45%}.owner-project-row{align-items:flex-start}.owner-project-row .text-right{min-width:105px}}

/* Public account chooser */
.account-menu__panel { width:310px; margin-top:.75rem; padding:.5rem; border:0; border-radius:12px; box-shadow:0 16px 40px rgba(20,31,26,.18); }
.account-menu__intro { padding:.75rem .85rem 1rem; border-bottom:1px solid #edf0ee; }
.account-menu__intro strong,.account-menu__intro span { display:block; }
.account-menu__intro strong { color:#17231e; }
.account-menu__intro span { margin-top:.25rem; color:#6f7974; font-size:.8rem; line-height:1.45; }
.account-menu__item { display:flex; align-items:center; gap:.8rem; margin-top:.35rem; padding:.75rem .85rem; border-radius:8px; white-space:normal; }
.account-menu__item i { width:30px; color:#b56514; text-align:center; }
.account-menu__item span,.account-menu__item strong,.account-menu__item small { display:block; }
.account-menu__item strong { color:#24312b; font-size:.9rem; }
.account-menu__item small { color:#7a837f; font-size:.75rem; }
.account-menu__item:hover,.account-menu__item:focus { background:#f6f8f7; }
@media(max-width:991px){.account-menu__panel{right:auto;left:50%;transform:translateX(-50%);text-align:left}.account-menu>.btn{width:100%}}

/* Registration subscription step */
.subscription-page{max-width:1100px}.subscription-plan{cursor:pointer;border:2px solid transparent;transition:border-color .2s ease,transform .2s ease}.subscription-plan:hover{transform:translateY(-3px)}.subscription-plan:has(input:checked){border-color:#b56514}.subscription-plan__check{display:grid;place-items:center;width:28px;height:28px;margin-left:auto;border-radius:50%;background:#edf0ee;color:transparent}.subscription-plan:has(input:checked) .subscription-plan__check{background:#b56514;color:#fff}.subscription-price strong,.subscription-price span{display:block}.subscription-price strong{font-size:1.65rem;color:#17231e}.subscription-price span{color:#7a837f}.subscription-plan ul{padding-left:1.2rem;color:#5f6964}.subscription-plan li{margin:.55rem 0}.payment-method{display:flex;align-items:center;gap:.5rem;padding:.8rem;border:1px solid #dfe5e2;border-radius:8px;cursor:pointer}.payment-method:has(input:checked){border-color:#b56514;background:#fff8ef}

.registration-documents{margin:1.5rem 0;padding:1.25rem;border:1px solid #e0e6e3;border-radius:12px;background:#f8faf9}.document-progress{padding:.35rem .55rem;border-radius:20px;background:#e8eeeb;color:#52605a;font-size:.75rem;white-space:nowrap}.document-upload{position:relative;display:flex;align-items:center;gap:.75rem;margin-bottom:.65rem;padding:.8rem;border:1px dashed #cbd4cf;border-radius:9px;background:#fff;cursor:pointer;transition:border-color .2s ease,background .2s ease}.document-upload:hover,.document-upload:focus-within{border-color:#b56514;background:#fffaf4}.document-upload.has-file{border-style:solid;border-color:#4f956b;background:#f4fbf6}.document-upload__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#edf1ef;color:#b56514}.document-upload.has-file .document-upload__icon{background:#dff2e5;color:#32794e}.document-upload__copy,.document-upload__copy strong,.document-upload__copy small{display:block;min-width:0}.document-upload__copy{overflow:hidden}.document-upload__copy strong{color:#27332d;font-size:.86rem}.document-upload__copy small{overflow:hidden;color:#79827e;text-overflow:ellipsis;white-space:nowrap}.document-upload input{position:absolute;width:1px;height:1px;opacity:0}

/* Fieldwork media experience */
.field-carousel {
  --carousel-accent: #db8700;
  position: relative;
  background: #111714;
  color: #fff;
  outline: none;
  touch-action: pan-y;
}
.field-carousel:focus-visible { box-shadow: inset 0 0 0 3px rgba(219,135,0,.8); }
.field-carousel__timer { position: absolute; z-index: 5; top: 0; left: 0; right: 0; height: 3px; background: rgba(255,255,255,.14); }
.field-carousel__timer span { display: block; width: 0; height: 100%; background: var(--carousel-accent); }
.field-carousel__timer span.is-running { animation: fieldTimer 7s linear forwards; }
@keyframes fieldTimer { to { width: 100%; } }
.field-carousel__viewport { position: relative; height: min(760px, calc(100vh - 96px)); min-height: 620px; overflow: hidden; }
.field-carousel__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .65s ease, visibility .65s ease; }
.field-carousel__slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.field-carousel__media { width: 100%; height: 100%; object-fit: cover; object-position: center; background: #111714; transform: scale(1.025) translate(calc(var(--pointer-x, 0) * -12px), calc(var(--pointer-y, 0) * -9px)); transition: transform 1.1s cubic-bezier(.2,.75,.2,1); }
.field-carousel.is-dragging { cursor: grabbing; }
.field-carousel.is-dragging .field-carousel__media { transform: scale(1.04) translateX(calc(var(--drag-x, 0px) * .035)); transition-duration: .12s; }
.field-carousel__slide video.field-carousel__media { object-fit: cover; }
.field-carousel__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8,15,12,.88) 0%, rgba(8,15,12,.58) 44%, rgba(8,15,12,.1) 76%), linear-gradient(0deg, rgba(8,15,12,.64), transparent 44%); pointer-events: none; }
.field-carousel__content { position: absolute; z-index: 2; inset: 0; display: flex; align-items: center; padding-top: 32px; padding-bottom: 110px; pointer-events: none; }
.field-carousel__copy { max-width: 720px; pointer-events: auto; }
.field-carousel__slide.is-active .field-carousel__eyebrow { animation: fieldReveal .65s .12s both; }
.field-carousel__slide.is-active .field-carousel__copy h1,
.field-carousel__slide.is-active .field-carousel__copy h2 { animation: fieldReveal .75s .2s both; }
.field-carousel__slide.is-active .field-carousel__copy p { animation: fieldReveal .75s .29s both; }
.field-carousel__slide.is-active .field-carousel__actions { animation: fieldReveal .75s .38s both; }
@keyframes fieldReveal { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
.field-carousel__eyebrow { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 22px; color: #fff; font-weight: 700; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; }
.field-carousel__eyebrow::before { content: ''; width: 38px; height: 2px; background: var(--carousel-accent); }
.field-carousel__copy h1, .field-carousel__copy h2 { color: #fff; font-size: clamp(2.5rem, 5.4vw, 5.25rem); line-height: .98; letter-spacing: -.045em; margin: 0 0 24px; max-width: 760px; }
.field-carousel__copy p { max-width: 610px; color: rgba(255,255,255,.82); font-size: 1.1rem; line-height: 1.7; margin-bottom: 34px; }
.field-carousel__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; }
.field-carousel__preview { display: inline-flex; align-items: center; gap: 10px; padding: 0; border: 0; background: transparent; color: #fff; font-weight: 700; cursor: pointer; }
.field-carousel__preview i { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.65); transition: background .25s ease, transform .25s ease; }
.field-carousel__preview:hover i, .field-carousel__preview:focus-visible i { background: #db8700; border-color: #db8700; transform: scale(1.1); }
.field-carousel__preview:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.field-carousel__text-link { color: #fff; border-bottom: 1px solid rgba(255,255,255,.55); padding: 8px 0; font-weight: 700; }
.field-carousel__text-link:hover { color: #fff; border-color: #fff; }
.field-carousel__controls { position: absolute; z-index: 3; left: 50%; bottom: 34px; transform: translateX(-50%); display: flex; justify-content: space-between; align-items: center; pointer-events: none; }
.field-carousel__progress, .field-carousel__buttons { display: flex; align-items: center; pointer-events: auto; }
.field-carousel__progress strong { font-size: 1.3rem; color: #fff; }
.field-carousel__progress span { width: 74px; height: 1px; margin: 0 14px; background: rgba(255,255,255,.45); }
.field-carousel__progress small { color: rgba(255,255,255,.64); }
.field-carousel__buttons { gap: 8px; }
.field-carousel__buttons button { width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,.48); background: rgba(7,12,10,.28); color: #fff; cursor: pointer; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.field-carousel__buttons button:hover, .field-carousel__buttons button:focus-visible { background: var(--carousel-accent); border-color: var(--carousel-accent); transform: translateY(-2px); outline: none; }
.field-carousel__rail { display: flex; gap: 8px; overflow-x: auto; padding-top: 14px; padding-bottom: 14px; scrollbar-width: thin; }
.field-carousel__dot { flex: 0 0 auto; border: 0; border-left: 2px solid #d8ddd9; background: transparent; color: #7b847e; padding: 4px 18px 4px 12px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-align: left; text-transform: uppercase; cursor: pointer; }
.field-carousel__dot span { display: block; color: #a7aea9; font-size: 10px; margin-bottom: 2px; }
.field-carousel__dot.is-active { border-color: var(--carousel-accent); color: #fff; }
.field-carousel__dot.is-active span { color: var(--carousel-accent); }
.field-carousel__dot:hover, .field-carousel__dot:focus-visible { color: #fff; border-color: rgba(219,135,0,.55); outline: none; }
.field-carousel__swipe-hint { display: none; }
.field-scroll-cue { position: relative; z-index: 4; width: max-content; margin: -24px auto 0; display: flex; align-items: center; gap: 12px; padding: 13px 20px; border-radius: 999px; background: #fff; color: #202823; box-shadow: 0 12px 34px rgba(9,20,13,.18); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.field-scroll-cue i { color: var(--color-primary, #db8700); animation: cueBounce 1.7s ease-in-out infinite; }
.field-scroll-cue:hover { color: #db8700; transform: translateY(-3px); }
@keyframes cueBounce { 50% { transform: translateY(4px); } }
.service-item, .latest-blog .card { position: relative; overflow: hidden; isolation: isolate; transition: transform .3s ease, box-shadow .3s ease; }
.service-item::after, .latest-blog .card::after { content: ''; position: absolute; z-index: -1; inset: 0; opacity: 0; background: radial-gradient(260px circle at var(--spot-x, 50%) var(--spot-y, 50%), rgba(219,135,0,.14), transparent 70%); transition: opacity .3s ease; pointer-events: none; }
.service-item:hover, .service-item:focus-within, .latest-blog .card:hover { transform: translateY(-8px); box-shadow: 0 22px 50px rgba(22,34,26,.12); }
.service-item:hover::after, .service-item:focus-within::after, .latest-blog .card:hover::after { opacity: 1; }
.auth-field-image { position: relative; isolation: isolate; min-height: 620px; overflow: hidden; background: #14251b; }
.auth-field-image__media { position: absolute; z-index: -3; inset: -5%; background-position: center; background-size: cover; background-repeat: no-repeat; transform: scale(1.04); animation: authImageDrift 16s ease-in-out infinite alternate; will-change: transform, background-position; }
.auth-field-image--signup .auth-field-image__media { background-position: 64% center; animation-name: authSignupImageDrift; }
.auth-field-image__overlay { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; background: linear-gradient(145deg, rgba(5,13,8,.76) 0%, rgba(10,27,17,.54) 52%, rgba(30,12,7,.68) 100%); pointer-events: none; }
.auth-field-image__overlay::after { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 28%, rgba(255,255,255,.12) 46%, transparent 63%); transform: translateX(-120%); animation: authImageSheen 8s ease-in-out infinite; }
.auth-field-image__content { position: relative; z-index: 1; width: 100%; height: 100%; min-height: inherit; padding: 40px; }
.auth-field-image__content > div { max-width: 410px; text-shadow: 0 3px 22px rgba(0,0,0,.5); }
.auth-field-image__content h3 { font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.15; }
.auth-field-image__content p { margin: 18px 0 0; color: rgba(255,255,255,.86); font-size: 1rem; line-height: 1.7; }
@keyframes authImageDrift { from { transform: scale(1.04) translate3d(-1%, 0, 0); background-position: 48% center; } to { transform: scale(1.14) translate3d(1.5%, -1%, 0); background-position: 54% center; } }
@keyframes authSignupImageDrift { from { transform: scale(1.04) translate3d(-1%, 0, 0); background-position: 61% center; } to { transform: scale(1.15) translate3d(1.5%, -1%, 0); background-position: 69% center; } }
@keyframes authImageSheen { 0%, 62% { transform: translateX(-120%); } 82%, 100% { transform: translateX(120%); } }
.modal-is-open { overflow: hidden; }
.system-modal[hidden] { display: none; }
.system-modal { position: fixed; z-index: 9999; inset: 0; display: grid; place-items: center; padding: 24px; opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; }
.system-modal.is-open { opacity: 1; visibility: visible; }
.system-modal__backdrop { position: absolute; inset: 0; background: rgba(5,10,8,.82); backdrop-filter: blur(12px); }
.system-modal__dialog { position: relative; width: min(1100px, 100%); max-height: calc(100vh - 48px); overflow: auto; border-radius: 18px; background: #111714; color: #fff; box-shadow: 0 30px 100px rgba(0,0,0,.48); transform: translateY(24px) scale(.975); transition: transform .3s cubic-bezier(.2,.8,.2,1); outline: none; }
.system-modal.is-open .system-modal__dialog { transform: translateY(0) scale(1); }
.system-modal__topbar { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.system-modal__topbar span { display: inline-flex; gap: 9px; align-items: center; }
.system-modal__close { width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(255,255,255,.28); background: transparent; color: #fff; cursor: pointer; }
.system-modal__close:hover, .system-modal__close:focus-visible { background: #db8700; border-color: #db8700; outline: none; transform: rotate(90deg); }
.system-modal__stage { background: #050807; aspect-ratio: 16/9; display: grid; place-items: center; overflow: hidden; }
.system-modal__stage img, .system-modal__stage video { width: 100%; height: 100%; object-fit: contain; }
.system-modal__details { display: flex; justify-content: space-between; align-items: center; gap: 28px; padding: 24px 28px 28px; }
.system-modal__details h2 { color: #fff; margin: 0 0 8px; font-size: clamp(1.4rem, 3vw, 2.2rem); }
.system-modal__details p { color: rgba(255,255,255,.68); margin: 0; }
.onboarding-progress { display: flex; align-items: center; margin: 0 0 28px; }
.onboarding-progress__item { display: flex; align-items: center; gap: 9px; color: #9aa19c; }
.onboarding-progress__item > span { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 auto; border-radius: 50%; border: 2px solid #dfe3e0; background: #fff; transition: .3s ease; }
.onboarding-progress__item small, .onboarding-progress__item strong { display: block; line-height: 1.2; white-space: nowrap; }
.onboarding-progress__item small { font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.onboarding-progress__item strong { color: #5b645e; font-size: 12px; }
.onboarding-progress__item.is-active > span { border-color: #db8700; color: #db8700; box-shadow: 0 0 0 6px rgba(219,135,0,.1); animation: progressPulse 2.2s ease-in-out infinite; }
.onboarding-progress__item.is-active strong { color: #222b25; }
.onboarding-progress__line { flex: 1; height: 3px; min-width: 28px; margin: 0 12px; overflow: hidden; border-radius: 3px; background: #e6e9e7; }
.onboarding-progress__line span { display: block; width: 52%; height: 100%; background: linear-gradient(90deg, #db8700, #f2ad3c); animation: progressFlow 2s ease-in-out infinite alternate; }
.upload-progress { position: relative; height: 26px; margin: 0 0 18px; overflow: hidden; border-radius: 999px; background: #edf0ee; }
.upload-progress > span { position: absolute; inset: 0 auto 0 0; width: 0; border-radius: inherit; background: linear-gradient(90deg, #db8700, #f2ad3c); transition: width .45s cubic-bezier(.2,.8,.2,1); }
.upload-progress em { position: relative; z-index: 1; display: block; padding: 4px 10px; color: #303a33; font-size: 11px; font-style: normal; font-weight: 800; text-align: center; }
.registration-card { width: 100%; max-width: 1120px; min-height: 680px; overflow: hidden; border-radius: 18px; }
.registration-modal-panel { display: flex; align-items: center; justify-content: center; background: #fff; }
.registration-launch { max-width: 440px; }
.registration-launch__icon { display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto 20px; border-radius: 20px; background: linear-gradient(145deg, #fff1e4, #ffe3d0); color: #db8700; font-size: 28px; box-shadow: 0 12px 30px rgba(219,135,0,.14); }
.registration-launch h2 { font-size: clamp(1.65rem, 3vw, 2.25rem); }
.registration-launch__choices { display: grid; gap: 12px; margin-top: 28px; }
.registration-launch__choices button { display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 13px; width: 100%; padding: 15px; border: 1px solid #dfe5e1; border-radius: 12px; background: #fff; color: #253029; text-align: left; cursor: pointer; transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.registration-launch__choices button > i:first-child { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 10px; background: #f5f7f6; color: #db8700; font-size: 18px; }
.registration-launch__choices button span, .registration-launch__choices button strong, .registration-launch__choices button small { display: block; }
.registration-launch__choices button small { color: #7b847f; }
.registration-launch__choices button:hover, .registration-launch__choices button:focus-visible { border-color: #db8700; transform: translateY(-3px); box-shadow: 0 12px 28px rgba(30,42,34,.1); outline: none; }
.registration-modal-backdrop { position: fixed; z-index: 2147483000; inset: 0; background: rgba(6,12,9,.78); backdrop-filter: blur(10px); opacity: 0; visibility: hidden; transition: .25s ease; }
.registration-modal-content[hidden] { display: none; }
.registration-modal-content { position: fixed; z-index: 2147483001; isolation: isolate; top: 50%; left: 50%; width: min(1180px, calc(100vw - 40px)); max-height: calc(100vh - 40px); overflow: auto; padding: 40px 48px 48px; border-radius: 22px; background: #fff; box-shadow: 0 35px 110px rgba(0,0,0,.38); opacity: 0; transform: translate(-50%, calc(-50% + 24px)) scale(.98); transition: opacity .25s ease, transform .3s cubic-bezier(.2,.8,.2,1); outline: none; }
body.modal-is-open .registration-modal-backdrop { opacity: 1; visibility: visible; }
body.modal-is-open .registration-modal-content { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.registration-modal-toolbar { position: sticky; z-index: 4; top: -40px; display: flex; justify-content: space-between; align-items: center; margin: -40px -48px 30px; padding: 16px 24px; border-bottom: 1px solid #e7ebe8; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); color: #6d7771; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.registration-modal-toolbar span { display: inline-flex; align-items: center; gap: 8px; }
.registration-modal-toolbar button { width: 40px; height: 40px; border: 0; border-radius: 50%; background: #f2f5f3; color: #29342d; cursor: pointer; transition: .2s ease; }
.registration-modal-toolbar button:hover, .registration-modal-toolbar button:focus-visible { background: #db8700; color: #fff; transform: rotate(90deg); outline: none; }
.registration-modal-content--large #signupForm { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.registration-modal-content--large #signupForm > .mb-4,
.registration-modal-content--large #signupForm > section,
.registration-modal-content--large #signupForm > .registration-upload-summary,
.registration-modal-content--large #signupForm > .form-check,
.registration-modal-content--large #signupForm > button { grid-column: 1 / -1; }
.registration-modal-content--large .form-control { min-height: 52px; padding: 12px 15px; border-radius: 10px; font-size: 1rem; }
.registration-modal-content--large textarea.form-control { min-height: 88px; }
.registration-modal-content--large .role-card { min-height: 120px !important; border-radius: 14px !important; }
.registration-modal-content--large .registration-documents,
.registration-modal-content--large .investor-document-section { margin-top: 10px; padding: 24px; border: 1px solid #e4e9e6; border-radius: 16px; background: #fafbf9; }
.registration-modal-content--large .document-upload { min-height: 78px; padding: 16px 18px; }
.investor-type-options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.investor-type-options label { margin: 0; cursor: pointer; }
.investor-type-options input { position: absolute; opacity: 0; }
.investor-type-options span { display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; align-items: center; height: 100%; padding: 16px; border: 2px solid #e2e7e4; border-radius: 12px; transition: .2s ease; }
.investor-type-options i { grid-row: 1 / 3; font-size: 20px; color: #db8700; }
.investor-type-options strong, .investor-type-options small { display: block; }
.investor-type-options small { color: #77817b; }
.investor-type-options input:checked + span { border-color: #db8700; background: #fff8f5; box-shadow: 0 0 0 4px rgba(219,135,0,.08); }
.investor-type-options input:focus-visible + span { outline: 3px solid rgba(219,135,0,.25); outline-offset: 2px; }
.organization-fields, .investor-document-section { margin: 22px 0; padding: 20px; border: 1px solid #e0e6e2; border-radius: 14px; background: #fafcfb; }
.registration-upload-summary { margin: 22px 0 10px; padding: 16px; border-radius: 12px; background: #f4f7f5; }
.registration-upload-summary > div:first-child { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; color: #435047; font-size: 12px; }
.registration-upload-summary .upload-progress { margin-bottom: 0; }
.cadastre-resource { background: #f4f7f5; }
.cadastre-resource__card { padding: clamp(24px, 4vw, 40px); border: 1px solid #e0e6e2; border-radius: 16px; background: #fff; }
.cadastre-resource__icon { display: block; margin-bottom: 20px; color: #db8700; font-size: 36px; }
.cadastre-resource__card h3 { font-size: 1.4rem; line-height: 1.35; }
.cadastre-resource__card .btn { max-width: 100%; white-space: normal; }
.cadastre-resource__card small { color: #59665e; }
@keyframes progressPulse { 50% { box-shadow: 0 0 0 10px rgba(219,135,0,0); } }
@keyframes progressFlow { to { width: 70%; } }
@media (max-width: 991px) {
  .field-carousel__viewport { min-height: 650px; height: 78vh; }
  .field-carousel__shade { background: linear-gradient(90deg, rgba(8,15,12,.86), rgba(8,15,12,.34)), linear-gradient(0deg, rgba(8,15,12,.68), transparent 48%); }
  .field-carousel__copy { max-width: 620px; }
}
@media (max-width: 767px) {
  .field-carousel__viewport { height: 680px; min-height: 0; }
  .field-carousel__content { align-items: flex-end; padding-bottom: 112px; }
  .field-carousel__copy h1, .field-carousel__copy h2 { font-size: clamp(2.35rem, 11vw, 3.5rem); }
  .field-carousel__copy p { font-size: 1rem; line-height: 1.55; }
  .field-carousel__controls { bottom: 28px; }
  .field-carousel__buttons button { width: 44px; height: 44px; }
  .field-carousel__swipe-hint { display: flex; position: absolute; z-index: 3; right: 15px; top: 18px; align-items: center; gap: 7px; color: rgba(255,255,255,.8); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
  .field-scroll-cue { margin-top: -22px; }
  .system-modal { padding: 10px; }
  .system-modal__dialog { max-height: calc(100vh - 20px); border-radius: 12px; }
  .system-modal__details { display: block; padding: 18px; }
  .system-modal__details .btn { margin-top: 18px; }
  .onboarding-progress__item div { display: none; }
	.registration-card { min-height: 580px; }
	.registration-modal-content { width: calc(100vw - 18px); max-height: calc(100vh - 18px); padding: 20px; border-radius: 12px; }
	.registration-modal-toolbar { top: -20px; margin: -20px -20px 22px; }
	.registration-modal-content--large #signupForm { grid-template-columns: 1fr; }
	.registration-modal-content--large #signupForm > * { grid-column: 1; }
	.registration-modal-content--large .registration-documents,
	.registration-modal-content--large .investor-document-section { padding: 16px; }
	.investor-type-options { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .field-carousel__slide, .field-carousel__buttons button { transition: none; }
  .field-carousel__timer span, .field-carousel__slide.is-active .field-carousel__copy > *, .field-scroll-cue i { animation: none; }
	.onboarding-progress__item.is-active > span, .onboarding-progress__line span { animation: none; }
  .auth-field-image__media, .auth-field-image__overlay::after { animation: none; }
  .zambia-life__backgrounds span { animation: none; opacity: 0; transform: none; }
  .zambia-life__backgrounds span:first-child { opacity: 1; }
  .field-carousel__media { transform: none; transition: none; }
}
