/*
Theme Name: KPC – Kandovan Pars
Author: تیم برنامه نویسی کندوان
Description: قالب اختصاصی شرکت دانش بنیان کندوان پارس (راست‌چین، واکنش‌گرا، حالت روشن و تاریک).
Version: 2.19.1
Requires at least: 5.9
Requires PHP: 7.4
Text Domain: kpc
*/

/*
* This file contains the styling for the actual template, this
is the file you need to edit to change the look of the
template.

This files table contents are outlined below>>>>>

*******************************************
*******************************************
** - Google Fonts
** - Default CSS
** - Section Title CSS
** - Navbar CSS
** - Banner CSS
** - About CSS
** - Service CSS
** - Service Details CSS
** - Works CSS
** - Projects CSS
** - Team CSS
** - Testimonials CSS
** - Blog CSS
** - Blog Details CSS
** - Partner CSS
** - Newsletter CSS
** - Instrument CSS
** - Map CSS
** - Amazing Projects CSS
** - Build CSS
** - Quote CSS
** - Faq CSS
** - Count CSS
** - Page Title CSS
** - Authentication CSS
** - Member Details CSS
** - Terms CSS
** - Error CSS
** - Pricing CSS
** - Comingsoon CSS
** - Contact CSS
** - Pagination CSS
** - Go Top CSS
** - Preloader CSS
** - Footer CSS
** - Copy Right CSS
*/
/* -----------------------------------------
  Google Fonts
----------------------------------------- */
@font-face {
    font-family: vazir;
    src: url('assets/webfonts/YekanBakhFaNum-VF.woff2') format('woff2-variations'),
         url('assets/webfonts/YekanBakhFaNum-VF.woff2') format('woff2');
    font-weight: 100 950; /* variable font: real bold / extra-bold weights */
    font-style: normal;
    font-display: swap;
}
/* ----------------------------------------- */
.slider-wrapper{
    position:relative;
    overflow:hidden;
}

.fixed-text{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:999;
    pointer-events:none;

    font-size:180px;
    font-weight:900;
    line-height:1;
    white-space:nowrap;
    color:#fff;
   
}

.ls-container,
.ls-wp-container{
    position:relative;
    z-index:1;
}
body {
  padding: 0;
  margin: 0;
  font-size: 16px;
  font-family: "vazir", sans-serif;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  color: #001e4c;
  line-height: 1.4;
  font-family: "vazir", sans-serif;
}

h1 {
  font-size: 32px;
}

h2 {
  font-size: 22px;
}

h3 {
  font-size: 18px;
}

h4 {
  font-size: 16px;
}

a {
  color: #031d41;
  transition: 0.5s;
  text-decoration: none;
  outline: 0 !important;
  font-family: "vazir", sans-serif;
}

a:hover {
  color: #004888;
  text-decoration: none;
}

:focus {
  outline: 0 !important;
}
.breadcrumb-list a{
    color:#fff;
}
.d-table {
  width: 100%;
  height: 100%;
}

.d-table-cell {
  vertical-align: middle;
}

img {
  max-width: 100%;
  height: auto;
}

p {
  color: #24324a;
  font-size: 16px;
  margin-bottom: 15px;
  line-height: 1.6;
}

p:last-child {
  margin-bottom: 0;
}

.ptb-100 {
  padding-top: 100px;
  padding-bottom: 100px;
}

.pt-100 {
  padding-top: 100px;
}
.pt-40 {
  padding-top: 40px;
}
.pb-40 {
  padding-bottom: 40px;
}
.pb-100 {
  padding-bottom: 100px;
}

.ptb-70 {
  padding-top: 70px;
  padding-bottom: 70px;
}

.pt-70 {
  padding-top: 70px;
}

.pb-70 {
  padding-bottom: 70px;
}

.no-wrap {
  flex-wrap: nowrap;
}

.color-primary {
  color: #004888 !important;
}

.color-secondary {
  color: #001e4c !important;
}

.color-dark {
  color: #031d41;
}

.bg-primary {
  background-color: #f7f9fc !important;
}

.bg-secondary {
  background-color: #f1f5fa !important;
}

.bg-fff3cf {
  background-color: #e6edf5 !important;
}

.form-group {
  margin-bottom: 20px;
}

/*section-title*/
.section-title {
  max-width: 720px;
  text-align: left;
  margin-right: auto;
  margin-bottom: 60px;
  position: relative;
  z-index: 5;
}
.section-title::before {
  position: absolute;
  content: "";
  left: -10px;
  top: 0;
  width: 40%;
  height: 100%;
  background: #bdbfc157;
  z-index: -1;
}
.section-title h2 {
  font-size: 24px;
  line-height: 1.3;
  margin: 0;
  padding: 10px 0;
}
.section-title p {
  max-width: 600px;
  font-size: 17px;
  font-weight: 600;
  margin-left: auto;
  margin-right: auto;
  margin-top: 12px;
}
.section-title span {
  color: #004888;
}

.section-title .learn-more-btn {
  margin-top: 20px;
}

.section-title.style-two {
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}
.section-title.style-two::before {
  display: none;
}
.section-title.style-two h2 {
  padding: unset;
  margin-top: -10px;
}

/* Primary Button */
.primary-btn {
  position: relative;
  overflow: hidden;
  text-align: center;
  display: inline-block;
  transition: 0.5s;
  border-radius: 0;
  border: none;
  padding: 10px 30px;
  z-index: 1;
  color: #ffffff;
  background-color: #004888;
  font-size: 16px;
  font-weight: 600;
  font-family: "vazir", sans-serif;
  line-height: 1.8;
  text-transform: capitalize;
}
.primary-btn::before, .primary-btn::after {
  content: "";
  position: absolute;
  width: calc(50% + 4px);
  height: 0;
  background-color: #042654;
  z-index: -1;
  transition: 0.5s;
}
.primary-btn::before {
  bottom: 0;
  left: 0;
}
.primary-btn::after {
  top: 0;
  right: 0;
}
.primary-btn:hover {
  color: #ffffff;
}
.primary-btn:hover::before, .primary-btn:hover::after {
  height: 120%;
}

.cta-btn {
  line-height: 0.8;
}

/* Text Button*/
.btn-text-only {
  background: transparent;
}

/* Social Icon CSS*/
.social-link a {
  display: inline-block;
  line-height: 0;
  text-align: center;
  background: #004888;
  color: #ffffff;
  padding: 10px 12px;
  font-size: 16px;
  margin-right: 8px;
}
.social-link a:hover {
  background: #042654;
  color: #ffffff;
}
.social-link a:last-child {
  margin-right: 0;
}

/*Form-Control CSS*/
.form-control {
  height: 58px;
  color: #031d41;
  box-shadow: unset !important;
  border: none;
  background-color: #ffffff;
  transition: 0.5s;
  border-radius: 0;
  padding: 1px 0 0 15px;
  font-size: 16px;
}

.form-control::-moz-placeholder {
  color: #a5a5a5;
  -moz-transition: 0.5s;
  transition: 0.5s;
}

.form-control::placeholder {
  color: #a5a5a5;
  transition: 0.5s;
}

.form-control:focus {
  border-color: #bdbfc1;
}

textarea.form-control {
  height: auto;
  padding-top: 15px;
}

/* -----------------------------------------
  Navbar CSS
----------------------------------------- */
.header-area {
  position: absolute;
  background-color: transparent;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 999;
}
.header-area .top-header-area {
  padding: 20px 0 35px;
  background: rgb(26, 26, 26);
  background: linear-gradient(90deg, rgb(26, 26, 26) 30%, rgba(26, 26, 26, 0.4962359944) 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#031d41",endColorstr="#031d41",GradientType=1);
}
.header-area .top-header-area .navbar-brand {
  padding: 0;
  margin: 0;
}
.navbar-brand img{
    height:80px;
}
.header-area .top-header-area .contact-info {
  position: relative;
}
.header-area .top-header-area .contact-info i {
  position: absolute;
  top: 0;
  left: 0;
  width: 45px;
  height: 45px;
  line-height: 45px;
  color: #ffffff;
  text-align: center;
  font-size: 30px;
  display: inline-block;
}
.header-area .top-header-area .contact-info .contact-info-content {
  margin-left: 55px;
  display: inline-block;
}
.header-area .top-header-area .contact-info .contact-info-content p {
  text-transform: capitalize;
  color: #bdbfc1;
  line-height: 1.4;
  margin: 0;
}
.header-area .top-header-area .contact-info .contact-info-content a {
  font-size: 14px;
  color: #ffffff;
}

/* Header Style Two*/
.header-area.header-two,
.header-area.header-three {
  position: absolute;
  background-color: transparent;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 999;
}
.header-area.header-two .top-header-area,
.header-area.header-three .top-header-area {
  padding: 16px 0;
  background: #bdbfc1;
}
.header-area.header-two .top-header-area .social-link a,
.header-area.header-three .top-header-area .social-link a {
  padding: 0;
  margin-right: 14px;
  background: transparent;
}
.header-area.header-two .top-header-area .social-link a:hover,
.header-area.header-three .top-header-area .social-link a:hover {
  color: #ffffff;
}
.header-area.header-two .top-header-area .contact-info .contact-info-content,
.header-area.header-three .top-header-area .contact-info .contact-info-content {
  margin-left: unset;
}
.header-area.header-two .top-header-area .contact-info .contact-info-content p,
.header-area.header-three .top-header-area .contact-info .contact-info-content p {
  margin-right: 8px;
  display: inline-block;
  color: #ffffff;
}
.header-area.header-two .top-header-area .contact-info .contact-info-content a,
.header-area.header-three .top-header-area .contact-info .contact-info-content a {
  font-size: 14px;
  color: #031d41;
}
.header-area.header-two .kpc-nav,
.header-area.header-three .kpc-nav {
  padding: 4px 0;
  margin-top: 0;
  margin-top: unset;
  background: rgba(0, 30, 76, 0.78);
}
.header-area.header-two .kpc-nav .navbar,
.header-area.header-three .kpc-nav .navbar {
  background: transparent;
  border: transparent;
}
.header-area.header-two .kpc-nav .navbar ul,
.header-area.header-three .kpc-nav .navbar ul {
  margin-left: auto;
}
.header-area.header-two .kpc-nav .navbar .nav-item a,
.header-area.header-three .kpc-nav .navbar .nav-item a {
  color: #ffffff;
}
.header-area.header-two .kpc-nav .navbar .nav-item .toggle::after,
.header-area.header-three .kpc-nav .navbar .nav-item .toggle::after {
  color: #ffffff;
}
.header-area.header-two .kpc-nav .navbar .side-option .item a:not(.primary-btn),
.header-area.header-three .kpc-nav .navbar .side-option .item a:not(.primary-btn) {
  color: #ffffff;
}
.header-area.header-two .kpc-nav .navbar .side-option .item .menu-item:hover a,
.header-area.header-three .kpc-nav .navbar .side-option .item .menu-item:hover a {
  color: #004888;
}
.header-area.header-two .kpc-nav .navbar .side-option .item .menu-item a,
.header-area.header-three .kpc-nav .navbar .side-option .item .menu-item a {
  color: #031d41;
}
.header-area.header-two .kpc-nav .navbar .side-option .item:last-child,
.header-area.header-three .kpc-nav .navbar .side-option .item:last-child {
  margin-right: 0;
}

/* Header Style Three*/
.header-area.header-three {
  position: unset;
}
.header-area.header-three .kpc-nav {
  background: #ffffff;
}
.header-area.header-three .kpc-nav .navbar .nav-item a {
  color: #031d41;
}
.header-area.header-three .kpc-nav .navbar .nav-item .toggle::after {
  color: #031d41;
}
.header-area.header-three .kpc-nav .navbar .side-option .item a:not(.primary-btn) {
  color: #031d41;
}
.header-area.header-three .kpc-nav .navbar .side-option .item .menu-link {
  color: #031d41;
}
.header-area.header-three .kpc-nav .navbar .side-option .item:last-child {
  margin-right: 0;
}

.kpc-responsive-nav {
  display: none;
}

.navbar-light .navbar-brand .logo2 {
  display: none;
}

.kpc-nav {
  margin-top: -15px;
}
.kpc-nav .navbar {
  position: inherit;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  background: #ffffff;
  border: 2px solid #bdbfc1;
}
.kpc-nav .navbar ul {
  padding-left: 0;
  list-style-type: none;
  margin-bottom: 0;
}
.kpc-nav .navbar .navbar-nav .nav-item {
  position: relative;
  margin-left: 15px;
  margin-right: 15px;
}
.kpc-nav .navbar .navbar-nav .nav-item a {
  color: #031d41;
  font-size: 14px;
  font-weight: 600;
  padding-left: 0;
  padding-right: 0;
   /*padding-top: 28px;*/
  padding-top: 20px;
  padding-bottom: 10px;
}
.kpc-nav .navbar .navbar-nav .nav-item a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .toggle::after {
  content: "\f107"; /* angle-down */
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
  vertical-align: middle;
  margin-left: 5px;
  display: inline-block;
  color: #031d41;
  transition: 0.5s;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu {
  border: none;
  top: 66px;
  left: 0;
  z-index: 1005;
  opacity: 0;
  width: 250px;
  display: block;
  border-radius: 0;
  padding: 10px 0;
  position: absolute;
  visibility: hidden;
  background: #ffffff;
  transition: 0.5s;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .nav-item {
  position: relative;
  padding-left: 16px;
  margin-left: 0;
  margin-right: 0;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .nav-item .nav-link {
  color: #031d41;
  z-index:999;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .nav-item .nav-link:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .nav-item .nav-link:hover.toggle::after {
  transform: none;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .nav-item a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu .toggle::after {
  content: "\f104"; /* angle-left: sub menus open to the left (RTL) */
  position: absolute;
  top: 10px;
  right: 16px;
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
  color: #031d41;
  transition: 0.5s;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu a {
  font-size: 13px;
  font-weight: 500;
  text-transform: capitalize;
  padding-top: 8px;
  padding-bottom: 8px;
  margin: 0;
  display: block;
}
.kpc-nav .navbar .navbar-nav .nav-item:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  margin-top: 0;
}
.kpc-nav .navbar .navbar-nav .nav-item:hover .dropdown-menu .toggle::after {
  transform: none;
}
.kpc-nav .navbar .navbar-nav .nav-item:hover .toggle::after {
  transform: rotate(180deg);
}
.kpc-nav .navbar .side-option {
  display: flex;
  align-items: center;
}
.kpc-nav .navbar .side-option .item {
  position: relative;
  margin-left: 15px;
  margin-right: 15px;
}
.kpc-nav .navbar .side-option .item .language a {
  color: #031d41;
  font-size: 16px;
  font-weight: 600;
}
.kpc-nav .navbar .side-option .item .language a i {
  vertical-align: 3px;
}
.kpc-nav .navbar .side-option .item .language a img {
  width: 16px;
  height: 16px;
  max-width: 16px;
  border-radius: 50%;
  margin-top: -2px;
}
.kpc-nav .navbar .side-option .item .language .menu {
  border: none;
  top: 46px;
  left: -15px;
  z-index: 99;
  display: none;
  border-radius: 0;
  min-width: 130px;
  padding: 10px 5px;
  position: absolute;
  background: #ffffff;
  transition: 0.5s;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
  animation: fadeIn 0.3s linear 1;
}
.kpc-nav .navbar .side-option .item .language .menu .menu-item {
  padding: 5px;
}
.kpc-nav .navbar .side-option .item .language .menu .menu-item .menu-link {
  font-size: 15px;
  font-weight: 500;
  color: #031d41;
}
.kpc-nav .navbar .side-option .item .language .menu .menu-item .menu-link:hover {
  color: #004888;
}
.kpc-nav .navbar .side-option .item .language .menu img {
  margin-top: 0;
  border-radius: 50%;
  margin-right: 5px;
  margin-top: -1.5px;
}
.kpc-nav .navbar .side-option .item .search i {
  vertical-align: middle;
}

.language a {
  color: #031d41;
  font-size: 16px;
  font-weight: 600;
}
.language a i {
  vertical-align: 3px;
}
.language .menu {
  border: none;
  top: 46px;
  left: -15px;
  z-index: 99;
  display: none;
  border-radius: 0;
  min-width: 100px;
  padding: 10px 5px;
  position: absolute;
  background: #ffffff;
  transition: 0.5s;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
  animation: fadeIn 0.3s linear 1;
}
.language .menu .menu-item {
  padding: 5px;
}
.language .menu .menu-item .menu-link {
  font-size: 15px;
  font-weight: 500;
  color: #031d41;
}
.language .menu .menu-item .menu-link:hover {
  color: #004888;
}
.language .menu img {
  width: 16px;
  height: 16px;
  max-width: 16px;
  border-radius: 50%;
  margin-right: 5px;
}

.search {
  position: relative;
  transition: 0.5s;
}

.search-box {
  position: relative;
  width: auto;
  max-width: 400px;
  background: #fff;
  padding: 16px 10px;
  box-shadow: 0 10px 15px rgba(51, 47, 59, 0.1);
  margin: 0 auto;
}
.search-box .search-form {
  position: relative;
  display: flex;
}
.search-box .search-form .search-input {
  display: block;
  width: 100%;
  line-height: initial;
  border: 1px solid #eeeeee;
  color: #031d41;
  outline: 0;
  padding: 6px 12px;
  transition: 0.5s;
}
.search-box .search-form .search-input:focus {
  border-color: #bdbfc1;
}
.search-box .mfp-close {
  width: unset;
  height: unset;
  top: -50px;
  opacity: 1;
  padding: 0 0 18px 10px;
  color: #ffffff;
}

.mfp-zoom-in .mfp-with-anim {
  opacity: 0;
  transition: all 0.2s ease-in-out;
  transform: scale(0.8);
}
.mfp-zoom-in.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-zoom-in.mfp-removing .mfp-with-anim {
  transform: scale(0.8);
  opacity: 0;
}
.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

.main-navbar-area.stickyadd {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1030;
  animation: slideInDown 1s 1;
}
.main-navbar-area.stickyadd .kpc-nav {
  margin-top: 0;
}
.main-navbar-area.stickyadd .kpc-nav .navbar-brand {
  display: block;
}

.header-area.header-two .main-navbar-area.stickyadd .kpc-nav {
  padding: 5px 0;
  background: rgb(0, 30, 76);
}

.header-area.header-three .main-navbar-area.stickyadd .kpc-nav {
  padding: 5px 0;
  box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.08);
}

.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: -250px;
  margin-top: 15px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: 250px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: 250px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: 250px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: 250px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu {
  top: 0;
  opacity: 0;
  left: 250px;
  visibility: hidden;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a {
  color: #031d41;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:hover {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a:focus {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li a.active {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  margin-top: 0;
}
.kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu li.active a {
  color: #004888;
}
.kpc-nav .navbar .navbar-nav .nav-item:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  margin-top: 0;
}

/* -----------------------------------------
  Banner CSS
----------------------------------------- */
.home-banner-area {
  padding-top: 160px;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background-image: url('assets/img/banner/banner-bg-1.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.home-banner-area::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.4962359944);
}

.banner-content {
  padding-top: 200px;
  padding-bottom: 200px;
}
.banner-content h1 {
  font-size: 32px;
  color: #ffffff;
  margin-bottom: 20px;
  margin-top: -15px;
  line-height: 1.2;
}
.banner-content h1 span {
  color: #bdbfc1;
}
.banner-content p {
  font-size: 18px;
  color: #ffffff;
  margin-bottom: 35px;
}
.banner-content .social-link a {
  display: inline-block;
  color: #bdbfc1;
  margin-right: 4px;
  background: #f1f5fa;
  border-radius: 50%;
  font-size: 12px;
  padding: 0;
  width: 26px;
  height: 26px;
  line-height: 26px;
  border: 1px solid #f1f5fa;
}
.banner-content .social-link a:last-child {
  margin-right: 0;
}
.banner-content .social-link a:hover {
  color: #bdbfc1;
  background: transparent;
  border: 1px solid #bdbfc1;
}
.banner-content .cta-btn {
  margin-bottom: 40px;
}

.banner-img img {
  max-width: 576px;
}

.banner-two {
  padding-top: 152px;
  background-image: url(assets/img/banner/banner-bg-2.jpg);
}
.banner-two::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.62);
}
.banner-two .banner-content {
  text-align: center;
}
.banner-two .banner-content .cta-btn {
  margin-bottom: 0;
}

.banner-three {
  background: unset;
  background: #fff;
  padding: unset;
}
.banner-three.home-banner-area::before {
  background: unset;
  background: none;
}
.banner-three .banner-content .cta-btn {
  margin: unset;
}
.banner-three .banner-slider .owl-item::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.62);
}
.banner-three .banner-slider .owl-item:nth-child(1) {
  background: url(assets/img/banner/banner-slider-1.jpg) no-repeat center;
  background-size: cover;
}
.banner-three .banner-slider .owl-item:nth-child(2) {
  background: url(assets/img/banner/banner-slider-2.jpg) no-repeat center;
  background-size: cover;
}
.banner-three .banner-slider .owl-item:nth-child(3) {
  background: url(assets/img/banner/banner-slider-3.jpg) no-repeat center;
  background-size: cover;
}
.banner-three .owl-item.active h1 {
  animation: fadeInDown 2s both 1;
}
.banner-three .owl-item.active p {
  animation: fadeIn 2s both 1;
}
.banner-three .owl-item.active .cta-btn {
  animation: fadeInUp 2s both 1;
}
.banner-three .owl-carousel .owl-dots {
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: 50px;
  display: flex;
  align-items: center;
  transform: translateX(-50%);
}
.banner-three .owl-carousel .owl-dots .owl-dot {
  display: inline-block;
  width: 6px;
  height: 24px;
  margin: 5px;
  border-radius: 30px;
  background: #ffffff;
  transition: 0.5s;
}
.banner-three .owl-carousel .owl-dots .owl-dot.active {
  height: 45px;
  background: #bdbfc1;
}

/* -----------------------------------------
 About CSS
----------------------------------------- */
.about-section .about-content {
  margin-bottom: 30px;
}
.about-section .about-content h2 {
  margin-bottom: 18px;
  line-height: 1.3;
}
.about-section .about-content h2 span {
  color: #004888;
}
.about-section .about-content p {
  line-height: 1.5;
  margin-bottom: 10px;
}
.about-section .about-content .about-item-list {
  margin-bottom: 30px;
}
.about-section .about-content .about-item-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.about-section .about-content .about-item-list ul li {
  display: block;
  font-weight: 500;
  margin-bottom: 6px;
  padding-left: 25px;
  position: relative;
  line-height: 1.8;
  color: #24324a;
}
.about-section .about-content .about-item-list ul li:last-child {
  margin-bottom: 0;
}
.about-section .about-content .about-item-list ul li i {
  margin-left: -25px;
  margin-right: 5px;
  color: #004888;
  vertical-align: -2px;
}
.about-section .about-image {
  margin-bottom: 30px;
}
.about-section .left,
.about-section .right {
  position: relative;
}
.about-section .left::before,
.about-section .right::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  bottom: -15px;
}
.about-section .left::before {
  right: -15px;
  border-bottom: 150px solid rgba(189, 191, 193, 0.8);
  border-left: 150px solid transparent;
}
.about-section .right {
  margin-top: -15px;
}
.about-section .right::before {
  left: -15px;
  border-bottom: 135px solid rgba(189, 191, 193, 0.8);
  border-right: 135px solid transparent;
}
.about-section .about-fact {
  display: flex;
  position: relative;
  padding: 35px 30px;
  margin-bottom: 30px;
  background: url(assets/img/about/about-fact-bg.jpg) no-repeat center;
  background-size: cover;
  z-index: 1;
  align-items: center;
  justify-content: center;
}
.about-section .about-fact::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.8);
  z-index: -1;
}
.about-section .about-fact i {
  width: 60px;
  height: 60px;
  line-height: 57px;
  background: #ffffff;
  text-align: center;
  display: inline-block;
}
.about-section .about-fact i img {
  width: 32px;
}
.about-section .about-fact .content {
  padding-left: 16px;
}
.about-section .about-fact .content h4 {
  color: #bdbfc1;
  margin-bottom: 0;
}
.about-section .about-fact .content span {
  color: #ffffff;
}
.about-section .about-img-content {
  position: relative;
  overflow: hidden;
}
.about-section .about-img-content .overlay-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: -15px;
  padding: 25px 30px;
  border: 4px solid #bdbfc1;
  background: rgba(0, 30, 76, 0.9);
  z-index: 1;
}
.about-section .about-img-content .overlay-content h3 {
  line-height: 1.2;
  color: #bdbfc1;
}
.about-section .about-img-content .overlay-content span {
  color: #ffffff;
}

.about-section.about-style-two .about-img-content {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}
.about-section.about-style-two .about-img-content .about-image {
  margin-bottom: 15px;
}
.about-section.about-style-two .about-img-content .about-image img {
  max-width: unset;
}
.about-section.about-style-two .about-img-content .about-fact {
  display: block;
  overflow: hidden;
  margin-bottom: 0;
  background: #001e4c;
  max-width: calc(100% - 55px);
  padding: 20px 0;
}
.about-section.about-style-two .about-img-content .about-fact::before {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  border-top: 90px solid #bdbfc1;
  border-left: 60px solid transparent;
}
.about-section.about-style-two .about-img-content .about-fact::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: unset;
  height: unset;
  background: unset;
  border-bottom: 90px solid #bdbfc1;
  border-right: 60px solid transparent;
}
.about-section.about-style-two .about-img-content .about-fact .content {
  padding-left: 16px;
  text-align: center;
}
.about-section.about-style-two .about-img-content .about-fact .content h4 {
  color: #bdbfc1;
  margin-top: -5px;
  margin-bottom: 0;
}
.about-section.about-style-two .about-img-content .about-fact .content span {
  color: #ffffff;
}
.about-section.about-style-two .about-img-content .overlay-img {
  position: absolute;
  bottom: 35px;
  right: 0;
  height: calc(100% - 135px);
}

.about-section.about-style-three .about-img-content {
  margin-bottom: 30px;
}
.about-section.about-style-three .about-img-content [class*=col-]:first-child {
  padding-right: 5px;
}
.about-section.about-style-three .about-img-content [class*=col-]:last-child {
  padding-left: 5px;
}
.about-section.about-style-three .about-img-content .about-image {
  margin-bottom: 10px;
}

/* -----------------------------------------
  Service CSS
----------------------------------------- */
.strong-service-section {
  background: url(assets/img/service-bg-1.jpg) no-repeat center;
  background-size: cover;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.bg-head-service{
    background-color:#fff;
    border-radius:5px;
    padding:5px;
}
.strong-service-section::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.7);
  z-index: -1;
}
.strong-service-section .service-content {
  margin-bottom: 30px;
  padding: 43px 0;
  position: relative;
  z-index: 1;
}
.strong-service-section .service-content::after {
  position: absolute;
  content: "";
  left: -60px;
  top: 0;
  width: 40%;
  height: 100%;
  background: #bdbfc1;
  z-index: -1;
}
.strong-service-section .service-content h2 {
  color: #ffffff;
  line-height: 1.3;
  margin-top: -10px;
  margin-bottom: 15px;
}
.strong-service-section .service-content p {
  color: #ffffff;
  margin-bottom: 30px;
}
.strong-service-section .service-content .primary-btn {
  background: #ffffff;
}
.strong-service-section .custom-owl-nav {
  position: absolute;
  bottom: 0;
  right: 0;
}

.strong-service-slider .slider-item {
  padding: 58px 30px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  max-width: 350px;
  background: rgba(26, 26, 26, 0.8);
  transition: 0.5s;
}
.strong-service-slider .slider-item > i {
  width: 60px;
  height: 60px;
  line-height: 57px;
  margin-bottom: 18px;
  background: #ffffff;
  text-align: center;
  display: block;
}
.strong-service-slider .slider-item > i img {
  display: inline-block;
  max-width: 32px;
}
.strong-service-slider .slider-item h3 {
  margin-bottom: 10px;
}
.strong-service-slider .slider-item h3 a {
  color: #ffffff;
}
.strong-service-slider .slider-item h3 a:hover {
  color: #bdbfc1;
}
.strong-service-slider .slider-item p {
  margin-bottom: 20px;
  color: #d2d2d2;
}
.strong-service-slider .slider-item .read-more-btn {
  color: #ffffff;
}
.strong-service-slider .slider-item .read-more-btn i {
  vertical-align: -2px;
  color: #bdbfc1;
}
.strong-service-slider .slider-item .read-more-btn:hover {
  color: #bdbfc1;
}
.strong-service-slider .owl-nav {
  position: absolute;
  left: -10%;
  bottom: 0;
}
.strong-service-slider .slider-item:hover {
  border: 2px solid rgba(255, 255, 255, 0.8);
}

.best-service-section {
  /*background: url(assets/img/bg-map-1.png) no-repeat center;*/
  background-size: cover;
}
.best-service-section .section-title h2 {
  margin-top: -10px;
}
.best-service-section .service-item-single {
  position: relative;
  padding: 32px;
  margin-bottom: 30px;
  /*border: 2px solid #001e4c;*/
  overflow: hidden;
  /*background: transparent;*/
  background-color:#ebeef3;
  border-radius:5px;
  transition: 0.5s;
  box-shadow:0 1px 3px 0 rgba(0,0,0,0.2),0 1px 2px 0 rgba(0,0,0,0.1) !important
}
.best-service-section .service-item-single::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
  display:none;
}
.best-service-section .service-item-single > i {
  width:300px;
  height: auto;
  line-height: 57px;
  margin-bottom: 18px;
  /*background: #bdbfc1;*/
  text-align: center;
  display: block;
}
.best-service-section .service-item-single > i img {
  display: inline-block;
  max-width: 100%;
}
.best-service-section .service-item-single h3 {
  margin-bottom: 0px;
}
.best-service-section .service-item-single h3 a {
  color: #001e4c;
}
.best-service-section .service-item-single p {
margin-top:16px;
  margin-bottom: 20px;
  color: #031d41;
  text-align:justify;
}
.best-service-section .service-item-single .read-more-btn {
  color: #031d41;
}
.best-service-section .service-item-single .read-more-btn i {
  vertical-align: -2px;
  color: #004888;
}
/*.best-service-section .service-item-single:hover {*/
/*  background: #001e4c;*/
/*}*/
.best-service-section .service-item-single:hover::before {
  top: 15px;
  right: 15px;
}
/*.best-service-section .service-item-single:hover > i {*/
/*  background: #ffffff;*/
/*}*/
/*.best-service-section .service-item-single:hover h3 a {*/
/*  color: #001e4c;*/
/*}*/
/*.best-service-section .service-item-single:hover h3 a:hover {*/
/*  color: #bdbfc1;*/
/*}*/
/*.best-service-section .service-item-single:hover p {*/
/*  color: #d2d2d2;*/
/*}*/
/*.best-service-section .service-item-single:hover .read-more-btn {*/
/*  color: #ffffff;*/
/*}*/
/*.best-service-section .service-item-single:hover .read-more-btn:hover {*/
/*  color: #bdbfc1;*/
/*}*/

.best-service-section.service-two .service-item-single {
  background: #f7f9fc;
  text-align: center;
}
.best-service-section.service-two .service-item-single:hover {
  background: #001e4c;
}
.best-service-section.service-two .service-item-single > i {
  margin-left: auto;
  margin-right: auto;
}

.about-services-section {
  position: relative;
  z-index: 1;
  background: url(assets/img/service-bg-1.jpg) no-repeat center;
  background-size: cover;
}
.about-services-section::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.7);
  z-index: -1;
}
.about-services-section .service-item-single {
  position: relative;
  padding: 50px 30px;
  margin-bottom: 30px;
  transition: 0.5s;
  text-align: center;
  background: #ffffff;
  z-index: 1;
}
.about-services-section .service-item-single::before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0.09;
  background: url(assets/img/service-bg-shape.png) no-repeat center;
  z-index: -1;
}
.about-services-section .service-item-single > i {
  width: 60px;
  height: 60px;
  line-height: 57px;
  margin-bottom: 15px;
  background: #bdbfc1;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.about-services-section .service-item-single > i img {
  display: inline-block;
  max-width: 32px;
}
.about-services-section .service-item-single h3 {
  margin-bottom: 10px;
}
.about-services-section .service-item-single h3 a {
  color: #001e4c;
}
.about-services-section .service-item-single p {
  color: #031d41;
}

/* -----------------------------------------
  Works CSS
----------------------------------------- */
.our-works-section {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.our-works-section::after {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  width: 40%;
  height: 40%;
  background: #bdbfc1;
  z-index: -1;
}
.our-works-section .works-content h2 {
  margin-bottom: 25px;
  line-height: 1.3;
}
.our-works-section .works-content h2 span {
  color: #bdbfc1;
}
.our-works-section .works-content p {
  margin-bottom: 20px;
}
.our-works-section .works-content .works-item .works-item-single {
  display: flex;
  align-items: center;
  position: relative;
  padding: 35px 60px;
  margin-bottom: 15px;
  background: url(assets/img/item-bg-2.jpg) no-repeat center;
  background-size: cover;
  max-width: calc(100% - 60px);
  justify-content: center;
}
.our-works-section .works-content .works-item .works-item-single:first-child {
  background: url(assets/img/item-bg-1.jpg) no-repeat center;
  background-size: cover;
}
.our-works-section .works-content .works-item .works-item-single:last-child {
  background: url(assets/img/item-bg-3.jpg) no-repeat center;
  background-size: cover;
}
.our-works-section .works-content .works-item .works-item-single::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.8);
}
.our-works-section .works-content .works-item .works-item-single::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 30px solid #bdbfc1;
  z-index: 1;
}
.our-works-section .works-content .works-item .works-item-single i {
  width: 60px;
  height: 60px;
  line-height: 57px;
  background: #ffffff;
  text-align: center;
  display: inline-block;
  z-index: 1;
}
.our-works-section .works-content .works-item .works-item-single i img {
  width: 32px;
}
.our-works-section .works-content .works-item .works-item-single .content {
  padding-left: 16px;
  z-index: 1;
}
.our-works-section .works-content .works-item .works-item-single .content h4 {
  color: #ffffff;
  margin-bottom: 0;
}
.our-works-section .works-content .works-item .works-item-single:last-child {
  margin-bottom: 0;
}
.our-works-section .works-content .works-item .works-item-single:last-child::before {
  display: none;
}
.our-works-section .works-image {
  height: calc(100% - 15px);
  background: url("assets/img/video-img-1.jpg") no-repeat center;
  background-size: cover;
  position: relative;
  z-index: 1;
}
.our-works-section .works-image::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.5);
  z-index: -2;
}
.our-works-section .works-image::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  bottom: -15px;
  left: -15px;
  border-bottom: 170px solid rgba(189, 191, 193, 0.8);
  border-right: 170px solid transparent;
  z-index: -1;
}
.our-works-section .works-image img {
  opacity: 0;
}
.our-works-section .works-image .video-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90px;
  height: 90px;
  background-color: #bdbfc1;
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.our-works-section .works-image .video-btn i {
  color: #ffffff;
}
.our-works-section .works-image .video-btn::after, .our-works-section .works-image .video-btn::before {
  z-index: -1;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  animation: ripple 3s linear infinite;
  opacity: 0;
  border-radius: 50%;
  background: #bdbfc1;
}
.our-works-section .works-image .video-btn::before {
  animation-delay: 1s;
}

/* -----------------------------------------
  Projects CSS
----------------------------------------- */
.finished-projects-section {
  position: relative;
  z-index: 1;
}
.finished-projects-section .bg-image {
  overflow: hidden;
}
.projects-section h3{
    color:#fff;
}
.finished-projects-section .bg-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 413px;
  z-index: -1;
  -o-object-fit: cover;
     object-fit: cover;
}
.finished-projects-section .bg-image::after {
  position: absolute;
  content: "";
  left: 0;
  top: -1px;
  width: 100%;
  height: 415px;
  background: rgba(241, 245, 250, 0.95);
  z-index: -1;
}
.finished-projects-section .finished-projects-slider {
  margin-bottom: 40px;
}
.finished-projects-slider h3{
color:#fff;
padding: 32px;
text-align: center;
}
.finished-projects-section .finished-projects-slider .slider-item {
  overflow: hidden;
}
.finished-projects-section .finished-projects-slider .slider-item .overlay-content {
  position: absolute;
  overflow: hidden;
  width: calc(100% - 30px);
  height: calc(100% - 30px);
  top: 15px;
  left: 15px;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: capitalize;
  transition: 0.5s;
  background: rgba(26, 26, 26, 0.7);
}
.finished-projects-section .finished-projects-slider .slider-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.finished-projects-section .finished-projects-slider .slider-item .overlay-content h3 a {
  color: #ffffff;
}
.finished-projects-section .finished-projects-slider .slider-item .overlay-content h3 a:hover {
  color: #bdbfc1;
}
.finished-projects-section .finished-projects-slider .slider-item .image img {
  transition: 0.5s;
}
.finished-projects-section .finished-projects-slider .slider-item:hover img {
  transform: scale(1.1);
}
.finished-projects-section .finished-projects-slider .slider-item:hover .overlay-content {
  opacity: 1;
}
.finished-projects-section .finished-projects-slider .slider-item:hover .overlay-content::before {
  top: 10px;
  right: 10px;
}
.finished-projects-section .finished-projects-slider .owl-nav {
  position: absolute;
  right: 0;
  top: -60px;
  margin-top: -40px;
}

.finished-projects-section.style-two .bg-image::after {
  background: rgba(0, 30, 76, 0.78);
}
.finished-projects-section.style-two .section-title h2 {
  color: #001e4c;
}
.finished-projects-section.style-two .slider-item .overlay-content {
  background: rgba(0, 30, 76, 0.7);
}
.finished-projects-section.style-two .slider-item .overlay-content::after {
  position: absolute;
  content: "";
  bottom: -50px;
  left: -50px;
  border-bottom: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
}
.finished-projects-section.style-two .slider-item:hover .overlay-content::after {
  bottom: 10px;
  left: 10px;
}

.projects-section .projects-item {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}
.projects-section .projects-item .overlay-content {
  position: absolute;
  overflow: hidden;
  width: calc(100% - 30px);
  height: calc(100% - 30px);
  top: 15px;
  left: 15px;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-transform: capitalize;
  text-align: center;
  transition: 0.5s;
  background: rgba(0, 30, 76, 0.7);
  padding:32px;
}
.projects-section .projects-item .overlay-content::after {
  position: absolute;
  content: "";
  bottom: -50px;
  left: -50px;
  border-bottom: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
}
.projects-section .projects-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid  #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
  
}
.projects-section .projects-item .overlay-content h3 a {
  color: #ffffff;
}
.projects-section .projects-item .overlay-content h3 a:hover {
  color: #bdbfc1;
}
.projects-section .projects-item .overlay-content p {
  color: #d2d2d2;
}
.projects-section .projects-item .image img {
  transition: 0.5s;
}
.projects-section .projects-item:hover img {
  transform: scale(1.1);
}
.projects-section .projects-item:hover .overlay-content {
  opacity: 1;
}
.projects-section .projects-item:hover .overlay-content::before {
  top: 10px;
  right: 10px;
}
.projects-section .projects-item:hover .overlay-content::after {
  bottom: 10px;
  left: 10px;
}

/* -----------------------------------------
  Team CSS
----------------------------------------- */
.team-section, .team-section.team-two {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.team-section .team-content {
  margin-bottom: 30px;
  padding: 98px 0;
  position: relative;
  z-index: 1;
}
.team-section .team-content::after {
  position: absolute;
  content: "";
  left: -60px;
  top: 0;
  width: 40%;
  height: 100%;
  background: #bdbfc1;
  z-index: -1;
}
.team-section .team-content h2 {
  line-height: 1.3;
  margin-top: -10px;
  margin-bottom: 15px;
}
.team-section .team-content p {
  margin-bottom: 30px;
}
.team-section .team-content .primary-btn {
  color: #ffffff;
  background: #031d41;
}
.team-section .team-content .primary-btn:hover {
  color: #031d41;
}
.team-section .team-content .primary-btn:hover::before, .team-section .team-content .primary-btn:hover::after {
  background: #ffffff;
  height: 100%;
}

.team-slider .slider-item {
  overflow: hidden;
  max-width: 350px;
}
.team-slider .slider-item .image {
  margin: 0 10px 0;
  overflow: hidden;
}
.team-slider .slider-item .image img {
  transition: 0.5s;
}
.team-slider .slider-item .content {
  position: relative;
  overflow: hidden;
  padding: 16px;
  text-align: center;
  background: #031d41;
}
.team-slider .slider-item .content h3 {
  margin-bottom: 0;
}
.team-slider .slider-item .content h3 a {
  color: #ffffff;
}
.team-slider .slider-item .content h3 a:hover {
  color: #bdbfc1;
}
.team-slider .slider-item .content span {
  color: #d2d2d2;
}
.team-slider .slider-item .overlay-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  padding: 25px;
  transition: 0.5s;
}
.team-slider .slider-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -100px;
  right: 0;
  border-top: 100px solid rgba(189, 191, 193, 0.8);
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.team-slider .slider-item .overlay-content .social-link {
  display: inline-block;
}
.team-slider .slider-item .overlay-content .social-link a {
  display: block;
  line-height: 0;
  text-align: center;
  background: #031d41;
  color: #bdbfc1;
  padding: 12px;
  font-size: 12px;
  margin-bottom: 8px;
  margin-right: unset;
  transform: rotateY(90deg);
}
.team-slider .slider-item .overlay-content .social-link a:hover {
  background: #004888;
  color: #ffffff;
}
.team-slider .slider-item:hover .image img {
  transform: scale(1.1);
}
.team-slider .slider-item:hover .overlay-content {
  opacity: 1;
}
.team-slider .slider-item:hover .overlay-content::before {
  top: -10px;
}
.team-slider .slider-item:hover .overlay-content a {
  transform: rotateY(0);
}
.team-slider .owl-nav {
  position: absolute;
  left: -10%;
  bottom: 0;
}

.team-section.team-two {
  background: unset;
}
.team-section.team-two .content {
  text-align: center;
  background: #001e4c;
}
.team-section.team-two .overlay-content {
  height: 70%;
  left: 30px;
  top: 30px;
  width: calc(100% - 60px);
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
}
.team-section.team-two .overlay-content::before {
  content: unset;
}
.team-section.team-two .overlay-content .social-link a {
  margin: unset;
  margin-right: 8px;
  display: inline-block;
  background: #001e4c;
}
.team-section.team-two .cta-btn .primary-btn {
  color: #ffffff;
  background: #001e4c;
}
.team-section.team-two .cta-btn .primary-btn::before, .team-section.team-two .cta-btn .primary-btn::after {
  background-color: #bdbfc1;
}
.team-section.team-two .cta-btn .primary-btn:hover {
  color: #ffffff;
}

.team-members-section .team-item {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}
.team-members-section .team-item .image {
  /*margin: 10px 10px 0;*/
  overflow: hidden;
}
.team-members-section .team-item .image img {
  transition: 0.5s;
}
.team-members-section .team-item .content {
  position: relative;
  overflow: hidden;
  padding: 16px;
  text-align: center;
  background: #001e4c;
}
.team-members-section .team-item .content::before {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  border-bottom: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  display:none;
}
.team-members-section .team-item .content::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  display:none;
}
.team-members-section .team-item .content h3 a {
  color: #ffffff;
}
.team-members-section .team-item .content h3 a:hover {
  color: #bdbfc1;
}
.team-members-section .team-item .content span {
  color: #d2d2d2;
}
.team-members-section .team-item .overlay-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  padding: 25px;
  transition: 0.5s;
}
.team-members-section .team-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -100px;
  right: 0;
  border-top: 100px solid rgba(189, 191, 193, 0.8);
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.team-members-section .team-item .overlay-content .social-link {
  display: inline-block;
}
.team-members-section .team-item .overlay-content .social-link a {
  display: block;
  line-height: 0;
  text-align: center;
  background: #001e4c;
  color: #bdbfc1;
  padding: 12px;
  font-size: 12px;
  margin-bottom: 8px;
  margin-right: unset;
  transform: rotateY(90deg);
}
.team-members-section .team-item .overlay-content .social-link a:hover {
  background: #004888;
  color: #ffffff;
}
.team-members-section .team-item:hover .image img {
  transform: scale(1.1);
}
.team-members-section .team-item:hover .overlay-content {
  opacity: 1;
}
.team-members-section .team-item:hover .overlay-content::before {
  top: -10px;
}
.team-members-section .team-item:hover .overlay-content a {
  transform: rotateY(0);
}

/* -----------------------------------------
  Testimonials CSS
----------------------------------------- */
.testimonial-section {
  position: relative;
  overflow: hidden;
  z-index: 1;
  background: url(assets/img/testimonial-bg.jpg) no-repeat top;
}
.testimonial-section::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  max-height: 413px;
  background: rgba(26, 26, 26, 0.7);
  z-index: -1;
}
.testimonial-section .testimonial-image {
  position: absolute;
  width: 100%;
  padding-right: 30px;
}
.testimonial-section .testimonial-image img {
  width: 100%;
  height: unset;
}
.testimonial-section .team-content h2 {
  margin-bottom: 25px;
  color: #ffffff;
}
.testimonial-section .testimonial-slider {
  background: #e6edf5;
}
.testimonial-section .testimonial-slider .slider-item {
  display: flex;
  flex: 1;
  display: -ms-block;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  padding: 50px 70px;
}
.testimonial-section .testimonial-slider .slider-item i {
  font-size: 50px;
}
.testimonial-section .testimonial-slider .slider-item p {
  font-size: 25px;
  color: #031d41;
  font-weight: 600;
  margin-top: 20px;
  margin-bottom: 20px;
  line-height: 1.6;
}
.testimonial-section .testimonial-slider .slider-item .client-img {
  position: relative;
  margin-bottom: 20px;
}
.testimonial-section .testimonial-slider .slider-item .client-img::after {
  position: absolute;
  content: "";
  right: -5px;
  bottom: -5px;
  border-bottom: 40px solid #bdbfc1;
  border-left: 40px solid transparent;
  z-index: -1;
}
.testimonial-section .testimonial-slider .slider-item .client-info h6 {
  margin: 0;
  font-size: 18px;
}
.testimonial-section .testimonial-slider .owl-nav {
  position: absolute;
  right: -15%;
  top: 30%;
}

.testimonial-section.testimonial-two::after, .testimonial-section.testimonial-three::after {
  background: rgba(0, 30, 76, 0.7);
}
.testimonial-section.testimonial-two .testimonial-slider::before, .testimonial-section.testimonial-three .testimonial-slider::before {
  position: absolute;
  content: "";
  bottom: 10px;
  right: 10px;
  border-bottom: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
  z-index: 1;
}
.testimonial-section.testimonial-two .testimonial-slider::after, .testimonial-section.testimonial-three .testimonial-slider::after {
  position: absolute;
  content: "";
  top: 10px;
  left: 10px;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
  z-index: 1;
}
.testimonial-section.testimonial-two .section-title h2, .testimonial-section.testimonial-three .section-title h2 {
  color: #ffffff;
}
.testimonial-section.testimonial-two .owl-nav, .testimonial-section.testimonial-three .owl-nav {
  position: unset;
  right: unset;
  top: unset;
}
.testimonial-section.testimonial-two .owl-nav button, .testimonial-section.testimonial-three .owl-nav button {
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}
.testimonial-section.testimonial-two .owl-nav .owl-prev, .testimonial-section.testimonial-three .owl-nav .owl-prev {
  left: -50px;
}
.testimonial-section.testimonial-two .owl-nav .owl-next, .testimonial-section.testimonial-three .owl-nav .owl-next {
  right: -50px;
}

.testimonial-section.testimonial-three {
  background: #f7f9fc;
  background: unset;
}
.testimonial-section.testimonial-three .section-title h2 {
  margin-top: -10px;
}
.testimonial-section.testimonial-three::after {
  content: none;
  content: unset;
}

/* -----------------------------------------
  Blog CSS
----------------------------------------- */
.blog-section .owl-nav, .blog-grid .owl-nav {
  position: absolute;
  right: 0;
  top: -60px;
  margin-top: -40px;
}

.blog-item-single {
  margin-bottom: 30px;
  background: #ffffff;
}
.blog-item-single .blog-item-img {
  overflow: hidden;
  position: relative;
  margin-bottom: 20px;
}
.blog-item-single .blog-item-img .overlay-content {
  position: absolute;
  overflow: hidden;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  top: 10px;
  left: 10px;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: capitalize;
  transition: 0.5s;
  background: rgba(0, 30, 76, 0.7);
  
}
.blog-item-single .blog-item-img .overlay-content::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid rgb(189, 191, 193);
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.blog-item-single .blog-item-img .overlay-content::after {
  position: absolute;
  content: "";
  bottom: -50px;
  left: -50px;
  border-bottom: 100px solid rgb(189, 191, 193);
  border-right: 100px solid transparent;
  transition: 0.5s;
}
.blog-item-single .blog-item-img .overlay-content a {
  font-size: 32px;
  color: #ffffff;
}
.blog-item-single .blog-item-img .overlay-content a:hover {
  color: #bdbfc1;
}
.blog-item-single .blog-item-img .image img {
  transition: 0.5s;
}
.blog-item-single .blog-item-img:hover .overlay-content {
  opacity: 1;
}
.blog-item-single .blog-item-img:hover .overlay-content::before {
  top: 10px;
  right: 10px;
}
.blog-item-single .blog-item-img:hover .overlay-content::after {
  bottom: 10px;
  left: 10px;
}
.blog-item-single .blog-item-img .tag {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 6px 6px 8px;
  text-align: center;
  background: #031d41;
}
.blog-item-single .blog-item-img .tag span {
  font-size: 18px;
  font-weight: 500;
  display: block;
}
.blog-item-single .blog-item-img .tag span:first-child {
  border-bottom: 2px solid #24324a;
  color: #ffffff;
}
.blog-item-single .blog-item-img .tag span:last-child {
  color: #bdbfc1;
}
.blog-item-single .blog-item-content {
  padding: 0 15px 20px 15px;
}
.blog-item-single .read-more-btn {
  font-weight: 600;
}
.blog-item-single .read-more-btn i {
  vertical-align: -2px;
  color: #004888;
}

.blog-grid .blog-item-img .overlay-content {
  background: rgba(0, 30, 76, 0.7);
}

/* -----------------------------------------
  Partner CSS
----------------------------------------- */
.partner-area .partner-slider .slider-item, .partner-two .partner-slider .slider-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.partner-area .partner-slider .slider-item img, .partner-two .partner-slider .slider-item img {
  cursor: pointer;
  width: auto;
  transition: 0.5s;
}
.partner-area .partner-slider .slider-item img:last-child, .partner-two .partner-slider .slider-item img:last-child {
  position: absolute;
  top: 0;
  left: 50%;
  /*transform: translateX(-50%);*/
  opacity: 0;
}
.partner-area .partner-slider .slider-item:hover img:first-child, .partner-two .partner-slider .slider-item:hover img:first-child {
  opacity: 0;
   width: auto;
}
.partner-area .partner-slider .slider-item:hover img:last-child, .partner-two .partner-slider .slider-item:hover img:last-child {
  opacity: 1;
   width: auto;
}

.partner-two {
  padding: 15px 0;
  position: relative;
  z-index: 1;
  overflow: hidden;
  background: #001e4c;
}
.partner-two .partner-slider .slider-item {
  transition: 0.5s;
  padding: 40px 20px;
}
.partner-two .partner-slider .slider-item:hover {
  background: #001e4c;
}
.partner-two .partner-slider .slider-item img:last-child {
  top: 50%;
  transform: translate(-50%, -50%);
}

/* -----------------------------------------
  Newsletter CSS
----------------------------------------- */
.newsletter-section, .newsletter-section.newsletter-three {
  position: relative;
  background: url(assets/img/newsletter-bg-1.jpg) no-repeat center;
  background-size: cover;
  background-position: top;
  z-index: 1;
}
.newsletter-section::after, .newsletter-section.newsletter-three::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 26, 26, 0.5);
  z-index: -1;
}
.newsletter-section::before, .newsletter-section.newsletter-three::before {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background: rgba(26, 26, 26, 0.9);
  z-index: -1;
}
.newsletter-section .newsletter-content {
  padding-left: 30px;
}
.newsletter-section .newsletter-content h2 {
  color: #ffffff;
  line-height: 1.3;
  margin-top: -10px;
  margin-bottom: 15px;
}
.newsletter-section .newsletter-content p {
  color: #d2d2d2;
  margin-bottom: 30px;
}
.newsletter-section .newsletter-content .newsletter-form .form-control {
  color: #d2d2d2;
  height: auto;
  background: transparent;
  border-radius: 0;
  border: 1px solid #bdbfc1;
}

.validation-danger,
.validation-success {
  position: relative;
  padding: 10px;
  width: 50%;
  margin-top: 15px;
  text-align: center;
}

.validation-danger {
  color: #ffffff;
  background: var(--danger);
}
.validation-danger::after {
  position: absolute;
  content: "";
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 30px solid var(--danger);
}

.validation-success {
  color: #ffffff;
  background: var(--success);
}

.help-block ul li {
  position: relative;
  padding: 5px;
  width: 50%;
  margin-top: 8px;
  text-align: center;
  font-size: 12px;
  color: #ffffff;
  background: var(--danger);
}
.help-block ul li::after {
  position: absolute;
  content: "";
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 16px solid var(--danger);
}

#msgSubmit {
  font-size: 20px;
  margin-top: 8px;
}

.newsletter-section.newsletter-two {
  background: unset;
}
.newsletter-section.newsletter-two::before {
  content: unset;
}
.newsletter-section.newsletter-two::after {
  content: unset;
}
.newsletter-section.newsletter-two .content-container {
  position: relative;
  z-index: 1;
  background: url(assets/img/newsletter-bg-2.jpg) no-repeat center;
  position: relative;
  background-size: cover;
}
.newsletter-section.newsletter-two .content-container::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: linear-gradient(to right, rgba(26, 26, 26, 0.9) 0%, rgba(26, 26, 26, 0.3) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#e61a1a1a", endColorstr="#4d1a1a1a",GradientType=1 );
}
.newsletter-section.newsletter-two .newsletter-content h2 {
  margin-bottom: 20px;
}

.newsletter-section.newsletter-three {
  background: url(assets/img/newsletter-bg-1.jpg) no-repeat center;
  background-size: cover;
  background-position: top;
}
.newsletter-section.newsletter-three::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 30, 76, 0.9) 0%, rgba(0, 30, 76, 0.3) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#e6001e4c", endColorstr="#4d001e4c",GradientType=1 );
  z-index: -1;
}
.newsletter-section.newsletter-three::before {
  content: unset;
}
.newsletter-section.newsletter-three .newsletter-content h2 {
  margin-bottom: 20px;
}
.newsletter-section.newsletter-three .newsletter-content {
  padding-left: 0;
}

/* -----------------------------------------
  Instrument CSS
----------------------------------------- */
.instrument-section {
  position: relative;
  overflow: hidden;
}
.instrument-section .instrument-content {
  max-width: 420px;
  margin-bottom: 30px;
  padding-right: 15px;
}
.instrument-section .instrument-content h2 {
  margin: 25px auto;
  line-height: 1.3;
}
.instrument-section .instrument-content h2 span {
  color: #001e4c;
}
.instrument-section .instrument-content p {
  margin-bottom: 20px;
}
.instrument-section .instrument-content p:last-child {
  margin-bottom: 0;
}
.instrument-section h3{
    color:#fff;
    text-align:center;
    padding:32px;
}
.instrument-section .video-content {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 100%;
  margin-bottom: 30px;
}
.instrument-section .video-content .video-btn {
  position: relative;
  display: block;
  text-align: center;
  width: 90px;
  height: 90px;
  line-height: 90px;
  background-color: #bdbfc1;
  border-radius: 50%;
  z-index: 1;
  margin-left: auto;
  margin-right: auto;
}
.instrument-section .video-content .video-btn i {
  color: #ffffff;
}
.instrument-section .video-content .video-btn::after, .instrument-section .video-content .video-btn::before {
  z-index: -1;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  animation: ripple 2s infinite;
  opacity: 0;
  border-radius: 50%;
  background: #bdbfc1;
}
.instrument-section .video-content .video-btn::after {
  animation-delay: 0.4s;
}
.instrument-section .video-content .video-btn::before {
  animation-delay: 0.9s;
}
.instrument-section .video-content .video-image {
  position: absolute;
  width: 100%;
}
.instrument-section .video-content .video-image::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  /*background: rgba(26, 26, 26, 0.5);*/
  /*background:#001e4cc7;*/
}
.instrument-section .video-content .video-image img {
  width: 100%;
  max-width: unset;
}
.instrument-section .instrument-slider .slider-item {
  overflow: hidden;
}
.instrument-section .instrument-slider .slider-item .overlay-content {
  position: absolute;
  overflow: hidden;
  width: calc(100% - 30px);
  height: calc(100% - 30px);
  top: 15px;
  left: 15px;
  opacity: 0;
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  transition: 0.5s;
  background: rgba(0, 30, 76, 0.7);
}
.instrument-section .instrument-slider .slider-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.instrument-section .instrument-slider .slider-item .overlay-content::after {
  position: absolute;
  content: "";
  bottom: -50px;
  left: -50px;
  border-bottom: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
}
.instrument-section .instrument-slider .slider-item .overlay-content h3 a {
  color: #ffffff;
}
.instrument-section .instrument-slider .slider-item .overlay-content h3 a:hover {
  color: #bdbfc1;
}
.instrument-section .instrument-slider .slider-item .image img {
  transition: 0.5s;
}
.instrument-section .instrument-slider .slider-item:hover img {
  transform: scale(1.1);
}
.instrument-section .instrument-slider .slider-item:hover .overlay-content {
  opacity: 1;
}
.instrument-section .instrument-slider .slider-item:hover .overlay-content::before {
  top: 10px;
  right: 10px;
}
.instrument-section .instrument-slider .slider-item:hover .overlay-content::after {
  bottom: 10px;
  left: 10px;
}
.instrument-section .instrument-slider .owl-nav {
  margin-top: 30px;
  text-align: center;
}

/* -----------------------------------------
  Map CSS
----------------------------------------- */
.map-section {
  overflow: hidden;
}
.map-section .map-content {
  position: relative;
}
.map-section .map-content .map-pin {
  position: absolute;
  cursor: pointer;
  width: 52px;
  transition: 0.5s;
}
.map-section .map-content .map-pin .pin-content {
  position: absolute;
  top: -50px;
  right: -170px;
  padding: 16px 16px;
  border-radius: 5px;
  opacity: 0;
  visibility: hidden;
  color: #ffffff;
  background: #004888;
  transform: rotateY(90deg);
  transition: 0.5s;
  z-index: 1;
}
.map-section .map-content .map-pin:hover {
  width: 62px;
}
.map-section .map-content .map-pin:hover .pin-content {
  opacity: 1;
  visibility: visible;
  transform: unset;
}
.map-section .map-content .active .pin-content {
  opacity: 1;
  visibility: visible;
  transform: unset;
}
.map-section .map-content .pin-1 {
  left: 20%;
}
.map-section .map-content .pin-2 {
  right: 20%;
}
.map-section .map-content .pin-3 {
  top: 35%;
}
.map-section .map-content .pin-4 {
  top: 30%;
  left: 50%;
}
.map-section .map-content .pin-5 {
  bottom: 0;
  left: 30%;
}
.map-section .map-content .pin-6 {
  right: 0;
  bottom: 0;
}
.map-section .map-content .pin-6 .pin-content {
  left: -170px;
  right: unset;
}

/* -----------------------------------------
  Amazing Projects CSS
----------------------------------------- */
.amazing-projects-section {
  position: relative;
  overflow: hidden;
}
.amazing-projects-section .projects-content {
  margin-bottom: 30px;
  padding: 83px 0;
  position: relative;
  z-index: 1;
}
.amazing-projects-section .projects-content::after {
  position: absolute;
  content: "";
  left: -60px;
  top: 0;
  width: 40%;
  height: 100%;
  background: #bdbfc1;
  z-index: -1;
}
.amazing-projects-section .projects-content h2 {
  color: #001e4c;
  line-height: 1.3;
  margin-top: -10px;
  margin-bottom: 15px;
}
.amazing-projects-section .projects-content p {
  margin-bottom: 30px;
}
.amazing-projects-section .projects-content .primary-btn {
  color: #ffffff;
  background: #001e4c;
}

.amazing-projects-slider {
  margin-bottom: 30px;
}
.amazing-projects-slider .slider-item {
  overflow: hidden;
}
.amazing-projects-slider .slider-item .overlay-content {
  position: absolute;
  overflow: hidden;
  width: calc(100% - 30px);
  height: calc(100% - 30px);
  top: 15px;
  left: 15px;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: capitalize;
  transition: 0.5s;
  background: rgba(26, 26, 26, 0.7);
}
.amazing-projects-slider .slider-item .overlay-content::before {
  position: absolute;
  content: "";
  top: -50px;
  right: -50px;
  border-top: 100px solid rgba(189, 191, 193, 0.8);
  border-left: 100px solid transparent;
  transition: 0.5s;
}
.amazing-projects-slider .slider-item .overlay-content h3 a {
  color: #ffffff;
}
.amazing-projects-slider .slider-item .overlay-content h3 a:hover {
  color: #bdbfc1;
}
.amazing-projects-slider .slider-item .image img {
  transition: 0.5s;
}
.amazing-projects-slider .slider-item:hover img {
  transform: scale(1.1);
}
.amazing-projects-slider .slider-item:hover .overlay-content {
  opacity: 1;
}
.amazing-projects-slider .slider-item:hover .overlay-content::before {
  top: 10px;
  right: 10px;
}
.amazing-projects-slider .owl-nav {
  position: absolute;
  left: -10%;
  bottom: 0;
}

/* -----------------------------------------
  Build CSS
----------------------------------------- */
.renovate-section, .build-section {
  position: relative;
  z-index: 1;
}
.renovate-section::after, .build-section::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 40%;
  height: 60%;
  background: #bdbfc1;
  z-index: -1;
}
.renovate-section .content, .build-section .content {
  margin-bottom: 30px;
}
.renovate-section .content h2, .build-section .content h2 {
  margin-bottom: 25px;
  margin-top: -10px;
  line-height: 1.3;
}
.renovate-section .content h2 span, .build-section .content h2 span {
  color: #bdbfc1;
}
.renovate-section .content p:nth-child(3), .build-section .content p:nth-child(3) {
  margin-bottom: 25px;
}
.renovate-section .content p:nth-child(5), .build-section .content p:nth-child(5) {
  margin-bottom: 30px;
}
.renovate-section .content .item-list, .build-section .content .item-list {
  margin-bottom: 25px;
}
.renovate-section .content .item-list ul, .build-section .content .item-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.renovate-section .content .item-list ul li, .build-section .content .item-list ul li {
  display: block;
  font-weight: 500;
  margin-bottom: 6px;
  padding-left: 25px;
  position: relative;
  line-height: 1.8;
  color: #031d41;
}
.renovate-section .content .item-list ul li:last-child, .build-section .content .item-list ul li:last-child {
  margin-bottom: 0;
}
.renovate-section .content .item-list ul li i, .build-section .content .item-list ul li i {
  margin-left: -25px;
  margin-right: 5px;
  color: #004888;
  vertical-align: -2px;
}
.renovate-section .content .cta-btn .primary-btn, .build-section .content .cta-btn .primary-btn {
  color: #ffffff;
  background: #001e4c;
}
.renovate-section .content .cta-btn .primary-btn::before, .build-section .content .cta-btn .primary-btn::before, .renovate-section .content .cta-btn .primary-btn::after, .build-section .content .cta-btn .primary-btn::after {
  background-color: #bdbfc1;
}
.renovate-section .content .cta-btn .primary-btn:hover, .build-section .content .cta-btn .primary-btn:hover {
  color: #ffffff;
}
.renovate-section .image-content, .build-section .image-content {
  margin-bottom: 30px;
  position: relative;
}
.renovate-section .image-content::before, .build-section .image-content::before {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 30px solid #001e4c;
  z-index: 1;
}

.build-section::after {
  position: absolute;
  content: "";
  left: none !important;
  left: unset;
  right: 0 !important;
  top: 0;
  width: 40%;
  height: 60%;
  background: #bdbfc1;
  z-index: -1;
}

/* -----------------------------------------
  Quote CSS
----------------------------------------- */
.quote-section {
  position: relative;
  z-index: 1;
  background: url(assets/img/testimonial-bg.jpg) no-repeat top;
}
.quote-section::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  max-height: 413px;
  background: rgba(0, 30, 76, 0.7);
  z-index: -1;
}
.quote-section .contact-form {
  position: relative;
  padding: 45px;
  background: #e6edf5;
  margin-bottom: 30px;
}
.quote-section .contact-form::after {
  position: absolute;
  content: "";
  top: 10px;
  left: 10px;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
  z-index: 1;
}
.quote-section .contact-form h2 {
  text-align: center;
  margin-bottom: 25px;
  margin-top: -10px;
  line-height: 1.3;
}
.quote-section .contact-form h2 span {
  color: #bdbfc1;
}
.quote-section .contact-form .primary-btn {
  width: 100%;
}
.quote-section .contact-form .nice-select {
  float: unset;
  line-height: 58px;
  color: #a5a5a5;
  text-transform: capitalize;
  padding-top: 0;
  padding-bottom: 0;
}
.quote-section .contact-form .nice-select .list {
  background-color: #ffffff;
  box-shadow: 0px 0px 29px 0px rgba(102, 102, 102, 0.1);
  border-radius: 0;
  margin-top: -1px;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
}
.quote-section .contact-form .nice-select .list .option {
  transition: 0.6s;
  color: #a5a5a5;
  font-size: 14px;
  line-height: 25px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 20px;
  padding-right: 10px;
}
.quote-section .contact-form .nice-select .list .option.selected {
  background-color: transparent;
  font-weight: 500;
  color: #24324a;
}
.quote-section .contact-form .nice-select::after {
  border: none;
  transform: rotate(0deg);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 8px solid #bdbfc1;
}
.quote-section .contact-form .open:after {
  border-top: none;
  border-bottom: 8px solid #bdbfc1;
}
.quote-section .image {
  margin-bottom: 30px;
}

.form-check {
  padding-left: 0;
}

/* -----------------------------------------
  Faq CSS
----------------------------------------- */
.faq-section {
  background-color: #dcd7ca !important;
  background: url(assets/img/faq-bg.png) no-repeat center;
  background-size: cover;
}
.faq-section .panel-group {
  margin-bottom: 15px;
}
.faq-section .panel-group .panel {
  border-radius: 0;
  margin-bottom: 15px;
  overflow: hidden;
}
.faq-section .panel-group .panel .panel-heading {
  padding: 0;
  background: #ffffff;
  position: relative;
}
.faq-section .panel-group .panel-title {
  margin: 0;
}
.faq-section .panel-group .panel-title a {
  display: block;
  padding: 25px 20px;
  font-size: 16px;
  font-weight: 600;
  color: #031d41;
}
.faq-section .panel-group .panel-title a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  border-top: none;
  border-bottom: 8px solid #bdbfc1;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  transform: translateY(-50%);
}
.faq-section .panel-group .panel-title a.collapsed:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  border-bottom: none;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 8px solid #bdbfc1;
  transform: translateY(-50%);
}
.faq-section .panel-group .panel-title a.collapsed::after {
  content: "";
  position: absolute;
  top: 5px;
  height: calc(100% - 10px);
  left: 6px;
  width: 2px;
  background: #bdbfc1;
}
.faq-section .panel-group .panel-body {
  padding: 25px 20px;
  border: 0;
  background: #ffffff;
  position: relative;
  margin-top: 2px;
}
.faq-section .panel-group .panel-body::after {
  content: "";
  position: absolute;
  top: 5px;
  height: calc(100% - 10px);
  left: 6px;
  width: 2px;
  background: #bdbfc1;
}
.faq-section .panel-group .panel-body p {
  color: #031d41;
  margin: 0;
}

/* -----------------------------------------
  Count CSS
----------------------------------------- */
.count-section {
  position: relative;
  overflow: hidden;
  background: url(assets/img/count-bg.png) no-repeat center;
  background-size: cover;
}
.count-section:after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #f1f5fa;
  z-index: -1;
}
.count-section .content {
  position: relative;
  overflow: hidden;
  padding: 80px 20px;
  text-align: center;
  z-index: 1;
  margin-bottom: 30px;
}
.count-section .content:after {
  position: absolute;
  content: "";
  left: 10px;
  top: 10px;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
}
.count-section .content::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.9);
  z-index: -1;
}
.count-section .content h2 {
  line-height: 1.3;
  margin: 0;
  margin-top: -5px;
  color: #bdbfc1;
}
.count-section .content h2 span {
  color: #bdbfc1;
}
.count-section .content span {
  color: #ffffff;
}
.count-section [class*=col-]:nth-child(1) .content {
  background: url(assets/img/item-bg-1.jpg) no-repeat center;
  background-size: cover;
}
.count-section [class*=col-]:nth-child(2) .content {
  background: url(assets/img/item-bg-2.jpg) no-repeat center;
  background-size: cover;
}
.count-section [class*=col-]:nth-child(3) .content {
  background: url(assets/img/item-bg-3.jpg) no-repeat center;
  background-size: cover;
}
.count-section [class*=col-]:nth-child(4) .content {
  background: url(assets/img/project-bg-1.jpg) no-repeat center;
  background-size: cover;
}

/* -----------------------------------------
  Blog Details CSS
----------------------------------------- */
.blog-details-area {
  overflow: hidden;
}
.blog-details-area .blog-details-desc {
  padding-left: 40px;
  margin-bottom: 30px;
}
.blog-details-area .blog-details-desc .image {
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .content {
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .content h2 {
  font-size: 40px;
  line-height: 1.3;
  margin-top: -5px;
  color: #001e4c;
  margin-bottom: 20px;
  text-transform: capitalize;
}
.blog-details-area .blog-details-desc .content p {
  color: #24324a;
}
.blog-details-area .blog-details-desc .post-meta {
  padding: 0;
  margin: 0;
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .post-meta li {
  color: #001e4c;
  display: inline-block;
  font-weight: 500;
  font-size: 14px;
  margin-right: 10px;
  padding: 8px 10px;
  background: #bdbfc1;
}
.blog-details-area .blog-details-desc .post-meta li:last-child {
  margin-right: 0px;
}
.blog-details-area .blog-details-desc .post-meta li:hover a {
  color: #ffffff;
}
.blog-details-area .blog-details-desc .blog-details-slider {
  margin-bottom: 25px;
  position: relative;
}
.blog-details-area .blog-details-desc .blog-details-slider .owl-nav {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.blog-details-area .blog-details-desc .article-share {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .article-share span {
  color: #031d41;
  text-transform: capitalize;
  margin-right: 5px;
  font-weight: 600;
}
.blog-details-area .blog-details-desc .social-link a {
  font-size: 14px;
  padding: 8px 12px;
  margin-right: 5px;
}
.blog-details-area .blog-details-desc .social-link a:last-child {
  margin-right: 0;
}
.blog-details-area .blog-details-desc hr {
  margin-top: 0;
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .comment-reply #commentForm .form-control {
  background: #f1f5fa;
  border: 1px solid #bdbfc1;
}
.blog-details-area .blog-details-desc .comment-reply #commentForm .primary-btn {
  width: 100%;
  color: #ffffff;
  background: #001e4c;
}
.blog-details-area .blog-details-desc .comment-reply #commentForm .primary-btn::before, .blog-details-area .blog-details-desc .comment-reply #commentForm .primary-btn::after {
  background-color: #bdbfc1;
}
.blog-details-area .blog-details-desc .comment-reply #commentForm .primary-btn:hover {
  color: #ffffff;
}
.blog-details-area .blog-details-desc .comments-area {
  margin-bottom: 25px;
}
.blog-details-area .blog-details-desc .comments-area .comment-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.blog-details-area .blog-details-desc .comments-area .comment-list .comment {
  margin-bottom: 15px;
}
.blog-details-area .blog-details-desc .comments-area .comment-list .comment:last-child {
  margin-bottom: 0;
}
.blog-details-area .blog-details-desc .comments-area .comment-body {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: row;
  background: #f1f5fa;
  padding: 20px 15px;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-author {
  overflow: hidden;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-author .avatar {
  width: 90px;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content {
  padding-left: 16px;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content .comment-metadata .name {
  color: #24324a;
  font-size: 16px;
  font-weight: bold;
  margin: 0;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content .comment-metadata .time {
  color: #24324a;
  font-size: 12px;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content .comment-metadata .reply {
  float: right;
  margin-top: -20px;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content .comment-metadata .reply .primary-btn {
  padding: 0 20px;
  color: #ffffff;
}
.blog-details-area .blog-details-desc .comments-area .comment-body .comment-content p {
  margin-top: 5px;
  font-size: 15px;
}
.blog-details-area .tags a {
  display: inline-block;
  text-align: center;
  background: #f1f5fa;
  color: #031d41;
  border: 1px solid #bdbfc1;
  padding: 8px 12px;
  font-size: 14px;
  margin-right: 5px;
}
.blog-details-area .tags a:hover {
  color: #031d41;
}
.blog-details-area .tags a:last-child {
  margin-right: 0px;
}
.blog-details-area .widget-area {
  margin-bottom: 30px;
}
.blog-details-area .widget-area .widget {
  margin-bottom: 25px;
}
.blog-details-area .widget-area .widget-gallery {
  margin-bottom: 10px;
}
.blog-details-area .widget-area .gallery-item img {
  margin-bottom: 20px;
}
.blog-details-area .widget-area .widget-search .search-form {
  position: relative;
  background-color: #ffffff;
}
.blog-details-area .widget-area .widget-search .search-form .search-field {
  color: #24324a;
  display: block;
  width: 100%;
  height: 68px;
  padding: 0 0 0 15px;
  border: none;
  font-weight: 600;
  transition: 0.5s;
  background: #f1f5fa;
  border: 1px solid #bdbfc1;
  box-shadow: 0 0 20px -2px rgba(106, 99, 119, 0.1);
}
.blog-details-area .widget-area .widget-search .search-form button {
  border: none;
  color: #001e4c;
  position: absolute;
  right: 20px;
  top: 50%;
  font-size: 18px;
  transform: translateY(-50%);
  transition: 0.5s;
}
.blog-details-area .widget-area .widget-article .article-item {
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  flex-direction: row;
}
.blog-details-area .widget-area .widget-article .article-item .info {
  padding-left: 16px;
}
.blog-details-area .widget-area .widget-article .article-item .title {
  margin-top: 5px;
  font-size: 18px;
}
.blog-details-area .widget-area .widget-article .article-item:last-child {
  margin-bottom: 0;
}
.blog-details-area .widget-area .widget-categories .category-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.blog-details-area .widget-area .widget-categories .category-list li {
  position: relative;
  padding: 12px 14px;
  background: #f1f5fa;
  margin-bottom: 16px;
}
.blog-details-area .widget-area .widget-categories .category-list li:last-child {
  margin-bottom: 0;
}
.blog-details-area .widget-area .widget-categories .category-list li a {
  font-weight: 600;
  text-transform: capitalize;
  color: #001e4c;
}
.blog-details-area .widget-area .widget-categories .category-list li i {
  vertical-align: middle;
  margin-right: 8px;
  color: #004888;
}
.blog-details-area .widget-area .tags a {
  margin-bottom: 10px;
}
.blog-details-area .widget-area .contact-form {
  position: relative;
  padding: 25px 25px;
  background: #e6edf5;
}
.blog-details-area .widget-area .contact-form .primary-btn {
  width: 100%;
  color: #ffffff;
  background: #001e4c;
}
.blog-details-area .widget-area .contact-form .primary-btn::before, .blog-details-area .widget-area .contact-form .primary-btn::after {
  background-color: #bdbfc1;
}
.blog-details-area .widget-area .contact-form .primary-btn:hover {
  color: #ffffff;
}
.blog-details-area h3.sub-title {
  line-height: 1;
  margin-bottom: 20px;
  text-transform: capitalize;
  color: #001e4c;
}

/* -----------------------------------------
  Page Title CSS
----------------------------------------- */
.page-title-area {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.page-title-area::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(to right, rgba(0, 30, 76, 0.9) 0%, rgba(0, 30, 76, 0.3) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#e6001e4c", endColorstr="#4d001e4c",GradientType=1 );
  z-index: -1;
}
.page-title-area .bg-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-title-area .page-title-content {
  text-transform: capitalize;
  color:#fff;
}
.page-title-area .page-title-content h1 {
  color: #ffffff;
  margin-bottom: 20px;
  margin-top: -10px;
  line-height: 1.2;
}
.page-title-area .page-title-content ul {
  padding: 0;
  margin: 0;
}
.page-title-area .page-title-content ul li {
  margin-right: 10px;
  padding-left: 15px;
  display: inline-block;
}
.page-title-area .page-title-content ul li:first-child {
  padding-left: 0;
}
.page-title-area .page-title-content ul li i {
  font-size: 14px;
  margin-left: -20px;
  margin-right: 10px;
  color: #bdbfc1;
  vertical-align: -1px;
}
.page-title-area .page-title-content ul li a {
  color: #ffffff;
}
.page-title-area .page-title-content ul li a:hover {
  color: #bdbfc1;
}

/* -----------------------------------------
  Authentication CSS
----------------------------------------- */
.authentication-section .authentication-tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  overflow: hidden;
}
.authentication-section .authentication-tabs .tab-item {
  color: #031d41;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 60px;
  border-bottom: 2px solid #d2d2d2;
  cursor: pointer;
}
.authentication-section .authentication-tabs .tab-item.active {
  color: #004888;
  border-bottom: 2px solid #bdbfc1;
}
.authentication-section .authentication-tabs-content .tab-panel {
  display: none;
}
.authentication-section .authentication-tabs-content .tab-panel.active {
  display: block;
  animation: flipInY 1s 1 linear;
}
.authentication-section .authentication-form {
  background: #ffffff;
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.08);
  padding: 40px;
  border-radius: 5px;
  max-width: 600px;
  margin: auto;
}
.authentication-section .authentication-form .checkbox label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  font-weight: 500;
  font-size: 14px;
  display: inline-block;
  margin-bottom: 0;
  color: #031d41;
}
.authentication-section .authentication-form .checkbox label a {
  color: #004888;
}
.authentication-section .authentication-form .checkbox [type=checkbox]:checked,
.authentication-section .authentication-form .checkbox [type=checkbox]:not(:checked) {
  display: none;
}
.authentication-section .authentication-form .checkbox [type=checkbox]:checked + label:after,
.authentication-section .authentication-form .checkbox [type=checkbox]:not(:checked) + label:after {
  content: "";
  width: 8px;
  height: 8px;
  background: #bdbfc1;
  position: absolute;
  top: 5.5px;
  left: 6px;
  transition: 0.5s;
}
.authentication-section .authentication-form .checkbox [type=checkbox]:checked + label::before,
.authentication-section .authentication-form .checkbox [type=checkbox]:not(:checked) + label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 19px;
  height: 19px;
  border: 1px solid #e6edf5;
  background: #e6edf5;
  transition: 0.5s;
}
.authentication-section .authentication-form .checkbox [type=checkbox]:checked + label::before {
  border: 1px solid #bdbfc1;
  background: unset;
}
.authentication-section .authentication-form .checkbox [type=checkbox]:not(:checked) + label:after {
  display: none;
}
.authentication-section .authentication-form .link {
  text-align: right;
}
.authentication-section .authentication-form .link a {
  display: inline-block;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.3;
}
.authentication-section .content {
  margin-bottom: 30px;
  text-align: center;
}
.authentication-section .content .logo {
  margin-bottom: 20px;
}
.authentication-section .content h3 {
  font-size: 30px;
  margin-top: -7px;
  margin-bottom: 0;
  color: #001e4c;
}
.authentication-section .form-group {
  margin-bottom: 25px;
}
.authentication-section .form-control {
  background: #f1f5fa;
  border: 1px solid #bdbfc1;
}
.authentication-section .cta-btn {
  margin-top: 25px;
}
.authentication-section .cta-btn .primary-btn {
  padding: 14.5px 30px;
  width: 100%;
}

.authentication-form {
  background: #ffffff;
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.08);
  padding: 40px;
  border-radius: 5px;
  max-width: 600px;
  margin: auto;
}
.authentication-form .checkbox label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  font-weight: 500;
  font-size: 14px;
  display: inline-block;
  margin-bottom: 0;
  color: #031d41;
}
.authentication-form .checkbox label a {
  color: #004888;
}
.authentication-form .checkbox [type=checkbox]:checked,
.authentication-form .checkbox [type=checkbox]:not(:checked) {
  display: none;
}
.authentication-form .checkbox [type=checkbox]:checked + label:after,
.authentication-form .checkbox [type=checkbox]:not(:checked) + label:after {
  content: "";
  width: 8px;
  height: 8px;
  background: #bdbfc1;
  position: absolute;
  top: 5.5px;
  left: 6px;
  transition: 0.5s;
}
.authentication-form .checkbox [type=checkbox]:checked + label::before,
.authentication-form .checkbox [type=checkbox]:not(:checked) + label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 19px;
  height: 19px;
  border: 1px solid #e6edf5;
  background: #e6edf5;
  transition: 0.5s;
}
.authentication-form .checkbox [type=checkbox]:checked + label::before {
  border: 1px solid #bdbfc1;
  background: unset;
}
.authentication-form .checkbox [type=checkbox]:not(:checked) + label:after {
  display: none;
}
.authentication-form .link {
  text-align: right;
}
.authentication-form .link a {
  display: inline-block;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.3;
}
.authentication-form .content {
  margin-bottom: 30px;
  text-align: center;
}
.authentication-form .content .logo {
  margin-bottom: 20px;
}
.authentication-form .content h3 {
  font-size: 30px;
  margin-top: -7px;
  margin-bottom: 0;
  color: #001e4c;
}
.authentication-form .form-group {
  margin-bottom: 25px;
}
.authentication-form .form-control {
  background: #f1f5fa;
  border: 1px solid #bdbfc1;
}
.authentication-form .cta-btn {
  margin-top: 25px;
}
.authentication-form .cta-btn .primary-btn {
  padding: 14.5px 30px;
  width: 100%;
}

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
  color: #ffffff;
  right: 0;
  text-align: center;
  padding: unset;
  width: 100%;
  height: 40px;
  width: 40px;
  opacity: 1;
  background: #004888;
}

.mfp-iframe-holder .mfp-close {
  top: -60px;
}

/* -----------------------------------------
  Member Details CSS
----------------------------------------- */
.member-details-section .image {
  height: 100%;
  background: url(assets/img/team/team-img-3.jpg) no-repeat center;
  background-size: cover;
}

.member-details-section .content {
  position: relative;
  padding: 40px 30px;
  background: #f1f5fa;
}
.member-details-section .content::after {
  position: absolute;
  content: "";
  top: 10px;
  right: 10px;
  border-top: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
  z-index: 1;
}
.member-details-section .content .member-info h3 {
  font-size: 30px;
  line-height: 1;
  text-transform: capitalize;
  color: #001e4c;
}
.member-details-section .content .member-info span {
  display: inline-block;
  color: #001e4c;
  margin-bottom: 10px;
}
.member-details-section .content .member-list {
  margin: 15px 0;
}
.member-details-section .content .member-list .list-content {
  margin-bottom: 10px;
}
.member-details-section .content .member-list .list-content i {
  margin-right: 8px;
  color: #004888;
  vertical-align: middle;
}
.member-details-section .content .member-list .list-content .title {
  color: #001e4c;
  font-weight: 600;
}
.member-details-section .content .member-list .list-content .info {
  margin-left: auto;
}

.bio-area .section-title {
  margin-bottom: 0;
}
.bio-area .section-title h2 {
  padding-left: 60px;
}
.bio-area .section-title::before {
  left: 0;
}

/* -----------------------------------------
  Service Details CSS
----------------------------------------- */
.service-details-area, .terms-area, .privacy-area {
  padding-bottom: 60px;
}
.service-details-area .image, .terms-area .image, .privacy-area .image {
  margin-bottom: 40px;
}
.service-details-area .project-info, .terms-area .project-info, .privacy-area .project-info {
  position: relative;
  padding: 30px 25px;
  background: #bdbfc1;
  text-align: center;
  margin-bottom: 40px;
}
.service-details-area .project-info h3, .terms-area .project-info h3, .privacy-area .project-info h3 {
  line-height: 1;
  margin-bottom: 15px;
  text-transform: capitalize;
  color: #ffffff;
}
.service-details-area .project-info p, .terms-area .project-info p, .privacy-area .project-info p {
  color: #ffffff;
  line-height: 1.5;
}
.service-details-area .project-info p:last-child, .terms-area .project-info p:last-child, .privacy-area .project-info p:last-child {
  margin-bottom: 20px;
}
.service-details-area .project-info .info-list, .terms-area .project-info .info-list, .privacy-area .project-info .info-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
  text-align: left;
}
.service-details-area .project-info .info-list li, .terms-area .project-info .info-list li, .privacy-area .project-info .info-list li {
  position: relative;
  padding: 12px 14px;
  background: #f1f5fa;
  margin-bottom: 16px;
  display: flex;
}
.service-details-area .project-info .info-list li i, .terms-area .project-info .info-list li i, .privacy-area .project-info .info-list li i {
  vertical-align: -2px;
  margin-right: 8px;
  color: #001e4c;
}
.service-details-area .project-info .info-list li a, .terms-area .project-info .info-list li a, .privacy-area .project-info .info-list li a {
  font-weight: 600;
  text-transform: capitalize;
  color: #001e4c;
  display: inline-block;
  flex: 0 0 50%;
  max-width: 50%;
}
.service-details-area .project-info .info-list li span, .terms-area .project-info .info-list li span, .privacy-area .project-info .info-list li span {
  display: inline-block;
  flex: 0 0 50%;
  max-width: 50%;
}
.service-details-area .project-info .info-list li:last-child, .terms-area .project-info .info-list li:last-child, .privacy-area .project-info .info-list li:last-child {
  margin-bottom: 0;
}
.service-details-area .content, .terms-area .content, .privacy-area .content {
  margin-bottom: 40px;
}
.service-details-area .content h2.title, .terms-area .content h2.title, .privacy-area .content h2.title {
  font-size: 45px;
  line-height: 1.3;
  margin-top: -10px;
  color: #001e4c;
  margin-bottom: 20px;
  text-transform: capitalize;
}
.service-details-area .content h2.title span, .terms-area .content h2.title span, .privacy-area .content h2.title span {
  color: #004888;
}
.service-details-area .content p, .terms-area .content p, .privacy-area .content p {
  color: #24324a;
}
.service-details-area .projects-area .content, .terms-area .projects-area .content, .privacy-area .projects-area .content {
  margin-bottom: 40px;
}
.service-details-area .projects-area .content h2, .terms-area .projects-area .content h2, .privacy-area .projects-area .content h2 {
  margin-bottom: 25px;
  line-height: 1.3;
  margin-top: -10px;
  color: #001e4c;
}
.service-details-area .projects-area .item-list ul, .terms-area .projects-area .item-list ul, .privacy-area .projects-area .item-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.service-details-area .projects-area .item-list ul li, .terms-area .projects-area .item-list ul li, .privacy-area .projects-area .item-list ul li {
  display: block;
  font-weight: 500;
  margin-bottom: 6px;
  padding-left: 25px;
  position: relative;
  line-height: 1.8;
  color: #24324a;
}
.service-details-area .projects-area .item-list ul li i, .terms-area .projects-area .item-list ul li i, .privacy-area .projects-area .item-list ul li i {
  margin-left: -25px;
  margin-right: 5px;
  color: #004888;
  vertical-align: -2px;
}

/* -----------------------------------------
  service Details CSS
----------------------------------------- */
.service-details-area .service-details-desc, .terms-area .service-details-desc, .privacy-area .service-details-desc {
  padding-left: 40px;
  margin-bottom: 30px;
}
.service-details-area .service-details-desc .image, .terms-area .service-details-desc .image, .privacy-area .service-details-desc .image {
  margin-bottom: 25px;
}
.service-details-area .service-details-desc .content, .terms-area .service-details-desc .content, .privacy-area .service-details-desc .content {
  margin-bottom: 25px;
}
.service-details-area .service-details-desc .content h2, .terms-area .service-details-desc .content h2, .privacy-area .service-details-desc .content h2 {
  font-size: 40px;
  line-height: 1.3;
  margin-top: -5px;
  color: #001e4c;
  margin-bottom: 20px;
  text-transform: capitalize;
}
.service-details-area .service-details-desc .content h2 span, .terms-area .service-details-desc .content h2 span, .privacy-area .service-details-desc .content h2 span {
  color: #004888;
}
.service-details-area .service-details-desc .content p, .terms-area .service-details-desc .content p, .privacy-area .service-details-desc .content p {
  color: #24324a;
}
.service-details-area .service-details-desc .services-area .content h2, .terms-area .service-details-desc .services-area .content h2, .privacy-area .service-details-desc .services-area .content h2 {
  margin-bottom: 25px;
  line-height: 1.3;
  color: #001e4c;
}
.service-details-area .service-details-desc .services-area .item-list, .terms-area .service-details-desc .services-area .item-list, .privacy-area .service-details-desc .services-area .item-list {
  margin-bottom: 25px;
}
.service-details-area .service-details-desc .services-area .item-list ul, .terms-area .service-details-desc .services-area .item-list ul, .privacy-area .service-details-desc .services-area .item-list ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.service-details-area .service-details-desc .services-area .item-list ul li, .terms-area .service-details-desc .services-area .item-list ul li, .privacy-area .service-details-desc .services-area .item-list ul li {
  display: block;
  font-weight: 500;
  margin-bottom: 6px;
  padding-left: 25px;
  position: relative;
  line-height: 1.8;
  color: #24324a;
}
.service-details-area .service-details-desc .services-area .item-list ul li i, .terms-area .service-details-desc .services-area .item-list ul li i, .privacy-area .service-details-desc .services-area .item-list ul li i {
  margin-left: -25px;
  margin-right: 5px;
  color: #004888;
  vertical-align: -2px;
}
.service-details-area .service-details-desc .services-area .item-list ul li:last-child, .terms-area .service-details-desc .services-area .item-list ul li:last-child, .privacy-area .service-details-desc .services-area .item-list ul li:last-child {
  margin-bottom: 0;
}
.service-details-area .service-details-desc .service-details-slider, .terms-area .service-details-desc .service-details-slider, .privacy-area .service-details-desc .service-details-slider {
  margin-bottom: 25px;
  position: relative;
}
.service-details-area .service-details-desc .service-details-slider .owl-nav, .terms-area .service-details-desc .service-details-slider .owl-nav, .privacy-area .service-details-desc .service-details-slider .owl-nav {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.service-details-area .widget-area, .terms-area .widget-area, .privacy-area .widget-area {
  margin-bottom: 30px;
}
.service-details-area .widget-area .widget, .terms-area .widget-area .widget, .privacy-area .widget-area .widget {
  margin-bottom: 25px;
}
.service-details-area .widget-area .nav-list, .terms-area .widget-area .nav-list, .privacy-area .widget-area .nav-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.service-details-area .widget-area .nav-list li, .terms-area .widget-area .nav-list li, .privacy-area .widget-area .nav-list li {
  position: relative;
  padding: 14px 16px;
  background: #f1f5fa;
  margin-bottom: 15px;
}
.service-details-area .widget-area .nav-list li:last-child, .terms-area .widget-area .nav-list li:last-child, .privacy-area .widget-area .nav-list li:last-child {
  margin-bottom: 0;
}
.service-details-area .widget-area .nav-list li a, .terms-area .widget-area .nav-list li a, .privacy-area .widget-area .nav-list li a {
  font-weight: 600;
  text-transform: capitalize;
  color: #001e4c;
}
.service-details-area .widget-area .nav-list li i, .terms-area .widget-area .nav-list li i, .privacy-area .widget-area .nav-list li i {
  float: right;
  margin-right: 8px;
  margin-top: 4px;
  color: #001e4c;
  transform: rotateZ(-180deg);
}
.service-details-area .widget-area .nav-list li::after, .terms-area .widget-area .nav-list li::after, .privacy-area .widget-area .nav-list li::after {
  content: "";
  position: absolute;
  top: 5px;
  height: calc(100% - 10px);
  left: 6px;
  width: 2px;
  background: #bdbfc1;
}
.service-details-area .widget-area .nav-list li.active, .terms-area .widget-area .nav-list li.active, .privacy-area .widget-area .nav-list li.active {
  background: #bdbfc1;
}
.service-details-area .widget-area .nav-list li.active::after, .terms-area .widget-area .nav-list li.active::after, .privacy-area .widget-area .nav-list li.active::after {
  background: #ffffff;
}
.service-details-area .widget-area .nav-list li.active i, .terms-area .widget-area .nav-list li.active i, .privacy-area .widget-area .nav-list li.active i {
  transform: unset;
  color: #ffffff;
}
.service-details-area .widget-area .nav-list li.active a, .terms-area .widget-area .nav-list li.active a, .privacy-area .widget-area .nav-list li.active a {
  color: #ffffff;
}
.service-details-area .widget-area .contact-form, .terms-area .widget-area .contact-form, .privacy-area .widget-area .contact-form {
  position: relative;
  padding: 25px 25px;
  background: #e6edf5;
}
.service-details-area .widget-area .contact-form .primary-btn, .terms-area .widget-area .contact-form .primary-btn, .privacy-area .widget-area .contact-form .primary-btn {
  width: 100%;
  color: #ffffff;
  background: #001e4c;
}
.service-details-area .widget-area .contact-form .primary-btn::before, .terms-area .widget-area .contact-form .primary-btn::before, .privacy-area .widget-area .contact-form .primary-btn::before, .service-details-area .widget-area .contact-form .primary-btn::after, .terms-area .widget-area .contact-form .primary-btn::after, .privacy-area .widget-area .contact-form .primary-btn::after {
  background-color: #bdbfc1;
}
.service-details-area .widget-area .contact-form .primary-btn:hover, .terms-area .widget-area .contact-form .primary-btn:hover, .privacy-area .widget-area .contact-form .primary-btn:hover {
  color: #ffffff;
}
.service-details-area .widget-area .download-item .download-item-single, .terms-area .widget-area .download-item .download-item-single, .privacy-area .widget-area .download-item .download-item-single {
  display: flex;
  position: relative;
  padding: 25px 60px;
  margin-bottom: 25px;
  background: url(assets/img/item-bg-2.jpg) no-repeat center;
  background-size: cover;
  align-items: center;
  justify-content: center;
}
.service-details-area .widget-area .download-item .download-item-single:first-child, .terms-area .widget-area .download-item .download-item-single:first-child, .privacy-area .widget-area .download-item .download-item-single:first-child {
  background: url(assets/img/item-bg-1.jpg) no-repeat center;
  background-size: cover;
}
.service-details-area .widget-area .download-item .download-item-single:last-child, .terms-area .widget-area .download-item .download-item-single:last-child, .privacy-area .widget-area .download-item .download-item-single:last-child {
  background: url(assets/img/item-bg-3.jpg) no-repeat center;
  background-size: cover;
}
.service-details-area .widget-area .download-item .download-item-single::after, .terms-area .widget-area .download-item .download-item-single::after, .privacy-area .widget-area .download-item .download-item-single::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.8);
}
.service-details-area .widget-area .download-item .download-item-single i, .terms-area .widget-area .download-item .download-item-single i, .privacy-area .widget-area .download-item .download-item-single i {
  width: 60px;
  height: 60px;
  line-height: 57px;
  background: #ffffff;
  text-align: center;
  display: inline-block;
  z-index: 1;
  font-size: 28px;
}
.service-details-area .widget-area .download-item .download-item-single .item-content, .terms-area .widget-area .download-item .download-item-single .item-content, .privacy-area .widget-area .download-item .download-item-single .item-content {
  padding-left: 16px;
  z-index: 1;
}
.service-details-area .widget-area .download-item .download-item-single .item-content h4, .terms-area .widget-area .download-item .download-item-single .item-content h4, .privacy-area .widget-area .download-item .download-item-single .item-content h4 {
  color: #ffffff;
  margin-top: -5px;
  margin-bottom: 0;
}
.service-details-area h3.sub-title, .terms-area h3.sub-title, .privacy-area h3.sub-title {
  line-height: 1;
  margin-bottom: 20px;
  text-transform: capitalize;
  color: #001e4c;
}

/* -----------------------------------------
  Terms CSS
----------------------------------------- */
.terms-area .details-desc, .privacy-area .details-desc {
  padding-left: 40px;
  margin-bottom: 30px;
}
.terms-area .details-desc .content, .privacy-area .details-desc .content {
  margin-bottom: 25px;
}
.terms-area .details-desc .content h2, .privacy-area .details-desc .content h2 {
  font-size: 30px;
  line-height: 1.3;
  margin-top: -5px;
  color: #001e4c;
  margin-bottom: 15px;
  text-transform: capitalize;
}
.terms-area .details-desc .content h2 span, .privacy-area .details-desc .content h2 span {
  color: #004888;
}
.terms-area .details-desc .content p, .privacy-area .details-desc .content p {
  color: #24324a;
}
.terms-area .details-desc .service-details-slider, .privacy-area .details-desc .service-details-slider {
  margin-bottom: 25px;
  position: relative;
}
.terms-area .details-desc .service-details-slider .owl-nav, .privacy-area .details-desc .service-details-slider .owl-nav {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.terms-area .details-desc .content:last-child, .privacy-area .details-desc .content:last-child {
  margin-bottom: 0;
}

/* -----------------------------------------
  Terms CSS
----------------------------------------- */
/* -----------------------------------------
  Error CSS
----------------------------------------- */
.error-area {
  height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url(assets/img/banner/banner-bg-2.jpg);
  position: relative;
  overflow: hidden;
}
.error-area::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 30, 76, 0.62);
}
.error-area .error-box {
  background: #ffffff;
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.08);
  padding: 40px 20px 53px;
  border-radius: 5px;
  max-width: 760px;
  margin: auto;
  position: relative;
}
.error-area .error-box::after {
  position: absolute;
  content: "";
  top: 10px;
  left: 10px;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
}
.error-area .error-box .cta-btn {
  text-align: center;
}
.error-area .error-box .cta-btn .primary-btn {
  padding: 15px 30px;
}
.error-area .error-box .content {
  margin-bottom: 30px;
  text-align: center;
}
.error-area .error-box .content .logo {
  margin-bottom: 20px;
}
.error-area .error-box .content h3 {
  font-size: 32px;
  margin-top: -7px;
  line-height: 1.3;
  margin-bottom: 0;
  color: #001e4c;
}

/* -----------------------------------------
  Pricing CSS
----------------------------------------- */
.pricing-section .pricing-item-single {
  position: relative;
  background: #f1f5fa;
  border: 2px solid #bdbfc1;
  margin-bottom: 30px;
}
.pricing-section .pricing-item-single .pricing-item-content {
  position: relative;
  text-align: center;
  text-transform: capitalize;
  background: url(assets/img/item-bg-2.jpg) no-repeat center;
  background-size: cover;
  z-index: 1;
}
.pricing-section .pricing-item-single .pricing-item-content::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 30, 76, 0.8);
  z-index: -1;
}
.pricing-section .pricing-item-single .pricing-item-content .content-text {
  padding: 35px 0;
}
.pricing-section .pricing-item-single .pricing-item-content .content-text h2 {
  color: #bdbfc1;
  margin-bottom: 0;
}
.pricing-section .pricing-item-single .pricing-item-content .content-text p {
  color: #bdbfc1;
  font-size: 14px;
}
.pricing-section .pricing-item-single .pricing-item-content .content-text span.label {
  position: absolute;
  display: block;
  left: 10px;
  top: 10px;
  padding: 5px;
  font-weight: 500;
  text-align: left;
  color: #001e4c;
}
.pricing-section .pricing-item-single .pricing-item-content .content-text span.label::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  border-top: 120px solid #bdbfc1;
  border-right: 120px solid transparent;
  transition: 0.5s;
  z-index: -1;
}
.pricing-section .pricing-item-single .pricing-item-list {
  text-align: center;
  padding: 25px 20px;
}
.pricing-section .pricing-item-single .pricing-item-list ul {
  list-style-type: none;
  margin: 0;
  margin-bottom: 25px;
  text-align: left;
  padding: 0 20px;
}
.pricing-section .pricing-item-single .pricing-item-list ul li {
  margin-bottom: 14px;
  font-size: 15px;
  color: #031d41;
  font-weight: 500;
}
.pricing-section .pricing-item-single .pricing-item-list ul li i {
  font-size: 12px;
  font-weight: normal;
  margin-right: 10px;
  color: #004888;
}
.pricing-section .pricing-item-single .pricing-item-list ul li:last-child {
  margin-bottom: 0;
}
.pricing-section .pricing-item-single .pricing-item-list ul .disabled {
  opacity: 0.6;
}
.pricing-section .pricing-item-single .cta-btn .primary-btn {
  width: 100%;
  color: #ffffff;
  background: #001e4c;
}
.pricing-section .pricing-item-single .cta-btn .primary-btn::before, .pricing-section .pricing-item-single .cta-btn .primary-btn::after {
  background-color: #bdbfc1;
}
.pricing-section .pricing-item-single .cta-btn .primary-btn:hover {
  color: #ffffff;
}
.pricing-section .pricing-item-single.active .pricing-item-content::before {
  background: rgba(189, 191, 193, 0.8);
}
.pricing-section .pricing-item-single.active .pricing-item-content .content-text {
  padding: 50px 0;
}
.pricing-section .pricing-item-single.active .pricing-item-content .content-text h2 {
  color: #ffffff;
}
.pricing-section .pricing-item-single.active .pricing-item-content .content-text p {
  color: #ffffff;
}
.pricing-section .pricing-item-single.active .pricing-item-content .content-text span.label::after {
  border-top: 120px solid #ffffff;
}
.pricing-section .pricing-item-single.active .cta-btn .primary-btn {
  width: 100%;
  color: #031d41;
  background: #bdbfc1;
}
.pricing-section .pricing-item-single.active .cta-btn .primary-btn::before, .pricing-section .pricing-item-single.active .cta-btn .primary-btn::after {
  background-color: #bdbfc1;
}
.pricing-section .pricing-item-single.active .cta-btn .primary-btn:hover {
  color: #ffffff;
}
.pricing-section .pricing-item-single.active .cta-btn .primary-btn:hover::before, .pricing-section .pricing-item-single.active .cta-btn .primary-btn:hover::after {
  background-color: #001e4c;
}
.pricing-section .mt-30 {
  margin-top: 30px;
}

.cost-section .content-inner {
  padding-left: 60px;
  padding-right: 60px;
}
.cost-section .section-title h2 {
  margin-top: -10px;
}
.cost-section .cost-form .form-group {
  margin-bottom: 20px;
}
.cost-section .cost-form .form-group label {
  font-weight: 500;
  color: #001e4c;
  margin-right: 8px;
}
.cost-section .cost-form .form-group .range-slider {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 100%;
  background: #bdbfc1;
  outline: none;
  height: 5px;
  border-radius: 30px;
}
.cost-section .cost-form .form-group .range-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #ffffff;
  background: #bdbfc1;
  cursor: pointer;
}
.cost-section .cost-form .form-group .range-slider::-moz-range-thumb {
  position: relative;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #ffffff;
  background: #bdbfc1;
  cursor: pointer;
}
.cost-section .cost-form .form-group .slider-value {
  position: absolute;
  top: -20px;
  font-weight: 500;
  color: #001e4c;
}
.cost-section .cost-form .form-group .input-btn {
  display: inline-block;
  text-align: center;
  background: #f1f5fa;
  color: #031d41;
  border: 1px solid #bdbfc1;
  padding: 8px 12px;
  font-size: 14px;
  margin-right: 5px;
}
.cost-section .cost-form .form-group .input-btn.active {
  background: #bdbfc1;
}
.cost-section .cost-form .form-group .plus-minus-input {
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: center;
}
.cost-section .cost-form .form-group .plus-minus-input .input-group-field {
  background: #f1f5fa;
  color: #031d41;
  border: 1px solid #bdbfc1;
  padding: 8px 12px;
  width: 50px;
  text-align: center;
}
.cost-section .cost-form .form-group .plus-minus-input .input-group-field::-webkit-inner-spin-button,
.cost-section .cost-form .form-group .plus-minus-input .input-group-field ::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
}
.cost-section .cost-form .form-group .plus-minus-input .input-btn {
  margin: 0 8px;
  background: #bdbfc1;
}
.cost-section .cost-form .form-group .form-control {
  height: unset;
}
.cost-section .cost-form .form-group .nice-select {
  float: unset;
  background: #f1f5fa;
  color: #031d41;
  border: 1px solid #bdbfc1;
  padding-left: 10px;
  padding-right: 20px;
  margin-right: 8px;
  display: inline-flex;
}
.cost-section .cost-form .form-group .nice-select .list {
  background: #f1f5fa;
  color: #031d41;
  border: 1px solid #bdbfc1;
  padding: 8px 12px;
  font-size: 14px;
  border-radius: 0;
}
.cost-section .cost-form .form-group .nice-select .list .option {
  transition: 0.6s;
  color: #a5a5a5;
  font-size: 14px;
  line-height: 25px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 0;
  padding-right: 10px;
}
.cost-section .cost-form .form-group .nice-select .list .option.selected {
  background-color: transparent;
  font-weight: 500;
  color: #24324a;
}
.cost-section .cost-form .form-group .nice-select::after {
  right: 5px;
  border: none;
  transform: rotate(0deg);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #bdbfc1;
}
.cost-section .cost-form .form-group .open:after {
  border-top: none;
  border-bottom: 6px solid #bdbfc1;
}
.cost-section .cost-form .cta-btn {
  margin-top: 30px;
}
.cost-section .cost-form .cta-btn .submit-btn {
  width: 100%;
  text-align: center;
  display: inline-block;
  transition: 0.5s;
  border-radius: 0;
  border: none;
  padding: 15px 30px;
  z-index: 1;
  color: #031d41;
  background-color: #bdbfc1;
  font-size: 30px;
  font-weight: 600;
  font-family: "vazir", sans-serif;
  line-height: 1.8;
  text-transform: capitalize;
}
.cost-section .cost-form .cta-btn .submit-btn span {
  color: #ffffff;
  font-size: 16px;
  vertical-align: middle;
  margin-right: 10px;
}

/* -----------------------------------------
   Comingsoon CSS
----------------------------------------- */
.comingsoon-section {
  position: relative;
  height: 100vh;
  background: #a8aaf1;
  background: url(assets/img/bg-map-1.png) no-repeat center;
  background-size: cover;
  display: grid;
  place-items: center;
}
.comingsoon-section .comingsoon-box {
  position: relative;
  max-width: 760px;
  margin: 0 auto;
  padding: 45px 40px 35px;
  background-color: #fff;
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.08);
  position: relative;
}
.comingsoon-section .comingsoon-box::after {
  position: absolute;
  content: "";
  top: -15px;
  left: -15px;
  border-top: 100px solid #bdbfc1;
  border-right: 100px solid transparent;
  transition: 0.5s;
  z-index: -1;
}
.comingsoon-section .comingsoon-box::before {
  position: absolute;
  content: "";
  right: -15px;
  bottom: -15px;
  border-bottom: 100px solid #bdbfc1;
  border-left: 100px solid transparent;
  transition: 0.5s;
  z-index: -1;
}
.comingsoon-section .comingsoon-box .logo img {
  margin: 0 auto 20px;
  display: block;
}
.comingsoon-section .comingsoon-box .title-box {
  text-transform: capitalize;
  position: relative;
  text-align: center;
}
.comingsoon-section .comingsoon-box .title-box h2 {
  color: #001e4c;
}
.comingsoon-section .comingsoon-box .title-box .text {
  position: relative;
  margin-top: 12px;
}
.comingsoon-section .comingsoon-box .newsletter-form {
  margin-bottom: 30px;
}
.comingsoon-section .comingsoon-box .newsletter-form .input-group {
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 20px rgba(106, 99, 119, 0.1);
  border: none;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #bdbfc1;
}
.comingsoon-section .comingsoon-box .cta-btn {
  text-align: center;
}
.comingsoon-section .comingsoon-box .cta-btn .primary-btn {
  padding: 15px 30px;
}
.comingsoon-section .comingsoon-box #timer {
  padding: 30px 0;
}
.comingsoon-section .comingsoon-box #timer div {
  color: #bdbfc1;
  width: 100px;
  height: 105px;
  border-radius: 5px;
  font-size: 40px;
  font-weight: 800;
  margin-left: 10px;
  margin-right: 10px;
}
.comingsoon-section .comingsoon-box #timer div span {
  display: block;
  margin-top: -2px;
  font-size: 17px;
  font-weight: 600;
  color: #001e4c;
}

/* -----------------------------------------
  Contact CSS
----------------------------------------- */
.contact-area .contact-info {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 30px;
}
.contact-area .contact-info .info-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.contact-area .contact-info .info-item:hover {
  border-color: #b9cce0;
  box-shadow: 0 12px 28px rgba(4, 38, 84, 0.12);
  transform: translateY(-2px);
}
.contact-area .contact-info .info-icon {
  display: inline-flex;
  flex: 0 0 56px;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #004888;
  color: #ffffff;
  font-size: 22px;
  transition: background-color 0.25s ease;
}
.contact-area .contact-info .info-item:hover .info-icon {
  background: #042654;
}
.contact-area .contact-info .info-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: 2px;
}
.contact-area .contact-info .info-label {
  color: #5b6b7f;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
}
.contact-area .contact-info .info-content a,
.contact-area .contact-info .info-content p {
  margin: 0;
  color: #031d41;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.7;
  overflow-wrap: anywhere;
  transition: none;
}
.contact-area .contact-info .info-content p {
  font-size: 15px;
  font-weight: 700;
}
.contact-area .contact-info .info-content a:hover {
  color: #004888;
}
.contact-area .contact-form {
  background: #e6edf5;
  padding: 40px;
  margin-bottom: 30px;
}
.contact-area .contact-form .content {
  margin-bottom: 30px;
  text-align: left;
}
.contact-area .contact-form .content h3 {
  font-size: 30px;
  margin-top: -7px;
  margin-bottom: 0;
  color: #001e4c;
}
.contact-area .contact-form .form-group {
  margin-bottom: 25px;
}
.contact-area .contact-form .form-control {
  width: 100%;
  background: #ffffff;
  border: none;
}
.contact-area .contact-form .cta-btn {
  margin-top: 25px;
}
.contact-area .contact-form .cta-btn .primary-btn {
  width: 100%;
  padding: 14.5px 30px;
  color: #ffffff;
  background: #001e4c;
}
.contact-area .contact-form .cta-btn .primary-btn::before, .contact-area .contact-form .cta-btn .primary-btn::after {
  background-color: #bdbfc1;
}
.contact-area .contact-form .cta-btn .primary-btn:hover {
  color: #ffffff;
}
.contact-area .contact-form .checkbox label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  font-weight: 500;
  font-size: 14px;
  display: inline-block;
  margin-bottom: 0;
  color: #031d41;
}
.contact-area .contact-form .checkbox label a {
  color: #004888;
}
.contact-area .contact-form .checkbox [type=checkbox]:checked,
.contact-area .contact-form .checkbox [type=checkbox]:not(:checked) {
  display: none;
}
.contact-area .contact-form .checkbox [type=checkbox]:checked + label:after,
.contact-area .contact-form .checkbox [type=checkbox]:not(:checked) + label:after {
  content: "";
  width: 8px;
  height: 8px;
  background: #bdbfc1;
  position: absolute;
  top: 5.5px;
  left: 6px;
  transition: 0.5s;
}
.contact-area .contact-form .checkbox [type=checkbox]:checked + label::before,
.contact-area .contact-form .checkbox [type=checkbox]:not(:checked) + label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 19px;
  height: 19px;
  border: 1px solid #ffffff;
  background: #ffffff;
  transition: 0.5s;
}
.contact-area .contact-form .checkbox [type=checkbox]:checked + label::before {
  border: 1px solid #bdbfc1;
  background: unset;
}
.contact-area .contact-form .checkbox [type=checkbox]:not(:checked) + label:after {
  display: none;
}
.contact-area .contact-map {
  overflow: hidden;
  padding-bottom: 50%;
  position: relative;
  height: 0;
  border: none;
  margin: 30px 0;
}
.contact-area .contact-map iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
  border: 0;
}

/* -----------------------------------------
  Pagination CSS
----------------------------------------- */
.pagination {
  display: block;
  margin-top: 35px;
  margin-left: auto;
  margin-right: auto;
}
.pagination .page-numbers {
  width: 40px;
  height: 40px;
  background-color: #ffffff;
  box-shadow: 0 0 30px -2px rgba(44, 44, 44, 0.1);
  color: #031d41;
  text-align: center;
  display: inline-block;
  border-radius: 0;
  line-height: 42px;
  position: relative;
  margin-left: 3px;
  margin-right: 3px;
  font-weight: 500;
  font-size: 18px;
}
.pagination .page-numbers:hover {
  color: #ffffff;
  background-color: #004888;
}
.pagination .page-numbers i {
  position: relative;
  top: 1.5px;
}
.pagination .page-numbers.current {
  color: #ffffff;
  background-color: #004888;
}

/* -----------------------------------------
  Go Top CSS
----------------------------------------- */
.go-top {
  position: fixed;
  top: 50%;
  right: 3%;
  opacity: 0;
  cursor: pointer;
  text-decoration: none;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background: #004888;
  padding: 10px 20px;
  z-index: 100;
  transition: all 500ms ease-in-out;
}

.go-top.active {
  top: 95%;
  transform: translateY(-95%);
  opacity: 1;
  visibility: visible;
}

/* -----------------------------------------
  Preloader CSS
----------------------------------------- */
.preloader-main {
  position: fixed;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 99999;
  background: #ffffff;
  display: grid;
  display: -ms-none;
  place-items: center;
  display:none;
}
.preloader-main .loader {
  width: 175px;
  height: 80px;
  position: relative;
}
.preloader-main .loader::before {
  content: "";
  left: 60px;
  bottom: 18px;
  position: absolute;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #bdbfc1;
  background-image: radial-gradient(circle 8px at 18px 18px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 18px 0px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 0px 18px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 36px 18px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 18px 36px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 30px 5px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 30px 5px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 30px 30px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 5px 30px, #ffffff 100%, transparent 0), radial-gradient(circle 4px at 5px 5px, #ffffff 100%, transparent 0);
  background-repeat: no-repeat;
  animation: rotationBack 3s linear infinite;
}
.preloader-main .loader::after {
  content: "";
  left: 94px;
  bottom: 15px;
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #bdbfc1;
  background-image: radial-gradient(circle 5px at 12px 12px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 12px 0px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 0px 12px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 24px 12px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 12px 24px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 20px 3px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 20px 3px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 20px 20px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 3px 20px, #ffffff 100%, transparent 0), radial-gradient(circle 2.5px at 3px 3px, #ffffff 100%, transparent 0);
  background-repeat: no-repeat;
  animation: rotationBack 4s linear infinite reverse;
}
@keyframes rotationBack {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}

/* -----------------------------------------
  Footer CSS
----------------------------------------- */
.footer-area {
  background: url(assets/img/bg-map-1.png) no-repeat center;
  background-size: cover;
}
.footer-area .footer-widget {
  margin-bottom: 30px;
}
.footer-area .footer-widget .navbar-brand .footer-logo2 {
  display: none;
}
.footer-area ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.footer-area ul li {
  position: relative;
  margin-bottom: 15px;
}
.footer-area .navbar-brand {
  margin-bottom: 15px;
  padding: 0;
}
.footer-area h5 {
  text-transform: capitalize;
  margin-bottom: 25px;
  margin-top: 13px;
}
.footer-area .footer-links li {
  transition: 0.5s;
}
.footer-area .footer-links li i {
  font-size: 12px;
  color: #004888;
}
.footer-area .footer-links li:hover {
  transform: translateX(5px);
}
.footer-area .footer-links li:hover a {
  color: #004888;
}
.footer-area .footer-links li:hover::before {
  color: #bdbfc1;
}
.footer-area .footer-news .content {
  position: relative;
  display: flex;
  align-items: flex-end;
}
.footer-area .footer-news .content .img {
  display: inline-table;
  margin-right: 10px;
}
.footer-area .footer-news .content .img img {
  max-width: 41px;
}
.footer-area .contact-info .content {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 16px;
}
.footer-area .contact-info .content .tag {
  display: inline-flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #004888;
  color: #ffffff;
  font-size: 15px;
}
.footer-area .contact-info .content span:last-child {
  display: block;
  padding-top: 5px;
  line-height: 1.7;
}
.footer-area .contact-info .content span a {
  display: block;
  text-align: right;
}

.footer-area .social-link {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.footer-area .social-link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  border-radius: 8px;
  background: #004888;
  color: #ffffff;
  font-size: 15px;
  line-height: 1;
  transition: background-color 0.25s ease, transform 0.25s ease;
}
.footer-area .social-link a:hover,
.footer-area .social-link a:focus-visible {
  background: #042654;
  color: #ffffff;
  transform: translateY(-2px);
}

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

/* -----------------------------------------
Copy Right CSS
----------------------------------------- */
.copy-right-area {
  background: #001e4c;
  /*padding: 1.9em 0;*/
  padding: 1em 0;
  text-align: center;
  border-top: 1px solid rgba(25, 25, 25, 0.15);
}
.copy-right-area .copy-right-content p {
  color: #ffffff;
  margin-bottom: 0;
}
.copy-right-area .copy-right-content a {
  color: #bdbfc1;
}

.owl-carousel .owl-nav button[class*=owl-] {
  width: 40px;
  height: 40px;
  background: #004888;
  margin-right: 7px;
  transition: 0.5s;
  color: #ffffff;
  text-align: center;
  font-size: 26px;
  border: none;
  line-height: 39px;
}
.owl-carousel .owl-nav button[class*=owl-] i {
  line-height: 1.3;
}
.owl-carousel .owl-nav button[class*=owl-]:last-child {
  margin-right: 0;
}
.owl-carousel .owl-nav button[class*=owl-]:hover {
  background: #042654;
  color: #ffffff;
}

.custom-owl-nav button {
  width: 40px;
  height: 40px;
  background: #004888;
  margin-right: 7px;
  transition: 0.5s;
  color: #ffffff;
  text-align: center;
  font-size: 26px;
  border: none;
  line-height: 39px;
}
.custom-owl-nav button:last-child {
  margin-right: 0;
}
.custom-owl-nav button:hover {
  background: #042654;
  color: #ffffff;
}
.custom-owl-nav button i {
  line-height: 1.3;
}
@keyframes ripple {
  0% {
    transform: scale(1);
  }
  75% {
    transform: scale(1.75);
    opacity: 0.5;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}

.bg-section-white::before{
    background-color:#ffffff;
}
#suncode_map_contents_2 {
  color:#021e45;
  margin-top:80px;
}
.sc_animator p{
    color:#021e45;
}
.sc_animator p strong{
    color:#06377b;
}
#suncode_map_contents_2 res{
    margin-top:80px;
}

.instrument-slider .owl-carousel{
    margin-bottom:40px !important;
}

/* =========================================================
   KPC additions
   (styles that used to be inline in the PHP templates)
   ========================================================= */

/* ---- Home hero text (front-page.php) ---- */
.fixed-text .hero-title {
  font-size: 32px;
  color: #ffffff;
  text-align: center;
}
.fixed-text .hero-subtitle {
  font-size: 16px;
  color: #ffffff;
  text-align: center;
}

/* ---- Partner slider links (partner-area.php) ---- */
.partner-two .partner-slider .slider-item .partner-link {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: inherit;
}
.partner-two .partner-slider .slider-item .partner-link img {
  display: block;
}
/* the hover logo sits exactly on top of the normal logo (no jump on hover) */
.partner-two .partner-slider .slider-item .partner-link img:last-child {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: none;
}
.partner-two .partner-slider .slider-item:hover .partner-link img {
  width: 100%;
}
.partner-two .partner-slider .slider-item .partner-link img {
  transition: opacity 0.4s ease;
}

/* ---- Clickable gallery cards (projects / machinery) ---- */
.project-gallery-trigger,
.instrument-gallery-trigger {
  cursor: pointer;
}
.project-gallery-trigger:focus-visible,
.instrument-gallery-trigger:focus-visible {
  outline: 2px solid #bdbfc1;
  outline-offset: 2px;
}

/* ---- Lightbox caption (was repeated in 4 templates) ---- */
.fancybox-project-title {
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  color: #ffffff;
  padding: 12px 15px 5px;
  line-height: 1.6;
}

/* ---- Single project gallery (single-projects.php) ---- */
.project-gallery {
  margin-top: 40px;
}
.project-gallery::after {
  content: "";
  display: block;
  clear: both;
}
.project-gallery-item {
  float: right;
  width: 33.333%;
  padding: 10px;
  box-sizing: border-box;
}
.project-gallery-item img {
  width: 100%;
  display: block;
  border-radius: 10px;
  transition: 0.3s;
}
.project-gallery-item img:hover {
  transform: scale(1.03);
}

/* ---- Project details list label ---- */
.service-details-area .project-info .info-list li .info-label {
  font-weight: 600;
  color: #001e4c;
  display: inline-block;
  flex: 0 0 50%;
  max-width: 50%;
}

/* ---- Team member position (archive-team.php) ---- */
.team-position {
  color: #ffffff !important;
}

/* ---- Contact form honeypot (hidden from people) ---- */
.kpc-hp {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ---- Back-to-top is now a <button> ---- */
button.go-top {
  border: 0;
  line-height: inherit;
}

/* ---- Search popup ---- */
.search-box .search-form .primary-btn {
  border: 0;
  flex-shrink: 0;
}

/* ---- Back-to-top: hidden button must not catch taps ---- */
.go-top {
  visibility: hidden;
}
.go-top.active {
  visibility: visible;
}

/* ---- Layers (z-index): content < header (1030) < popups ----
   The sticky header used z-index 99999999999 and the lightbox 99,
   so galleries and the search popup opened *under* the header
   and their close (X) button could not be reached. */
.mfp-bg {
  z-index: 100000;
}
.mfp-wrap {
  z-index: 100001;
}
.fancybox__container {
  z-index: 100010 !important;
}

/* ---- File upload field (Persian "انتخاب فایل" instead of the browser text) ---- */
html body .kpc-file {
  position: relative !important; /* the invisible input must stay inside this box */
  isolation: isolate;
  display: flex !important;
  flex-direction: row;
  direction: rtl;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  min-height: 52px;
  padding: 6px;
  border: 1px solid #d9dde3;
  border-radius: 6px;
  background: #ffffff;
  box-sizing: border-box;
  overflow: hidden !important;
}
html body .kpc-file:focus-within {
  border-color: #001e4c;
  box-shadow: 0 0 0 3px rgba(0, 30, 76, 0.15);
}
/* the real input: visually hidden (still focusable and submitted with the form).
   1px box only – it can never cover the menu or other fields. */
html body .kpc-file input.kpc-file__input[type="file"] {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 0 !important;
  max-width: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  opacity: 0 !important;
  white-space: nowrap !important;
}
html body .kpc-file {
  cursor: pointer;
}
html body .kpc-file .kpc-file__btn {
  flex-shrink: 0;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  border-radius: 4px;
  background: #001e4c;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}
html body .kpc-file:hover .kpc-file__btn {
  background: #06377b;
}
html body .kpc-file .kpc-file__name {
  flex: 1 1 auto;
  margin: 0;
  line-height: 1.5;
  min-width: 0;
  padding-inline-end: 8px;
  color: #6b7280;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
html body .kpc-file .kpc-file__name.has-file {
  color: #001e4c;
  direction: ltr;
  text-align: right;
}

/* =========================================================
   Mobile header actions + off-canvas menu (drawer)
   Visible up to 1199px (see responsive.css), hidden on desktop.
   ========================================================= */
.kpc-mobile-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}
.kpc-mobile-actions__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #001e4c;
  font-size: 19px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.kpc-mobile-actions__btn:hover,
.kpc-mobile-actions__btn:focus-visible {
  background: rgba(0, 30, 76, 0.07);
  color: #001e4c;
}
.kpc-burger {
  flex-direction: column;
  gap: 5px;
  background: #001e4c;
}
.kpc-burger:hover,
.kpc-burger:focus-visible {
  background: #06377b;
}
.kpc-burger span {
  display: block;
  width: 20px;
  height: 2px;
  border-radius: 2px;
  background: #ffffff;
}
.kpc-burger span:nth-child(2) {
  width: 14px;
  align-self: flex-start;
  margin-inline-start: 12px;
}

/* ---- drawer ---- */
.kpc-drawer {
  position: fixed;
  inset: 0;
  z-index: 100020;
}
.kpc-drawer[hidden] {
  display: none;
}
.kpc-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(1, 12, 26, 0.55);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.kpc-drawer__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  width: min(88vw, 380px);
  background: #ffffff;
  box-shadow: -8px 0 30px rgba(0, 0, 0, 0.18);
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.kpc-drawer.is-open .kpc-drawer__overlay {
  opacity: 1;
}
.kpc-drawer.is-open .kpc-drawer__panel {
  transform: translateX(0);
}
html.kpc-drawer-open,
html.kpc-drawer-open body {
  overflow: hidden;
}

.kpc-drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 18px;
  background: #001e4c;
}
.kpc-drawer__logo img {
  display: block;
  height: 46px;
  width: auto;
  max-width: 180px;
  object-fit: contain;
}
.kpc-drawer__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
  font-size: 18px;
  cursor: pointer;
}
.kpc-drawer__close:hover,
.kpc-drawer__close:focus-visible {
  background: rgba(255, 255, 255, 0.25);
}

.kpc-drawer__search {
  position: relative;
  margin: 16px 18px 6px;
}
.kpc-drawer__search input {
  width: 100%;
  height: 44px;
  padding: 0 14px 0 46px;
  border: 1px solid #e3e6eb;
  border-radius: 10px;
  background: #f5f6f8;
  color: #031d41;
  font-size: 14px;
  outline: 0;
}
.kpc-drawer__search input:focus {
  border-color: #001e4c;
  background: #ffffff;
}
.kpc-drawer__search button {
  position: absolute;
  top: 0;
  left: 0;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: #001e4c;
  font-size: 16px;
}

/* menu viewport: every list is a panel that slides */
.kpc-drawer__nav {
  position: relative;
  flex: 1 1 auto;
  overflow: hidden;
}
.kpc-drawer__list {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 6px 0 20px;
  list-style: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  background: #ffffff; /* solid, so panels never show through each other while sliding */
  visibility: hidden;
  transform: translateX(-100%);
  transition: transform 0.3s ease, visibility 0s linear 0.3s;
}
.kpc-drawer__list.is-active {
  visibility: visible;
  transform: translateX(0);
  transition: transform 0.3s ease, visibility 0s;
}
.kpc-drawer__list.is-behind {
  visibility: hidden;
  transform: translateX(30%);
}
.kpc-drawer__list--root:not(.is-active):not(.is-behind) {
  transform: translateX(0);
}

.kpc-drawer__item {
  position: relative;
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid #f0f1f4;
}
.kpc-drawer__link {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 10px 22px;
  color: #031d41;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
}
.kpc-drawer__link:hover,
.kpc-drawer__link:focus-visible {
  background: #f5f6f8;
  color: #001e4c;
}
.kpc-drawer__item.is-current > .kpc-drawer__link {
  color: #001e4c;
  font-weight: 700;
  box-shadow: inset -3px 0 0 #001e4c;
}
.kpc-drawer__item.is-ancestor > .kpc-drawer__link::after {
  content: "";
  width: 6px;
  height: 6px;
  margin-inline-start: 8px;
  border-radius: 50%;
  background: #001e4c;
}
.kpc-drawer__next {
  flex: 0 0 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-inline-start: 1px solid #f0f1f4;
  background: transparent;
  color: #001e4c;
  font-size: 16px;
  cursor: pointer;
}
.kpc-drawer__next:hover,
.kpc-drawer__next:focus-visible {
  background: #f5f6f8;
}

.kpc-drawer__panel-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px 8px 18px;
  border-bottom: 1px solid #e3e6eb;
  background: #f5f6f8;
}
.kpc-drawer__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  height: 36px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  background: #ffffff;
  color: #001e4c;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.kpc-drawer__panel-title {
  overflow: hidden;
  color: #001e4c;
  font-size: 15px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.kpc-drawer__item--all .kpc-drawer__link {
  color: #06377b;
  font-size: 14px;
  font-weight: 600;
}

.kpc-drawer__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 14px 18px calc(14px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid #e3e6eb;
}
.kpc-drawer__lang,
.kpc-drawer__theme {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 14px;
  border: 1px solid #e3e6eb;
  border-radius: 20px;
  background: #ffffff;
  color: #001e4c;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.kpc-drawer__lang img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
}

@media (prefers-reduced-motion: reduce) {
  .kpc-drawer__panel,
  .kpc-drawer__overlay,
  .kpc-drawer__list {
    transition: none;
  }
}

/* =========================================================
   Typography rhythm – one heading scale and spacing everywhere
   (html body prefix = wins over the older, page-specific rules)
   Desktop sizes here, phone sizes in responsive.css.
   ========================================================= */
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6 {
  margin-top: 0;
  line-height: 1.5;
}
html body h1 { margin-bottom: 16px; }
html body h2 { margin-bottom: 16px; }
html body h3 { margin-bottom: 12px; }
html body h4,
html body h5,
html body h6 { margin-bottom: 8px; }

/* page header title */
html body .page-title-area .page-title-content h1 {
  margin: 0 0 12px;
  font-size: 32px;
}

/* section titles: same gap to the content in every section */
html body .section-title {
  margin-bottom: 40px;
}
html body .section-title h2 {
  margin: 0;
  font-size: 24px;
}
html body .section-title p {
  margin: 12px 0 0;
}

/* section intro blocks (about, machinery, projects…) */
html body .about-section .about-content h2,
html body .instrument-section .instrument-content h2,
html body .amazing-projects-section .projects-content h2 {
  margin: 0 0 16px;
  font-size: 24px;
}

/* headings inside page / post text (editor content) */
html body .content h2,
html body .content h2.title,
html body .blog-details-area .blog-details-desc .content h2,
html body .service-details-area .service-details-desc .content h2 {
  margin: 0 0 16px;
  font-size: 24px;
}
html body .content h3,
html body .contact-area .contact-form .content h3 {
  margin: 0 0 12px;
  font-size: 22px;
}
html body .content h4 {
  margin: 0 0 8px;
  font-size: 18px;
}
/* a heading that follows text gets breathing room above it */
html body .content > * + h2,
html body .about-content > * + h2,
html body .blog-details-desc * + h2,
html body .entry-content > * + h2,
html body .col-12 > p + h2 {
  margin-top: 32px;
}
html body .content > * + h3,
html body .content > * + h4,
html body .about-content > * + h3,
html body .entry-content > * + h3,
html body .entry-content > * + h4,
html body .col-12 > p + h3,
html body .col-12 > p + h4 {
  margin-top: 24px;
}

/* card titles stay tight to their card */
html body .service-item-single h3,
html body .overlay-content h3,
html body .blog-item-content h3,
html body .panel-heading .panel-title {
  margin: 0;
}
html body .section-title.style-two h2,
html body .about-section .about-fact .content h4,
html body .error-area .error-box .content h3 {
  margin-top: 0;
}
html body .service-details-area .content h2.title,
html body .terms-area .content h2.title,
html body .privacy-area .content h2.title {
  margin: 0 0 16px;
  font-size: 24px;
}
html body .about-section.about-style-two .about-img-content .about-fact .content h4 {
  margin: 0 0 4px;
}

/* =========================================================
   Forms – one look for every form on the site
   (theme forms, Contact Form 7, Gravity Forms, search boxes)
   Border colour comes from the logo blue (#004888).
   ========================================================= */
:root {
  --kpc-brand: #004888;           /* logo blue */
  --kpc-field-border: #b9cce0;    /* logo blue, light tint */
  --kpc-field-border-hover: #7fa3c7;
  --kpc-field-bg: #ffffff;
  --kpc-field-text: #031d41;
  --kpc-field-placeholder: #8a94a3;
  --kpc-field-ring: 0 0 0 3px rgba(0, 72, 136, 0.15);
  --kpc-radius: 8px;              /* fields, upload box and form buttons */
  --kpc-field-height: 50px;
  --kpc-field-pad-y: 12px;
  --kpc-field-pad-x: 16px;
  --kpc-field-gap: 16px;          /* space between fields */
}

/* ---- text fields, selects, textareas ---- */
html body .form-control,
html body .wpcf7 input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
html body .wpcf7 select,
html body .wpcf7 textarea,
html body .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not([type="image"]),
html body .gform_wrapper select,
html body .gform_wrapper textarea,
html body .nice-select,
html body .search-box .search-form .search-input,
html body .kpc-drawer__search input {
  width: 100%;
  min-height: var(--kpc-field-height);
  height: auto;
  padding: var(--kpc-field-pad-y) var(--kpc-field-pad-x) !important;
  border: 1px solid var(--kpc-field-border) !important;
  border-radius: var(--kpc-radius) !important;
  background-color: var(--kpc-field-bg) !important;
  color: var(--kpc-field-text) !important;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.6;
  box-shadow: none !important;
  outline: 0;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
html body .nice-select {
  display: flex;
  align-items: center;
  float: none;
}
html body textarea.form-control,
html body .wpcf7 textarea,
html body .gform_wrapper textarea {
  min-height: 140px;
  resize: vertical;
}
html body .form-control:hover,
html body .wpcf7 input:hover,
html body .wpcf7 textarea:hover,
html body .gform_wrapper input:hover,
html body .gform_wrapper select:hover,
html body .gform_wrapper textarea:hover,
html body .nice-select:hover {
  border-color: var(--kpc-field-border-hover) !important;
}
html body .form-control:focus,
html body .wpcf7 input:focus,
html body .wpcf7 select:focus,
html body .wpcf7 textarea:focus,
html body .gform_wrapper input:focus,
html body .gform_wrapper select:focus,
html body .gform_wrapper textarea:focus,
html body .nice-select:focus,
html body .nice-select.open,
html body .search-box .search-form .search-input:focus,
html body .kpc-drawer__search input:focus {
  border-color: var(--kpc-brand) !important;
  box-shadow: var(--kpc-field-ring) !important;
}
html body .form-control::placeholder,
html body .wpcf7 ::placeholder,
html body .gform_wrapper ::placeholder,
html body .kpc-drawer__search input::placeholder {
  color: var(--kpc-field-placeholder);
  opacity: 1;
}
html body .nice-select .list {
  border-radius: var(--kpc-radius);
}

/* ---- space between fields ---- */
html body .form-group,
html body .wpcf7 .form-group,
html body .gform_wrapper .gfield {
  margin-bottom: var(--kpc-field-gap);
}
html body .gform_wrapper .gform_fields {
  row-gap: var(--kpc-field-gap) !important;
}
html body .gform_wrapper .gfield {
  margin-bottom: 0;
}
html body .gform_wrapper .gfield_label,
html body .gform_wrapper legend.gfield_label {
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
}

/* ---- buttons inside forms ---- */
html body .wpcf7 .wpcf7-submit,
html body .wpcf7 .primary-btn,
html body .contact-area .contact-form .primary-btn,
html body .gform_wrapper .gform_button,
html body .gform_wrapper .gform_next_button,
html body .gform_wrapper .gform_previous_button,
html body .gform_wrapper input[type="submit"],
html body .gform_wrapper button[type="submit"] {
  min-height: var(--kpc-field-height);
  padding: var(--kpc-field-pad-y) 28px !important;
  border: 0 !important;
  border-radius: var(--kpc-radius) !important;
  background: #001e4c !important;
  color: #ffffff !important;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
html body .wpcf7 .wpcf7-submit:hover,
html body .wpcf7 .primary-btn:hover,
html body .contact-area .contact-form .primary-btn:hover,
html body .gform_wrapper .gform_button:hover,
html body .gform_wrapper input[type="submit"]:hover,
html body .gform_wrapper button[type="submit"]:hover {
  background: var(--kpc-brand) !important;
}

/* ---- upload box uses the same tokens ---- */
html body .kpc-file {
  min-height: var(--kpc-field-height);
  border: 1px solid var(--kpc-field-border);
  border-radius: var(--kpc-radius);
  background: var(--kpc-field-bg);
}
html body .kpc-file:hover {
  border-color: var(--kpc-field-border-hover);
}
html body .kpc-file:focus-within {
  border-color: var(--kpc-brand);
  box-shadow: var(--kpc-field-ring);
}
html body .kpc-file .kpc-file__btn {
  border-radius: calc(var(--kpc-radius) - 2px);
}

/* ---- Contact Form 7 messages ---- */
html body .wpcf7 form .wpcf7-response-output {
  margin: var(--kpc-field-gap) 0 0;
  padding: 12px 16px;
  border-radius: var(--kpc-radius);
  font-size: 14px;
}
html body .wpcf7 .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 13px;
}
html body .wpcf7 .wpcf7-form-control-wrap {
  display: block;
}
html body .wpcf7 .wpcf7-spinner {
  margin: 0 12px;
  vertical-align: middle;
}

/* ---- form status colours (instead of the plugin's yellow / orange) ---- */
html body .wpcf7 form .wpcf7-response-output {
  border: 1px solid var(--kpc-field-border);
  background: #f1f5fa;
  color: #001e4c;
}
html body .wpcf7 form.invalid .wpcf7-response-output,
html body .wpcf7 form.unaccepted .wpcf7-response-output,
html body .wpcf7 form.payment-required .wpcf7-response-output,
html body .wpcf7 form.failed .wpcf7-response-output,
html body .wpcf7 form.aborted .wpcf7-response-output,
html body .wpcf7 form.spam .wpcf7-response-output {
  border-color: #e3a3a3;
  background: #fdf1f1;
  color: #a12828;
}
html body .wpcf7 form.sent .wpcf7-response-output {
  border-color: #9fd1a8;
  background: #effaf1;
  color: #1e6b2e;
}
html body .wpcf7 .wpcf7-not-valid-tip,
html body .gform_wrapper .validation_message,
html body .gform_wrapper .gfield_validation_message {
  color: #c0392b;
}
html body .wpcf7 .wpcf7-not-valid,
html body .gform_wrapper .gfield_error input,
html body .gform_wrapper .gfield_error textarea,
html body .gform_wrapper .gfield_error select {
  border-color: #e08b8b !important;
}

/* =========================================================
   Single project (single-projects.php)
   ========================================================= */
.kpc-project-hero {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 260px;
  overflow: hidden;
  background: #031d41;
  isolation: isolate;
}
.kpc-project-hero__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 62%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}
.kpc-project-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  /* navy on the right (title side), the photo fades in on the left */
  background: linear-gradient(90deg, rgba(3, 29, 65, 0.25) 0%, rgba(3, 29, 65, 0.8) 38%, #031d41 62%);
}
.kpc-project-hero--no-image::after {
  background: linear-gradient(90deg, #13335e 0%, #031d41 62%);
}
html body .kpc-project-hero__title {
  margin: 0;
  color: #ffffff;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.5;
}

.kpc-project {
  padding: 56px 0 80px;
}
html body .kpc-project__heading {
  margin: 0 0 16px;
  color: #042654;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.5;
}
.kpc-project__about {
  margin-bottom: 40px;
}
.kpc-project__text,
.kpc-project__text p {
  color: #02142d;
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  text-align: justify;
}
.kpc-project__text p:last-child {
  margin-bottom: 0;
}

.kpc-project__grid {
  display: grid;
  grid-template-columns: 658fr 470fr; /* gallery | info (RTL: gallery on the right) */
  gap: 16px;
  align-items: start;
}
.kpc-project__grid--single {
  grid-template-columns: minmax(0, 470px);
}
.kpc-project__col {
  min-width: 0;
}
.kpc-project__box {
  height: 352px;
  margin: 0;
  border: 3px solid #042654;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
}

/* gallery */
.kpc-project__gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  grid-auto-rows: 90px;
  gap: 10px;
  align-content: start;
  padding: 24px;
  overflow-y: auto;
  scrollbar-width: thin;
}
.kpc-project__thumb {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: #e9edf2;
}
.kpc-project__thumb:nth-child(5n + 2),
.kpc-project__thumb:nth-child(5n + 4) {
  grid-row: span 2; /* a little rhythm, like the design */
}
.kpc-project__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.kpc-project__thumb:hover img,
.kpc-project__thumb:focus-visible img {
  transform: scale(1.06);
}

/* info table */
.kpc-project__info {
  display: flex;
  flex-direction: column;
  background: linear-gradient(90deg, #ffffff 0, #ffffff calc(100% - 183px), #042654 calc(100% - 183px));
}
.kpc-project__row {
  display: grid;
  grid-template-columns: 183px 1fr;
  align-items: center;
  flex: 1 1 0;
  min-height: 0;
}
.kpc-project__row dt {
  padding: 0 24px;
  color: #ffffff;
  font-size: 18px;
  font-weight: 800;
}
.kpc-project__row dd {
  margin: 0;
  padding: 0 24px;
  color: #424b57;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
}

/* home page project cards are links to the project page */
.finished-projects-slider .project-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.finished-projects-slider .project-card-link:focus-visible {
  outline: 2px solid #bdbfc1;
  outline-offset: 2px;
}

/* =========================================================
   Employers table (page-employers.php / [kpc_employers])
   ========================================================= */
.kpc-employers-section {
  padding: 64px 0 80px;
}
html body .kpc-employers-section__title {
  margin: 0 0 40px;
  color: #031d41;
  font-size: 24px;
  font-weight: 800;
  text-align: center;
}
.kpc-employers-section__intro {
  margin-bottom: 32px;
}

.kpc-employers {
  --kpc-emp-cols: 38px 260px minmax(0, 1fr) minmax(0, 1.25fr);
}
.kpc-employers__head,
.kpc-employers__row {
  display: grid;
  grid-template-columns: var(--kpc-emp-cols);
  align-items: center;
}
.kpc-employers__head {
  min-height: 58px;
  margin-bottom: 16px;
  padding: 0 16px;
  border-radius: 16px;
  background: #103154;
  color: #ffffff;
  font-size: 18px;
  font-weight: 800;
}
.kpc-employers__head::before {
  content: ""; /* the number column */
}
.kpc-employers__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 16px;
}
.kpc-employers__row {
  min-height: 112px;
  overflow: hidden;
  border-radius: 8px;
  background: #e6e6e6;
}
.kpc-employers__num {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  background: #042654;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
}
.kpc-employers__cell {
  padding: 6px 24px;
}
.kpc-employers__row .kpc-employers__cell--logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.kpc-employers__cell--logo img {
  display: block;
  width: 200px;
  max-width: 100%;
  height: 100px;
  object-fit: contain;
}
.kpc-employers__row .kpc-employers__cell--name {
  color: #031d41;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.7;
}
.kpc-employers__row .kpc-employers__cell--regions {
  color: #113d6c;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.9;
}
.kpc-employers__label {
  display: none; /* shown on phones, where the table header is hidden */
}
.kpc-employers__empty {
  text-align: center;
}

/* =========================================================
   Shared list pages (page-awards.php, page-factories.php)
   ========================================================= */
.kpc-list-section {
  padding: 64px 0 80px;
}
html body .kpc-list-section__title {
  margin: 0 0 40px;
  color: #031d41;
  font-size: 24px;
  font-weight: 800;
  text-align: center;
}
.kpc-list-section__intro {
  margin-bottom: 32px;
}

/* =========================================================
   Awards & certificates grid ([kpc_awards])
   ========================================================= */
.kpc-awards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.kpc-awards__item {
  display: flex;
  margin: 0;
}
.kpc-award {
  display: flex;
  flex-direction: column;
  width: 100%;
  overflow: hidden;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
  color: #031d41;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.kpc-award:hover,
.kpc-award:focus-visible {
  transform: translateY(-4px);
  border-color: #b9cce0;
  box-shadow: 0 12px 28px rgba(4, 38, 84, 0.14);
  color: #031d41;
}
.kpc-award:focus-visible {
  outline: 2px solid #004888;
  outline-offset: 3px;
}
.kpc-award__media {
  position: relative;
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #f1f5fa;
}
.kpc-award__media img {
  position: absolute;
  inset: var(--kpc-award-pad, 16px);
  display: block;
  width: calc(100% - 2 * var(--kpc-award-pad, 16px));
  height: calc(100% - 2 * var(--kpc-award-pad, 16px));
  object-fit: contain;
  filter: drop-shadow(0 4px 10px rgba(4, 38, 84, 0.15));
}
.kpc-award__zoom {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(4, 38, 84, 0.45);
  color: #ffffff;
  font-size: 26px;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.kpc-award:hover .kpc-award__zoom,
.kpc-award:focus-visible .kpc-award__zoom {
  opacity: 1;
}
.kpc-award__title {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  min-height: 72px;
  padding: 14px 16px;
  border-top: 3px solid #042654;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.8;
  text-align: center;
}
.kpc-awards__empty,
.kpc-sites__empty {
  text-align: center;
}

/* =========================================================
   Permanent sites & factories tree ([kpc_factories])
   Site box → region boxes → facility list, joined by lines.
   ========================================================= */
.kpc-sites {
  --kpc-site-line: #103154;
  --kpc-region-line: #06377b;
  --kpc-trunk: 40px;       /* site line, from the right edge */
  --kpc-branch: 56px;      /* site line → region box */
  --kpc-stem: 64px;        /* region box edge → region line */
  --kpc-bar: 64px;         /* region line → facility bar */
  --kpc-box-mid: 48px;     /* top padding + half the region box */
  display: flex;
  flex-direction: column;
  gap: 48px;
}
.kpc-site {
  margin: 0;
}
html body .kpc-site__title {
  display: inline-block;
  min-width: calc(var(--kpc-trunk) * 2);
  margin: 0;
  padding: 8px 16px;
  border-radius: 8px;
  background: #103154;
  color: #ffffff;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.6;
  text-align: center;
}
.kpc-site__regions {
  margin: 0 var(--kpc-trunk) 0 0;
  padding: 0;
  list-style: none;
}
.kpc-region {
  position: relative;
  margin: 0;
  padding: 24px var(--kpc-branch) 0 0;
}
/* trunk segment */
.kpc-region::before {
  content: "";
  position: absolute;
  top: 0;
  right: -1.5px;
  bottom: 0;
  border-right: 3px solid var(--kpc-site-line);
}
.kpc-region:last-child::before {
  bottom: auto;
  height: var(--kpc-box-mid);
}
/* branch to the region box */
.kpc-region::after {
  content: "";
  position: absolute;
  top: calc(var(--kpc-box-mid) - 1.5px);
  right: 0;
  width: var(--kpc-branch);
  border-top: 3px solid var(--kpc-site-line);
}
html body .kpc-region__name {
  display: inline-block;
  min-width: calc(var(--kpc-stem) * 2);
  margin: 0;
  padding: 8px 16px;
  border: 3px solid var(--kpc-region-line);
  border-radius: 4px;
  background: #ffffff;
  color: #06377b;
  font-size: 16px;
  font-weight: 700;
  line-height: 26px;
  text-align: center;
}
.kpc-region__body {
  position: relative;
  margin-right: var(--kpc-stem);
  padding-top: 16px;
}
/* stem from the region box down and over to the facility bar */
.kpc-region__body::before {
  content: "";
  position: absolute;
  top: 0;
  right: -1.5px;
  width: calc(var(--kpc-bar) + 1.5px);
  height: 32px;
  border-right: 3px solid var(--kpc-region-line);
  border-bottom: 3px solid var(--kpc-region-line);
}
.kpc-region__items {
  margin: 0 var(--kpc-bar) 0 0;
  padding: 4px 22px 4px 0;
  border-right: 6px solid var(--kpc-region-line);
  list-style: none;
}
.kpc-region__items li {
  position: relative;
  margin: 0;
  padding: 5px 18px 5px 0;
  color: #103154;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.9;
}
.kpc-region__items li::before {
  content: "";
  position: absolute;
  top: calc(5px + 0.95em - 3px);
  right: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

/* Phone numbers / e-mails in contact blocks: keep the RTL run so the
   FaNum font shows Persian digits, while the number itself stays in order. */
.contact-area .contact-info .info-content a[dir="ltr"],
.footer-area .contact-info a[dir="ltr"] {
  direction: rtl;
  unicode-bidi: isolate;
}

/* Project cards that open the single project page (projects archive & categories) */
.projects-section .project-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.projects-section .project-card-link:focus-visible {
  outline: 2px solid #004888;
  outline-offset: 3px;
}
.projects-section .project-card-link:focus-visible .overlay-content {
  opacity: 1;
}
.kpc-term-intro {
  padding-top: 48px;
  margin-bottom: -48px;
}
/* Touch screens have no hover: keep the project name visible on the card */
@media (hover: none) {
  .projects-section .project-card-link .overlay-content {
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 32px 16px 14px;
    opacity: 1;
    background: linear-gradient(to top, rgba(0, 30, 76, 0.9), rgba(0, 30, 76, 0));
  }
  .projects-section .project-card-link .overlay-content::before,
  .projects-section .project-card-link .overlay-content::after,
  .projects-section .project-card-link .overlay-content p {
    display: none;
  }
  .projects-section .project-card-link .overlay-content h3 {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
  }
}

/* Drawer search: icon centred on the (50px) field, text never runs under it */
html body .kpc-drawer__search input {
  padding-left: 48px !important;
}
.kpc-drawer__search button {
  top: 0;
  bottom: 0;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding: 0;
}
.kpc-drawer__search button i {
  display: block;
  line-height: 1;
}

/* =========================================================
   Home – latest news slider (blog-section.php)
   ========================================================= */
.blog-section.kpc-news .section-title {
  margin-bottom: 32px;
}
.kpc-news-slider .owl-stage-outer {
  padding: 8px 0 18px;
  margin: -8px 0 -18px;
}
.kpc-news-slider .owl-stage {
  display: flex;
}
.kpc-news-slider .owl-item {
  display: flex;
}
.kpc-news-card {
  display: flex;
  width: 100%;
}
.kpc-news-card__link {
  display: flex;
  flex-direction: column;
  width: 100%;
  overflow: hidden;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
  color: inherit;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.kpc-news-card__link:hover,
.kpc-news-card__link:focus-visible {
  transform: translateY(-4px);
  border-color: #b9cce0;
  box-shadow: 0 12px 28px rgba(4, 38, 84, 0.12);
  color: inherit;
}
.kpc-news-card__link:focus-visible {
  outline: 2px solid #004888;
  outline-offset: 2px;
}
.kpc-news-card__media {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #e6edf5;
}
.kpc-news-slider .kpc-news-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.kpc-news-card__link:hover .kpc-news-card__media img {
  transform: scale(1.05);
}
.kpc-news-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  padding: 16px 20px 20px;
}
.kpc-news-card__date {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #5b6b7f;
  font-size: 13px;
  font-weight: 600;
}
html body .kpc-news-card__title {
  display: -webkit-box;
  min-height: 3.6em;
  margin: 0;
  overflow: hidden;
  color: #031d41;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: color 0.2s ease;
}
.kpc-news-card__link:hover .kpc-news-card__title {
  color: #004888;
}
.kpc-news-card__more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 4px;
  color: #004888;
  font-size: 14px;
  font-weight: 700;
}
.kpc-news-card__more i {
  font-size: 12px;
  transition: transform 0.2s ease;
}
.kpc-news-card__link:hover .kpc-news-card__more i {
  transform: translateX(-4px);
}
.blog-section.kpc-news .kpc-news-slider .owl-nav {
  position: static;
  margin: 24px 0 0;
  text-align: center;
}
.blog-section.kpc-news .cta-btn {
  margin-top: 32px;
}

/* =========================================================
   Machinery & project cards on touch screens (no hover):
   keep the name visible on a caption bar at the bottom
   ========================================================= */
@media (hover: none) {
  .instrument-section .instrument-slider .slider-item .overlay-content,
  .finished-projects-section .finished-projects-slider .slider-item .overlay-content {
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 36px 16px 14px;
    opacity: 1;
    background: linear-gradient(to top, rgba(0, 30, 76, 0.92), rgba(0, 30, 76, 0));
  }
  .instrument-section .instrument-slider .slider-item .overlay-content::before,
  .instrument-section .instrument-slider .slider-item .overlay-content::after,
  .finished-projects-section .finished-projects-slider .slider-item .overlay-content::before,
  .finished-projects-section .finished-projects-slider .slider-item .overlay-content::after {
    display: none;
  }
  html body .instrument-section .instrument-slider .slider-item .overlay-content h3,
  html body .finished-projects-section .finished-projects-slider .slider-item .overlay-content h3 {
    margin: 0;
    padding: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.7;
    text-align: right;
  }
  .instrument-section .instrument-slider .slider-item:hover img,
  .finished-projects-section .finished-projects-slider .slider-item:hover img {
    transform: none;
  }
}

/* Home hero text: readable on every slide, phones included */
.kpc-hero .fixed-text {
  text-shadow: 0 2px 14px rgba(0, 30, 76, 0.55);
}

/* Recent projects slider on the services archive (archive-services.php):
   same 4:3 cards as the home page, arrows under the cards */
.amazing-projects-section .row.no-wrap {
  align-items: center;
}
.amazing-projects-slider .slider-item {
  position: relative;
  display: block;
  color: inherit;
}
.amazing-projects-slider .slider-item .image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.amazing-projects-slider .slider-item .overlay-content {
  background: rgba(0, 30, 76, 0.7);
}
html body .amazing-projects-slider .slider-item .overlay-content h3 {
  margin: 0;
  padding: 16px;
  color: #ffffff;
  text-align: center;
}
.amazing-projects-slider .owl-nav {
  position: static;
  margin-top: 16px;
  text-align: center;
}
@media (hover: none) {
  .amazing-projects-slider .slider-item .overlay-content {
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 36px 16px 14px;
    opacity: 1;
    background: linear-gradient(to top, rgba(0, 30, 76, 0.92), rgba(0, 30, 76, 0));
  }
  .amazing-projects-slider .slider-item .overlay-content::before {
    display: none;
  }
  html body .amazing-projects-slider .slider-item .overlay-content h3 {
    padding: 0;
    font-size: 16px;
    text-align: right;
  }
}

/* =========================================================
   Certificates & ratings – groups with headings ([kpc_certificates])
   ========================================================= */
.kpc-award-groups {
  display: flex;
  flex-direction: column;
  gap: 48px;
}
html body .kpc-award-group__title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 24px;
  color: #001e4c;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.6;
}
.kpc-award-group__title::before {
  content: "";
  flex: 0 0 6px;
  height: 28px;
  border-radius: 3px;
  background: #004888;
}
.kpc-award-group__title::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: #d9e2ee;
}

/* =========================================================
   Ongoing projects ([kpc_ongoing_projects])
   ========================================================= */
.kpc-ongoing {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 386px));
  justify-content: center;
  gap: 24px;
}
.kpc-ongoing-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px 10px 12px;
  border: 1px solid #bfcde3;
  border-radius: 16px;
  background: #f0f3f6;
  color: #0a2c50;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.kpc-ongoing-card:hover,
.kpc-ongoing-card:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(10, 44, 80, 0.12);
  color: #0a2c50;
}
.kpc-ongoing-card:focus-visible {
  outline: 2px solid #004888;
  outline-offset: 3px;
}
.kpc-ongoing-card__media {
  display: block;
  width: 100%;
  aspect-ratio: 366 / 312;
  overflow: hidden;
  border-radius: 8px;
  background: #dfe6ef;
}
.kpc-ongoing-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.kpc-ongoing-card:hover .kpc-ongoing-card__media img {
  transform: scale(1.04);
}
.kpc-ongoing-card__title {
  margin-top: 10px;
  color: #0a2c50;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.7;
  text-align: center;
}
.kpc-ongoing-card__cat {
  color: #0a2c50;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
}
.kpc-ongoing-card__progress {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 25px;
  margin-top: 8px;
  padding: 2px 10px;
  border-radius: 8px;
  background: #ffffff;
}
.kpc-ongoing-card__label {
  flex: 0 0 auto;
  color: #0a2c50;
  font-size: 13px;
  font-weight: 400;
  white-space: nowrap;
}
.kpc-ongoing-card__label b {
  font-weight: 800;
}
.kpc-ongoing-card__bar {
  position: relative;
  flex: 1 1 auto;
  height: 4px;
  border-radius: 100px;
  background: #d9d9d9;
}
/* fill starts on the left like the design (progress grows to the right) */
.kpc-ongoing-card__fill {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  max-width: 100%;
  border-radius: 100px;
  background: #06377b;
}
.kpc-ongoing-card__fill::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -5px;
  width: 10px;
  height: 10px;
  border: 2px solid #ffffff;
  border-radius: 100%;
  background: #06377b;
  transform: translateY(-50%);
}
.kpc-ongoing__empty {
  text-align: center;
}
.kpc-ongoing-section .pagination {
  margin-top: 40px;
}

/* =========================================================
   Knowledge-based page (page-knowledge-based.php)
   ========================================================= */
.kpc-kb {
  padding: 64px 0 80px;
}
.kpc-kb > section + section {
  margin-top: 24px;
}
html body .kpc-kb__box {
  display: flex;
  align-items: center;
  min-height: 116px;
  margin: 0 0 24px;
  padding: 20px 32px;
  border: 0;
  border-right: 4px solid #001e4c;
  border-left: 4px solid #001e4c;
  border-radius: 16px;
  color: #001e4c;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.7;
}
html body .kpc-kb__box--quote {
  margin: 0;
  padding: 24px 40px;
  background: transparent;
  font-style: normal;
}
.kpc-kb__intro .kpc-kb__text p {
  margin: 0 0 12px;
  color: #001e4c;
  font-size: 16px;
  font-weight: 400;
  line-height: 28.8px;
  text-align: justify;
}
.kpc-kb__feature {
  padding: 56px 0;
}
.kpc-kb__feature--light {
  background: #f0f3f6;
}
.kpc-kb__feature--dark {
  background: #001e4c;
}
.kpc-kb__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
}
/* RTL: text on the right, picture on the left; the dark section mirrors it */
.kpc-kb__row--reverse .kpc-kb__body {
  order: 2;
}
.kpc-kb__media {
  text-align: center;
}
.kpc-kb__media img {
  display: inline-block;
  width: 100%;
  max-width: 453px;
  height: auto;
  border-radius: 16px;
}
html body .kpc-kb__title {
  margin: 0 0 16px;
  color: #001e4c;
  font-size: 20px;
  font-weight: 800;
  line-height: 28px;
}
.kpc-kb__feature .kpc-kb__text p {
  margin: 0 0 12px;
  color: #000000;
  font-size: 16px;
  font-weight: 600;
  line-height: 28.8px;
  text-align: justify;
}
html body .kpc-kb__feature--dark .kpc-kb__title {
  color: #ebeff4;
}
.kpc-kb__feature--dark .kpc-kb__text p {
  color: #ffffff;
}

/* =========================================================
   Single news / multimedia / article (template-parts/single-entry.php)
   ========================================================= */
.kpc-entry {
  padding: 64px 0 80px;
}
.kpc-entry__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 348px;
  align-items: start;
  gap: 56px;
}
html body .kpc-entry__title {
  margin: 0;
  color: #001e4c;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.6;
}
.kpc-entry__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  margin: 6px 0 24px;
  color: #3b4a8a;
  font-size: 13px;
  font-weight: 400;
}
.kpc-entry__sep {
  color: #8a94b8;
}
.kpc-entry__video,
.kpc-entry__picture {
  margin: 0 0 32px;
  overflow: hidden;
  border-radius: 16px;
  background: #d8d3d4;
}
.kpc-entry__video video,
.kpc-entry__video iframe,
.kpc-entry__picture img {
  display: block;
  width: 100%;
  border: 0;
}
.kpc-entry__video video,
.kpc-entry__video iframe {
  aspect-ratio: 16 / 9;
  height: auto;
}
.kpc-entry__picture img {
  height: auto;
  max-height: 520px;
  object-fit: cover;
}
html body .kpc-entry__summary-title {
  margin: 0 0 16px;
  color: #001e4c;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.6;
}
.kpc-entry__content {
  color: #1a1a1a;
  font-size: 17px;
  line-height: 2;
  text-align: justify;
}
.kpc-entry__content p {
  margin: 0 0 16px;
  color: inherit;
}
.kpc-entry__content img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}
.kpc-entry__download {
  display: flex;
  justify-content: center;
  margin-top: 48px;
}
.kpc-entry__download-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 300px;
  padding: 14px 32px;
  border-radius: 12px;
  background: #001e4c;
  box-shadow: 0 0 0 8px #ffffff, 0 0 0 10px #001e4c;
  color: #ffffff;
  font-size: 20px;
  font-weight: 800;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.kpc-entry__download-btn:hover,
.kpc-entry__download-btn:focus-visible {
  background: #004888;
  color: #ffffff;
}
/* sidebar */
.kpc-entry__side {
  padding-top: 92px; /* lines the box up with the text, as in the design */
}
html body .kpc-entry__side-title {
  margin: 0 0 16px;
  color: #001e4c;
  font-size: 22px;
  font-weight: 800;
}
.kpc-latest {
  margin: 0;
  padding: 8px 28px;
  border: 3px solid #cfcfcf;
  border-radius: 16px;
  list-style: none;
}
.kpc-latest__item + .kpc-latest__item {
  border-top: 3px solid #cfcfcf;
}
.kpc-latest__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  color: inherit;
  text-decoration: none;
}
.kpc-latest__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.kpc-latest__title {
  display: -webkit-box;
  overflow: hidden;
  color: #1f2a7a;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.7;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: color 0.2s ease;
}
.kpc-latest__link:hover .kpc-latest__title {
  color: #004888;
}
.kpc-latest__date {
  color: #9a9a9a;
  font-size: 13px;
}
.kpc-latest__thumb {
  flex: 0 0 80px;
  width: 80px;
  height: 80px;
  overflow: hidden;
  border-radius: 16px;
  background: #d9d9d9;
}
.kpc-latest__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* =========================================================
   Home – logo bands (بازوهای اجرایی / شرکای بین‌المللی / کارفرماها)
   ========================================================= */
.kpc-logo-band {
  padding: 56px 0;
  background: #001e4c;
}
html body .kpc-logo-band__title {
  margin: 0 0 32px;
  color: #ffffff;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.6;
  text-align: center;
}
.kpc-logo-band__list {
  --kpc-logos: var(--kpc-logos-m, 2);
}
.kpc-logo-band__list:not(.owl-loaded) {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.kpc-logo-band__list:not(.owl-loaded) .kpc-logo-band__item {
  flex: 0 0 calc(100% / var(--kpc-logos));
  max-width: calc(100% / var(--kpc-logos));
}
.kpc-logo-band__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
}
.kpc-logo-band__item a,
.kpc-logo-band__item span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
/* the logo grows / shrinks with the number of logos per row */
.kpc-logo-band__item img {
  display: block;
  width: min(78%, 190px) !important;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
  opacity: 0.92;
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.kpc-logo-band__item a:hover img,
.kpc-logo-band__item a:focus-visible img {
  opacity: 1;
  transform: scale(1.05);
}

/* =========================================================
   Home – fields of activity (زمینه‌های فعالیت)
   ========================================================= */
.kpc-activities {
  padding: 72px 0;
  background: #ffffff;
}
.kpc-activities__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
  margin-bottom: 40px;
}
html body .kpc-activities__title {
  margin: 0 0 16px;
  color: #001e4c;
  font-size: 24px;
  font-weight: 800;
}
.kpc-activities__text p {
  margin: 0;
  color: #24324a;
  font-size: 16px;
  line-height: 2;
  text-align: justify;
}
.kpc-activities__collage img {
  display: block;
  width: 100%;
  height: auto;
}
.kpc-activities__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 24px;
}
.kpc-activity {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: #001e4c;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.1);
  isolation: isolate;
  text-decoration: none;
}
/* rows of 3 tall cards and 2 wide cards (see kpc_activity_spans()) */
.kpc-activity--span-2 {
  grid-column: span 2;
  aspect-ratio: 289 / 343;
}
.kpc-activity--span-3 {
  grid-column: span 3;
  aspect-ratio: 456 / 260;
}
.kpc-activity--span-6 {
  grid-column: span 6;
  aspect-ratio: 936 / 300;
}
.kpc-activity img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
/* brand tint over the photo, lighter on hover */
.kpc-activity::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(0, 30, 76, 0.25) 0%, rgba(0, 30, 76, 0.45) 55%, rgba(0, 30, 76, 0.85) 100%);
  transition: opacity 0.3s ease;
}
.kpc-activity__title {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 10px 16px;
  background: rgba(0, 30, 76, 0.72);
  backdrop-filter: blur(2px);
  color: #ffffff;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.7;
  text-align: center;
  transition: background-color 0.3s ease;
}
.kpc-activity:hover img,
.kpc-activity:focus-visible img {
  transform: scale(1.06);
}
.kpc-activity:hover::before,
.kpc-activity:focus-visible::before {
  opacity: 0.7;
}
.kpc-activity:hover .kpc-activity__title,
.kpc-activity:focus-visible .kpc-activity__title {
  background: rgba(0, 72, 136, 0.9);
}
.kpc-activity:focus-visible {
  outline: 3px solid #004888;
  outline-offset: 3px;
}

/* news card: date + category on one line */
.kpc-news-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 6px 12px;
}
.kpc-news-card__cat {
  padding: 2px 10px;
  border-radius: 100px;
  background: #e6edf5;
  color: #004888;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
}

/* Projects archive filter: «همه پروژه‌ها / پروژه‌های در حال انجام» */
.kpc-project-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 0 32px;
}
.kpc-project-tabs-wrap {
  padding-top: 64px;
}
.kpc-project-tabs-wrap + .projects-section {
  padding-top: 0 !important;
}
.kpc-project-tabs__tab {
  padding: 8px 20px;
  border: 1px solid #bfcde3;
  border-radius: 100px;
  background: #ffffff;
  color: #0a2c50;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.kpc-project-tabs__tab:hover {
  border-color: #004888;
  color: #004888;
}
.kpc-project-tabs__tab.is-active {
  border-color: #004888;
  background: #004888;
  color: #ffffff;
}

/* Single project: ongoing badge + progress row */
.kpc-project-hero__badge {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 14px;
  border-radius: 100px;
  background: #ffffff;
  color: #06377b;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.kpc-project-hero__badge:hover {
  background: #e6edf5;
  color: #06377b;
}
.kpc-project__row--progress dd {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #0a2c50;
}
.kpc-project__row--progress dd b {
  flex: 0 0 auto;
  font-weight: 800;
}
.kpc-project__row--progress .kpc-ongoing-card__bar {
  flex: 1 1 auto;
}

/* =========================================================
   Media archives (template-parts/media-archive.php)
   ========================================================= */
.kpc-media {
  padding: 64px 0 80px;
}
.kpc-media__intro {
  max-width: 820px;
  margin: 0 auto 32px;
  text-align: center;
}
.kpc-media__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.kpc-media-card {
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.kpc-media-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(4, 38, 84, 0.12);
}
.kpc-media-card__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #e6edf5;
}
.kpc-media-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.kpc-media-card:hover .kpc-media-card__media img {
  transform: scale(1.05);
}
.kpc-media-card__play {
  position: absolute;
  top: 50%;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: rgba(0, 30, 76, 0.75);
  color: #ffffff;
  font-size: 18px;
  transform: translate(-50%, -50%);
}
.kpc-media-card .kpc-news-card__title a {
  color: inherit;
}
.kpc-media-card .kpc-news-card__title a:hover {
  color: #004888;
}
.kpc-media-card__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 4px;
}
.kpc-media-card__download {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 8px;
  background: #004888;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
}
.kpc-media-card__download:hover {
  background: #042654;
  color: #ffffff;
}
.kpc-media__empty {
  text-align: center;
}
.kpc-media .pagination {
  margin-top: 40px;
}

/* =========================================================
   Archive cards (projects, project categories, machinery):
   title always under the picture, like the media cards
   ========================================================= */
.projects-section .projects-item {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.projects-section .projects-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(4, 38, 84, 0.12);
}
.projects-section .projects-item .image {
  overflow: hidden;
}
html body .projects-section .projects-item .overlay-content,
html body .projects-section .project-card-link .overlay-content {
  position: static;
  width: 100%;
  height: auto;
  min-height: 64px;
  padding: 14px 16px;
  opacity: 1;
  background: #ffffff;
  text-align: center;
}
.projects-section .projects-item .overlay-content::before,
.projects-section .projects-item .overlay-content::after,
.projects-section .projects-item .overlay-content p {
  display: none;
}
html body .projects-section .projects-item .overlay-content h3 {
  margin: 0;
  padding: 0;
  color: #031d41;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.7;
  text-align: center;
  transition: color 0.2s ease;
}
.projects-section .projects-item:hover .overlay-content h3 {
  color: #004888;
}
.projects-section .projects-item:hover img {
  transform: scale(1.05);
}

/* =========================================================
   Branches & offices (page-branches.php / [kpc_branches])
   ========================================================= */
.kpc-branches {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.kpc-branch {
  display: flex;
  flex-direction: column;
  padding: 24px;
  border: 1px solid #e6edf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(4, 38, 84, 0.06);
}
.kpc-branch--head {
  grid-column: 1 / -1;
  border-color: #b9cce0;
  border-right: 4px solid #004888;
}
.kpc-branch--head .kpc-branch__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 32px;
}
.kpc-branch__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e6edf5;
}
.kpc-branch__type {
  padding: 2px 10px;
  border-radius: 100px;
  background: #e6edf5;
  color: #004888;
  font-size: 12px;
  font-weight: 800;
}
.kpc-branch--head .kpc-branch__type {
  background: #004888;
  color: #ffffff;
}
html body .kpc-branch__title {
  flex: 1 0 100%;
  margin: 0;
  color: #031d41;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.6;
}
.kpc-branch__place {
  color: #5b6b7f;
  font-size: 14px;
  font-weight: 600;
}
.kpc-branch__list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.kpc-branch__list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  color: #24324a;
  font-size: 15px;
  line-height: 1.8;
}
.kpc-branch__icon {
  display: inline-flex;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #004888;
  color: #ffffff;
  font-size: 14px;
}
.kpc-branch__list a {
  color: #031d41;
  font-weight: 700;
}
.kpc-branch__list a:hover {
  color: #004888;
}
.kpc-branch__phones {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 16px;
}
.kpc-branch__phones a,
.kpc-branch__list a[dir="ltr"] {
  direction: rtl;
  unicode-bidi: isolate;
}
.kpc-branch__map {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  align-self: flex-start;
  margin-top: auto;
  padding: 8px 18px;
  border: 1px solid #004888;
  border-radius: 8px;
  color: #004888;
  font-size: 14px;
  font-weight: 700;
}
.kpc-branch__list + .kpc-branch__map {
  margin-top: 20px;
}
.kpc-branch__map:hover {
  background: #004888;
  color: #ffffff;
}
.kpc-branches__empty {
  text-align: center;
}

/* International partners: landscape certificates → wider cards */
.kpc-awards--intl_partners {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.kpc-awards--intl_partners .kpc-award__media {
  aspect-ratio: 4 / 3;
}

/* Project cards: category under the title (home slider, archives) */
.kpc-project-cat {
  display: block;
  margin-top: 4px;
  color: #5b6b7f;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.7;
  text-align: center;
}
.projects-section .projects-item .overlay-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
/* home slider: title + category sit on the dark overlay */
.finished-projects-slider .overlay-content {
  flex-direction: column;
}
.finished-projects-slider .kpc-project-cat {
  position: relative;
  z-index: 2;
  margin-top: -20px;
  color: #dbe7f5;
}
@media (hover: none) {
  .finished-projects-slider .overlay-content {
    align-items: flex-start;
  }
  .finished-projects-slider .kpc-project-cat {
    margin-top: 2px;
    text-align: right;
  }
}

/* =========================================================
   Radius system – one scale for the whole site
     --kpc-radius     8px   buttons, fields, cards, images, menus
     --kpc-radius-lg  16px  large framed blocks (as in the designs)
     --kpc-radius-pill      labels / badges only (not clickable buttons)
     50%                    round icons / dots
   ========================================================= */
:root {
  --kpc-radius-lg: 16px;
  --kpc-radius-pill: 100px;
}
html body .primary-btn,
html body .pagination .page-numbers,
html body .kpc-nav .navbar .navbar-nav .nav-item .dropdown-menu,
html body .kpc-nav .navbar .side-option .item .language .menu,
html body .language .menu,
html body .bg-head-service,
html body .best-service-section .service-item-single,
html body .map-section .map-content .map-pin .pin-content,
html body .faq-section .panel-group .panel,
html body .authentication-section .authentication-form,
html body .authentication-form,
html body .error-area .error-box,
html body .quote-section .contact-form .nice-select .list,
html body .cost-section .cost-form .form-group .nice-select .list,
html body .cost-section .cost-form .cta-btn .submit-btn,
html body .comingsoon-section .comingsoon-box #timer div,
html body .project-gallery-item img,
html body .kpc-file,
html body .kpc-mobile-actions__btn,
html body .kpc-drawer__search input,
html body .kpc-project__box,
html body .kpc-region__name,
html body .kpc-entry__content img,
html body .kpc-entry__download-btn,
html body .owl-carousel .owl-nav button[class*=owl-],
html body .custom-owl-nav button,
html body .go-top,
html body .social-link a {
  border-radius: var(--kpc-radius, 8px) !important;
}
html body .kpc-file .kpc-file__btn {
  border-radius: calc(var(--kpc-radius, 8px) - 2px) !important;
}
html body .cost-section .cost-form .form-group .range-slider {
  border-radius: var(--kpc-radius-pill) !important;
}
/* every button looks the same: tabs and drawer buttons too (pills = labels only) */
html body .kpc-project-tabs__tab,
html body .kpc-drawer__lang,
html body .kpc-drawer__theme {
  border-radius: var(--kpc-radius, 8px) !important;
}
html body .banner-three .owl-carousel .owl-dots .owl-dot {
  border-radius: 50% !important;
}
