/* ================================================== */

/* CyberGuard
/* created by designesia

@charset "utf-8";

Table of content:

* body
* header
  * subheader
* navigation
* content
* section
* footer
* sidebar
* contact
* elements
  * border
  * breadcrumb
  * button and link
  * columns
  * counter
  * divider
  * dropcap
  * heading
  * list
  * map
  * page heading
  * pagination
  * preloader
  * progress bar
  * social icons
  * spacer
  * tabs
  * testimonial
* plugins
* media query
*/

/* ================================================== */

@import url("https://fonts.googleapis.com/css2?family=Urbanist:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap");

/* ================================================== */

/* import fonts icon */

/* ================================================== */

@import url("../fonts/fontawesome4/css/font-awesome.css");
@import url("../fonts/fontawesome6/css/fontawesome.css");
@import url("../fonts/fontawesome6/css/brands.css");
@import url("../fonts/fontawesome6/css/solid.css");
@import url("../fonts/elegant_font/HTML_CSS/style.css");
@import url("../fonts/et-line-font/style.css");
@import url("../fonts/icofont/icofont.min.css");

* {
  /* body font */
  --body-font: "DM Sans", Helvetica, Arial, sans-serif;
  --body-font-size: 17px;
  --body-font-color: #797a8c;
  --body-font-color-dark: rgba(255, 255, 255, 0.75);
  --body-font-weight: 400;
  /* heading font */
  --heading-font: "Urbanist", Helvetica, Arial, sans-serif;
  --heading-font-weight: 600;
  --heading-font-color: #111013;
  --heading-text-transform: none;
  /* h1 */
  --h1-font-size: 60px;
  --h1-font-weight: 700;
  --h1-letter-spacing: -0.02em;
  --h1-line-height: 1.15em;
  --h1-margin-bottom: 20px;
  /* h2 */
  --h2-font: var(--heading-font);
  --h2-font-size: 48px;
  --h2-font-weight: var(--heading-font-weight);
  --h2-letter-spacing: -0.015em;
  --h2-line-height: 1.2em;
  --h2-margin-bottom: 15px;
  /* h3 */
  --h3-font-size: 26px;
  --h3-font-weight: var(--heading-font-weight);
  --h3-letter-spacing: 0;
  --h3-line-height: 1.5em;
  --h3-margin-bottom: 10px;
  /* h4 */
  --h4-font-size: 20px;
  --h4-font-weight: var(--heading-font-weight);
  --h4-letter-spacing: 0;
  --h4-line-height: 1.6em;
  --h4-margin-bottom: 10px;
  /* h5 */
  --h5-font-size: 18px;
  --h5-font-weight: var(--heading-font-weight);
  --h5-letter-spacing: 0;
  --h5-line-height: 1.6em;
  --h5-margin-bottom: 10px;
  /* h6 */
  --h6-font-size: 16px;
  --h6-font-weight: var(--heading-font-weight);
  --h6-letter-spacing: 0;
  --h6-line-height: 1.6em;
  --h6-margin-bottom: 10px;
  /* mainmenu */
  --mainmenu-font: var(--heading-font);
  --mainmenu-font-size: 17px;
  --mainmenu-font-weight: 600;
  --mainmenu-letter-spacing: 0;
  --mainmenu-text-transform: none;
  /* header logo */
  --logo-width: 240px;
  /* misc */
  --border-default: solid 1px rgba(30, 30, 30, 1);
  --bg-color-even: #e8e8e8;
  --bg-color-odd: #f4f4f4;
  --bg-light: #f3f3f4;
  --bg-dark-1: #1b1663;
  --bg-dark-2: #120d4f;
  --bg-dark-3: #1e1e1e;
  --bg-dark-1-rgb: 27, 22, 99;
  --bg-grey: #eeeeee;
  --bg-gradient-1:
    0deg, rgba(var(--primary-color-rgb), 0.1) 0%,
    rgba(var(--primary-color-rgb), 0.2) 100%;
  --swiper-theme-color: var(--primary-color);
  --rounded-1: 10px;
  --border-color: #bbbbbb;
  --container-max-width: 1240px;
  /* button */
  --btn-color: #ffffff;
  --btn-font-family: var(--body-font);
  --btn-font-size: 15px;
  --btn-font-weight: 600;
  --btn-letter-spacing: 0;
  --btn-padding: 6px 20px;
  --btn-rounded: 8px;
  --btn-text-decoration: none;
  --btn-text-transform: none;
}

/* base background color */
.bg-color {
  background: linear-gradient(var(--primary-gradient));
}
.bg-light {
  background: var(--bg-light) !important;
}
.bg-dark,
.bg-dark-1 {
  background-color: var(--bg-dark-1) !important;
}
.bg-dark-2 {
  background-color: var(--bg-dark-2) !important;
}
.bg-dark-3 {
  background-color: var(--bg-dark-3) !important;
}
.bg-grey {
  background-color: var(--bg-grey) !important;
}
.bg-gradient-1 {
  background: -moz-linear-gradient(var(--bg-gradient-1)) !important;
  background: -webkit-linear-gradient(var(--bg-gradient-1)) !important;
  background: linear-gradient(var(--bg-gradient-1)) !important;
}
.bg-dark-gradient {
  background: linear-gradient(0deg, var(--bg-dark-3) 0%, var(--bg-dark-2) 100%);
}

/* base color */
.id-color {
  color: var(--primary-color);
}
.rounded-1 {
  border-radius: var(--rounded-1) !important;
  -moz-border-radius: var(--rounded-1) !important;
  -webkit-border-radius: var(--rounded-1) !important;
}
.alt-font-1 {
  font-family: var(--alt-font-1);
}

/* ================================================== */

/* body */

/* ================================================== */

html {
  overflow-x: hidden;
  padding: 0;
  margin: 0;
}

body {
  overflow-x: none;
  font-family: var(--body-font);
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  color: var(--body-font-color);
  padding: 0;
  line-height: 1.9em;
  word-spacing: 0px;
}

body.dark-scheme {
  color: var(--body-font-color-dark);
  background: var(--bg-dark-1);
}

a,
a:hover {
  color: var(--body-font-color);
  text-decoration: none;
  outline: none;
}

.dark-scheme a,
.dark-scheme a:hover,
.text-light a,
.text-light a:hover {
  color: var(--body-font-color-dark);
  text-decoration: none;
  outline: none;
}

/* ================================================== */

/*  header  */

/* ================================================== */

header {
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 1001;
  background: rgba(var(--bg-dark-1-rgb), 0.5);
  -webkit-backdrop-filter: blur(10px);
  -o-backdrop-filter: blur(10px);
  -moz-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  margin: 0;
}

header.header-s1 {
  top: 0;
}

header.header-bg {
  background: rgba(0, 0, 0, 0.5);
}

header.transparent {
  background: none;
}

body:not(.side-layout)
  header:not(.smaller):not(.header-mobile).header-light.transparent {
  background: rgba(255, 255, 255, 0);
}

header.autoshow {
  top: -120px;
  height: 70px !important;
}

header.autoshow.scrollOn,
header.autoshow.scrollOff {
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  -moz-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  outline: none;
}

header.autoshow.scrollOn {
  top: 0;
}

header.autoshow.scrollOff {
  top: -120px;
}

header div#logo {
  color: white;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

/* header .logo-2 {
  display: none;
} */

/* header .logo-scroll {
  display: none;
} */

header .logo,
header .logo-2 {
  font-family: var(--body-font);
  color: #fff;
  font-size: 40px;
  font-weight: 300;
}

.logo img {
  height: 55px;
}

#header .container {
  padding: 10px;
}

header .logo-2 {
  color: #333;
}

header.header-full nav {
  float: left;
}

header nav a {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

header nav a:hover {
  color: #555;
}

header.smaller #mainmenu ul ul {
  top: 0px;
}

header.smaller {
  position: fixed;
  top: 0px;
  background: rgba(var(--bg-dark-1-rgb), 0.5);
  -webkit-backdrop-filter: blur(10px);
  -o-backdrop-filter: blur(10px);
  -moz-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: none;
}

header.header-light.smaller {
  background: rgba(255, 255, 255, 1);
}

.scroll-down {
  margin-top: -90px;
}

.scroll-up {
  margin-top: 0;
}

header.header-center.scroll-down {
  margin-top: -175px;
}

header.header-center #logo-center {
  display: inline-block;
  padding-top: 40px;
}

header.header-center #mainmenu {
  display: inline-block;
}

header.header-center {
  text-align: center;
}

/* header.header-center #logo{
  display: none;
} */

header.smaller div#logo,
header.s2 div#logo {
}

/* header.smaller .logo-init {
  display: none;
} */

header.smaller #topbar {
  margin-top: -42px;
  overflow: hidden;
}

header.smaller #topbar.topbar-dark {
  background: rgba(34, 34, 34, 0.05);
}

header.smaller #topbar.topbar-dark a {
  color: #333333;
}

/* header .logo-mobile {
  display: none;
} */

header.smaller.scroll-light {
  background: #ffffff;
}

/* header.scroll-light .logo-scroll{
  display: none;
}

header.smaller.scroll-light .logo-main{
  display: none;
} */

header.smaller.scroll-light .logo-scroll {
  display: block;
}

header.smaller.scroll-dark {
  background: var(--bg-color-even);
}

header.header-light .h-phone,
header.smaller.scroll-light .h-phone {
  color: #202020;
}

/* header:not(.header-light).smaller.scroll-light div#logo .logo {
  display: none;
} */

header.smaller.scroll-light div#logo .logo-2 {
  display: inline-block;
}

header.smaller.scroll-light div#logo .logo-scroll {
  display: inline-block;
}

/* header.smaller.header-light div#logo .logo {
  display: none;
} */

header.smaller.scroll-light .social-icons i {
  color: var(--heading-font-color);
}

header.smaller.scroll-light #mainmenu li a,
header.smaller.scroll-light #mainmenu li.has-child:after {
  color: var(--heading-font-color);
}

.logo-smaller div#logo {
  width: 150px;
  height: 30px;
  line-height: 65px;
  font-size: 30px;
}

.logo-smaller div#logo img {
  font-size: 30px;
}

div#logo img {
  max-width: var(--logo-width);
}

.logo-footer {
  max-width: var(--logo-width);
}
/* 
header.smaller div#logo .logo-1 {
  display: none;
} */

header.smaller div#logo .logo-2 {
  display: inline-block;
}

.logo-small {
  margin-bottom: 20px;
}

header.header-full {
  padding-left: 30px;
  padding-right: 30px;
}

header .header-row {
  text-align: center;
}

header .header-col {
  position: relative;
  height: 100%;
}

/* left col header */
header .header-col.left {
  float: left;
  padding: 0 30px 0 0;
  /* border-right:solid 1px rgba(255,255,255,.2); */
}

/* middle col header */
header .header-col.mid {
  float: right;
}

header .header-col.mid .social-icons {
  float: right;
  /* border-left:solid 1px rgba(255,255,255,.2); */
  padding: 0 30px 0 30px;
}

.header-col-right {
  text-align: right;
}
/* subheader */

#subheader {
  overflow: hidden;
  position: relative;
  padding: 130px 0 100px 0;
}

#subheader h3 {
  margin: 0;
}

#subheader.dark {
  background-color: #1a1c26;
}

#subheader.dark h1 {
  color: #fff;
}

.de-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(var(--bg-dark-1-rgb), 0.35);
}

.de-overlay-gradient {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(
    45deg,
    rgba(var(--primary-color-rgb), 0.8),
    rgba(var(--primary-color-rgb), 0.8)
  );
}

.de-overlay-gradient-2 {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(
    45deg,
    rgba(var(--primary-color-rgb), 0.8) 0%,
    rgba(var(--primary-color-rgb), 0) 100%
  );
}

.crumb-wrapper {
  position: absolute;
  padding: 0 20px;
  padding-bottom: 5px;
  bottom: 0;
  z-index: 1;
  text-align: center;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.1);
}

.crumb {
  font-size: 13px;
}

.crumb {
  display: inline-block;
  padding: 3px 10px;
  margin-top: 20px;
  line-height: 1.2em;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

.text-light .crumb a {
  color: rgba(255, 255, 255, 1);
}

#subheader.text-light .crumb {
  color: #fff;
}

#subheader .small-border-deco {
  display: block;
  margin: 0 auto;
  margin-top: 20px;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
}

#subheader .small-border-deco span {
  display: block;
  margin: 0 auto;
  height: 2px;
  width: 100px;
}

#subheader.dark h2,
#subheader.dark h4 {
  color: #fff;
}

#subheader.dark h2 {
  font-size: 48px;
}

#subheader.s2 {
  text-align: left;
  padding: 120px 0 20px;
  border: solid 1px #ddd;
  border-left: none;
  border-right: none;
}

.rtl #subheader.s2 {
  text-align: right;
}

#subheader.s2 h1,
#subheader.s2 .crumb {
  margin: 0;
  padding: 0;
}

#subheader.s2 .crumb {
  float: right;
  margin-top: 10px;
}

.rtl #subheader.s2 .crumb {
  float: left;
}

/* ================================================== */

/* navigation */

/* ================================================== */

#mainmenu {
  font-size: 13px;
  margin: 0 auto;
  padding: 0;
  float: none;
  counter-reset: my-awesome-counter;
}

#mainmenu ul {
  margin: 0px 0px;
  padding: 0px;
  height: 30px;
  background: #ffffff;
  color: var(--body-font-color);
}

#mainmenu ul:not(.mega) {
  border: solid 1px #dddddd;
}

.dark-scheme #mainmenu ul {
  background: var(--bg-dark-1);
  border: solid 1px rgba(255, 255, 255, 0.1);
}

#mainmenu li {
  margin: 0px 0px;
  padding: 0px 0px;
  float: left;
  display: inline;
  list-style: none;
  position: relative;
}

#mainmenu > li {
  margin-right: 30px;
}

#mainmenu > li:last-child {
  margin-right: 0;
}

#mainmenu > li {
  counter-increment: my-awesome-counter;
}

#mainmenu li a.new:before {
  content: "NEW";
  font-size: 12px;
  padding: 1px 4px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  margin-right: 5px;
  color: #ffffff;
  background: var(--primary-color);
}

header.smaller #mainmenu > li::before {
  transform: scale(0);
}

#mainmenu > li.has-child:after {
  font-family: FontAwesome;
  content: "\f078";
  padding-left: 5px;
  font-size: 8px;
  position: relative;
  top: -2px;
  color: rgba(255, 255, 255, 0.75);
}

.rtl #mainmenu li.has-child:after {
  padding-left: 15px;
}

.header-light #mainmenu li.has-child:after {
  color: rgba(0, 0, 0, 0.5);
}

#mainmenu > li > a {
  padding-right: 6px;
  font-family: var(--mainmenu-font);
  font-size: var(--mainmenu-font-size);
  font-weight: var(--mainmenu-font-weight);
  text-transform: var(--mainmenu-text-transform);
  letter-spacing: var(--mainmenu-letter-spacing);
}

#mainmenu li.has-child > a {
  padding-right: 0px;
}

#mainmenu a {
  position: relative;
  display: inline-block;
  padding-top: 5px;
  /* padding-bottom: 25px; */
  text-decoration: none;
  color: #ffffff;
  text-align: center;
  outline: none;
  /* margin-left: 54px; */
}

#mainmenu p {
  line-height: 1.8em;
  margin-bottom: 0;
}

header.header-light #mainmenu a {
  color: var(--heading-font-color);
}

#mainmenu a span:not(.badge) {
  position: relative;
  width: 0%;
  color: #ffffff;
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  line-height: 14px;
  border-bottom: solid 2px #ffffff;
}

#mainmenu li:hover a span:not(.badge) {
  width: 100%;
}

#mainmenu li li a span:not(.badge) {
  float: right;
  margin-top: 5px;
}

#mainmenu a.active span:not(.badge) {
  width: 100%;
  margin-left: 0%;
}

.header-light {
  background: #ffffff;
}

.header-light #mainmenu > li > a {
  color: var(--heading-font-color);
}

#mainmenu li li {
  font-family: var(--body-font);
  font-size: 14px;
}

#mainmenu li li:last-child {
  border-bottom: none;
}

#mainmenu li li a {
  padding: 5px 15px;
  border-top: none;
  color: #606060;
  width: 100%;
  border-left: none;
  text-align: left;
  font-weight: normal;
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  letter-spacing: 0;
}

#mainmenu li li a:hover {
  background: var(--primary-color);
}

#mainmenu li:last-child > a {
  border-bottom: none;
}

.dark-scheme #mainmenu li li a {
  color: #ffffff;
}

.rtl #mainmenu li li a {
  text-align: right;
}

#mainmenu li li a:hover {
  color: #111;
}

#mainmenu li li a:after {
  content: none;
}

/* #mainmenu li li a:hover,
#mainmenu ul li:hover>a {
  color: #fff;
} */

#mainmenu li a.active {
  color: var(--primary-color) !important;
}

#mainmenu li ul {
  width: 190px;
  height: auto;
  position: absolute;
  left: 0px;
  z-index: 10;
  visibility: hidden;
  opacity: 0;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

#mainmenu ul li b {
  background: #333;
  color: #ffffff;
  padding: 0 3px;
  padding-bottom: 3px;
  font-size: 10px;
  margin-right: 3px;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
}

#mainmenu li li {
  font-size: 14px;
  display: block;
  float: none;
  text-transform: none;
}

#mainmenu li:hover > ul {
  visibility: visible;
  opacity: 1;
  margin-top: 0px;
  width: 250px;
}

#mainmenu li ul ul:not(.ul-list) {
  top: 0px;
  margin-left: 188px;
}

#mainmenu select {
  padding: 10px;
  height: 36px;
  font-size: 14px;
  border: none;
  background: #ff4200;
  color: #eceff3;
}

#mainmenu select option {
  padding: 10px;
}

#mainmenu .btn-type {
  padding: 0;
  margin: 0;
}

#mainmenu .btn-type a {
  background: #eee;
  padding: 0;
  margin: 0;
}

#mainmenu > li ul.mega {
  position: fixed;
  left: 0;
  height: 0%;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
}

#mainmenu > li ul.mega .sb-menu {
  background: #fff;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border: solid 1px #dddddd;
}

.dark-scheme #mainmenu > li ul.mega .sb-menu {
  background: var(--bg-dark-1);
  border-color: rgba(255, 255, 255, 0.1);
}

#mainmenu li:hover ul.mega {
  visibility: visible;
  opacity: 1;
}

#mainmenu li ul.mega > li,
#mainmenu li ul.mega > li a {
  width: 100%;
}

#mainmenu li ul.mega li.title {
  padding: 0px 10px 15px 10px;
  text-align: left;
  color: #fff;
  font-weight: bold;
}

#mainmenu li ul.mega > li ul {
  position: static;
  visibility: visible;
  opacity: 1;
  left: 0;
  float: none;
  width: 100%;
}

#mainmenu ul.mega > li ul li {
  margin: 0;
  padding: 0;
}

#mainmenu ul.mega > li ul li:last-child {
  border-bottom: none;
}

#mainmenu li ul.mega .menu-content {
  background: #171a21;
  padding: 30px;
}

#mainmenu li ul.mega li.title {
  font-family: var(--main-font);
  padding: 0px;
  text-align: left;
  font-weight: bold;
  color: #586383;
}

#mainmenu ul.mega > li ul {
  border: none;
}

#mainmenu li ul.mega ul li a {
  background: none;
  padding: 2px 0;
}

#mainmenu li ul.mega ul li a:hover {
  color: #35404e;
}

header.header-mobile #mainmenu > li ul.mega {
  visibility: visible;
  opacity: 1;
}

header:not(.header-mobile) #mainmenu > li:hover ul.mega {
  height: auto;
}

/* menu toggle for mobile */

#menu-btn {
  display: none;
  float: right;
  width: 32px;
  height: 32px;
  padding: 4px;
  text-align: center;
  cursor: poInter;
  color: #fff;
  margin-top: 12px;
  margin-left: 20px;
}

#menu-btn:before {
  font-family: FontAwesome;
  content: "\f0c9";
  font-size: 20px;
}

#menu-btn.menu-open:before {
  content: "\f068";
}

.rtl #menu-btn {
  float: left;
}

#btn-extra {
  position: relative;
  margin-left: 20px;
  width: 24px;
  height: 12px;
  cursor: pointer;
}

.rtl #btn-extra {
  margin-left: 0;
  margin-right: 20px;
}

#btn-extra span {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  border-bottom: solid 2px #ffffff;
}

#btn-extra.img {
  width: 32px;
  height: 32px;
}

#btn-extra img {
  width: 100%;
}

header.header-light #btn-extra span {
  border-bottom: solid 2px var(--heading-font-color);
}

#btn-extra span:nth-child(2) {
  top: auto;
  bottom: 0;
  right: 0;
}

#btn-extra:hover span {
  width: 70%;
}

.header-light #btn-extra span {
  background: var(--bg-dark-1);
}

#extra-wrap {
  position: fixed;
  z-index: 1002;
  top: 0;
  right: -500px;
  width: 500px;
  height: 100%;
  overflow: hidden;
  background: rgba(var(--bg-dark-1-rgb), 0.75);
  -webkit-backdrop-filter: blur(10px);
  -o-backdrop-filter: blur(10px);
  -moz-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

#extra-wrap.open {
  right: 0;
}

#extra-content {
  padding: 50px;
  color: #ffffff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: -17px;
  overflow-y: scroll;
}

#btn-close {
  top: 50px;
  right: 50px;
  position: absolute;
  z-index: 1001;
  width: 26px;
  height: 26px;
  cursor: pointer;
}

.rtl #btn-close {
  right: auto;
  left: 50px;
}

#btn-close span {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 100%;
  height: 2px;
  background: #ffffff;
  transform: rotate(45deg);
}

#btn-close span:nth-child(2) {
  transform: rotate(-45deg);
}

header.header-mobile.header-center #logo {
  display: block;
}

/* header.header-mobile.header-center #logo-center{
  display: none;
} */

/* ================================================== */

/* content */

/* ================================================== */

#content {
  width: 100%;
  background: #ffffff;
  padding: 90px 0 90px 0;
  z-index: 100;
}

.dark-scheme #content {
  background: var(--bg-dark-1);
}

.dark-scheme #content {
  background: var(--bg-dark-1);
}

/* ================================================== */

/* section */

/* ================================================== */

section {
  padding: 100px 0 100px 0;
}

#content.zebra section:nth-child(even) {
  background: #fcfcfc;
}

section.no-bg,
#content.no-bg {
  background: none !important;
}

.bottom-rounded {
  overflow: hidden;
  border-radius: 0 0 100% 100%;
  -moz-border-radius: 0 0 100% 100%;
  -webkit-border-radius: 0 0 100% 100%;
  padding-bottom: 200px;
}

.rounded-up {
  border-radius: 60px 60px 0 0;
  -moz-border-radius: 60px 60px 0 0;
  -webkit-border-radius: 60px 60px 0 0;
}

.rounded-down {
  border-radius: 0 0 60px 60px;
  -moz-border-radius: 0 0 60px 60px;
  -webkit-border-radius: 0 0 60px 60px;
}

.rounded-up-down {
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
}

.rounded-10px {
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}

.rounded-20px {
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
}

.dark-scheme section {
  background: var(--bg-dark-1);
}

.no-bg {
  background: none !important;
}

.bgcolor-variation {
  background: #f6f6f6;
}

.overlay-gradient {
  width: 100%;
  height: 100%;
  z-index: 100;
  top: 0;
  padding: 90px 0 90px 0;
}

.de_light section {
  background: #ffffff;
}

.text_top {
  position: relative;
  z-index: 1000;
}

/* ================================================== */

/* footer */

/* ================================================== */

footer {
  color: var(--body-font-color-dark);
  background: var(--bg-dark-1);
  padding: 100px 0 0 0;
}

footer.footer-light {
  background: #ffffff;
}

footer.footer-light a {
  color: #5d6371;
}

footer p {
  line-height: 1.8em;
}

.dark-scheme footer a {
  color: var(--body-font-color-dark);
}

footer.footer-black {
  background: #222222;
}

footer h5,
.de_light footer h5 {
  color: #fff;
  font-size: 18px;
  text-transform: none;
}

footer a {
  color: var(--body-font-color-dark);
  text-decoration: none !important;
}

footer a:hover {
  color: var(--primary-color);
}

.subfooter {
  margin-top: 50px;
  border-top: solid 1px rgba(255, 255, 255, 0.1);
  padding: 20px 0 20px 0;
}

.footer-light .subfooter {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
}

header.header-light-transparent {
  background: rgba(255, 255, 255, 0.5);
}

header.header-solid.header-light #mainmenu > li > a {
  color: #555;
}

header.header-solid {
  background: #fff;
}

header.smaller.header-dark {
  background: #222222;
  border: none;
}

header.smaller.header-dark #mainmenu a {
  color: #fff;
}

.side-layout header.smaller.header-dark #mainmenu > li {
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
}

.side-layout header.smaller.header-dark #mainmenu > li:last-child {
  border-bottom: none;
}

header.header-mobile {
  position: fixed !important;
  background: var(--heading-font-color);
  top: 0;
  padding-bottom: 10px;
}

header.header-mobile .container {
  max-width: 100% !important;
  padding-left: 20px;
  padding-right: 20px;
}

.dark-scheme header.header-mobile {
  background: var(--bg-dark-1);
}

header.header-mobile.has-topbar .header-row,
header.header-mobile.has-topbar .header-col {
  margin-top: 10px;
}

header.header-mobile nav {
  float: none;
}

/* header.header-mobile .logo {
  display: none;
} */

header.header-mobile .logo-2 {
  display: inline-block;
}

header.header-mobile.header-light {
  background: #fff;
}

header.header-mobile #mainmenu ul {
  padding: 0;
}

header.header-solid.header-light {
  background: #fff;
}

header.header-light .logo-2 {
  display: inline-block;
}

/* topbar start here */

#topbar {
  z-index: 1000;
  width: 100%;
  overflow: hidden;
  line-height: 1.5em;
  top: 0;
  background: var(--bg-dark-);
}

#topbar.topbar-light {
  background: var(--bg-grey);
}

#topbar.topbar-light a,
#topbar.topbar-light .social-icons i {
  color: var(--heading-font-color);
}

#topbar.topbar-dark {
  background: rgba(34, 34, 34, 0.2);
}

#topbar a {
  text-decoration: none;
}

#topbar.text-light a {
  color: #ffffff;
}

.topbar-left,
.topbar-right {
  display: flex;
}

.topbar-right {
  float: right;
}

.topbar-solid {
  background: #ffffff;
}

.tb-light {
  background: #ffffff;
}

#topbar:not(.topbar-noborder) .topbar-right .topbar-widget {
  border-left: solid 1px rgba(255, 255, 255, 0.1);
}

#topbar:not(.topbar-noborder) .topbar-right span:last-child {
  border-right: solid 1px rgba(255, 255, 255, 0.1);
}

#topbar:not(.topbar-noborder) .topbar-light .topbar-right .topbar-widget {
  border-left: solid 1px #eee;
}

#topbar:not(.topbar-noborder) .topbar-light .topbar-right span:last-child {
  border-right: solid 1px #eee;
}

#topbar:not(.topbar-noborder) .tb-light .topbar-right .topbar-widget {
  border-left: solid 1px rgba(0, 0, 0, 0.1);
}

#topbar:not(.topbar-noborder) .tb-light .topbar-right span:last-child {
  border-right: solid 1px rgba(0, 0, 0, 0.1);
}

/* topbar left content */
.topbar-left {
  float: left;
}

#topbar:not(.topbar-noborder) .topbar-left .topbar-widget {
  border-right: solid 1px rgba(255, 255, 255, 0.1);
}

#topbar:not(.topbar-noborder) .topbar-light .topbar-left .topbar-widget {
  border-right: solid 1px #eee;
}

#topbar:not(.topbar-noborder) .topbar-left span:first-child {
  border-left: solid 1px rgba(255, 255, 255, 0.1);
}

#topbar:not(.topbar-noborder) .tb-light .topbar-left .topbar-widget {
  border-right: solid 1px rgba(0, 0, 0, 0.1);
}

#topbar:not(.topbar-noborder) .tb-light .topbar-left span:first-child {
  border-left: solid 1px rgba(0, 0, 0, 0.1);
}

.h-phone {
  text-align: center;
  display: inline-block;
  font-weight: 600;
  color: #ffffff;
  font-family: var(--heading-font);
  font-size: 16px;
  margin-right: 20px;
  line-height: 1.3em;
}

.h-phone span {
  display: block;
  font-size: 12.5px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
}

header.header-light .h-phone span {
  color: var(--body-font-color);
}

.h-phone i {
  display: inline-block;
  font-size: 32px;
  left: 0;
  top: 12px;
}

.menu_side_area .btn-line {
  display: inline-block;
}

/* topbar widget */
.topbar-widget {
  font-size: 14px;
  font-weight: 400;
  display: flex;
  padding: 8px 40px 8px 0;
}

.topbar-widget a {
  color: rgba(255, 255, 255, 0.85);
}

.topbar-widget img {
  width: 20px;
  margin-right: 10px;
}

.rtl .topbar-widget img {
  margin-right: 0;
  margin-left: 10px;
}

.topbar-widget.widget-text {
  padding-top: 6px;
}

.topbar-widget i {
  font-size: 16px;
  margin-top: 8px;
  margin-right: 10px;
  color: var(--primary-color);
}

.h-sub .topbar-widget {
  padding: 12px;
}

.topbar-widget:before {
  float: left;
  position: relative;
  font-family: "FontAwesome";
  font-size: 16px;
  margin-right: 10px;
}

.topbar-widget.tb-phone:before {
  content: "\f095";
}

.topbar-widget.tb-email:before {
  content: "\f003";
}

.topbar-widget.tb-opening-hours:before {
  content: "\f017";
}

.topbar-widget.tb-social {
  padding: 0;
}

.topbar-widget.tb-social a {
  font-size: 14px;
  display: flex;
  padding: 5px;
  padding-left: 15px;
  display: inline-block;
  text-align: center;
}

.topbar-widget a span {
  font-weight: 500;
  margin-right: 10px;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

#topbar:not(.topbar-noborder) .topbar-light .topbar-widget.tb-social a,
#topbar:not(.topbar-noborder)
  .topbar-light
  .topbar-widget.tb-social
  a:first-child {
  border-left: solid 1px rgba(0, 0, 0, 0.1);
}

#topbar:not(.topbar-noborder) .topbar-widget.tb-social a {
  border-left: solid 1px rgba(255, 255, 255, 0.1);
}

.tb-light .topbar-widget.tb-social a {
  border-left: solid 1px rgba(0, 0, 0, 0.1);
}

.topbar-widget.tb-social a:first-child {
  border: none;
}
@media (max-width: 991px) {
  /* MOBILE MENU PANEL */

  #mainmenu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 300px;
    height: 100vh;
    background: #0c1a44;
    flex-direction: column;
    align-items: flex-start;
    padding: 90px 0 30px;
    gap: 0;
    transition: 0.4s ease;
    overflow-y: auto;
    padding-bottom: 15px;
  }

  /* ACTIVE MENU */

  #mainmenu.active {
    right: 0;
  }

  /* MENU ITEMS */

  #mainmenu li {
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  }

  #mainmenu li a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 20px;
    font-size: 20px;
  }

  /* DROPDOWN CHILD MENU */

  #mainmenu li ul {
    position: static;
    background: #102055;
    display: none;
    padding-left: 10px;
  }

  #mainmenu li.open > ul {
    display: block;
  }

  /* CONTACT SECTION */

  .mobile-contact-item {
    border-top: 1px solid rgba(255, 255, 255, 0.15);
  }

  .mobile-contact-item a {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 26px;
    font-size: 14px;
    line-height: 1.6;
  }

  .mobile-contact-item i {
    min-width: 18px;
    color: #1aa6b7;
  }

  /* SOCIAL ICON AREA */

  .mobile-social-icons {
    padding: 18px 0 5px;
  }

  .mobile-social-row {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    padding: 8px 0 8px;
  }

  .mobile-social-row a {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #102055;
    color: #fff;
    font-size: 18px;
    transition: 0.3s ease;
  }

  .mobile-social-row a:hover {
    background: #1aa6b7;
  }

  /* CLOSE BUTTON POSITION FIX */

  #menu-btn {
    position: absolute;
    top: 22px;
    right: 22px;
    z-index: 1001;
  }

  .logo img {
    height: 50px;
  }
}
/* topbar end here */

/* ================================================== */

/* blog */

/* ================================================== */

.blog-list {
  margin: 0;
  padding: 0;
}

/* blog list */

.blog-list > div {
  list-style: none;
  line-height: 1.7em;
  margin-top: 0px;
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  margin-bottom: 20px;
}

.blog-list img {
  margin-bottom: 20px;
}

.de_light .blog-list li {
  border-bottom: solid 1px #ddd;
}

.blog-list h4 {
  margin-top: 20px;
}

.blog-list h4 a {
  color: #fff;
}

.de_light .blog-list h4 a {
  color: #222222;
}

.de_light .text-light .blog-list h4 a {
  color: #fff;
}

.blog-list .btn-more {
  padding: 3px 25px 3px 25px;
  color: #111;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  float: right;
}

.blog-list .btn-more:hover {
  background: #fff;
}

.de_light .blog-list .btn-more:hover {
  background: #222;
  color: #fff;
}

.blog-list .post-text {
  padding-left: 80px;
}

.bloglist .post-text a.btn-main {
  display: inline-block;
  margin-top: 0px;
  padding: 5px 25px;
}

.blog-list .blog-slider {
  margin-bottom: -60px;
}

.blog-list .date-box {
  position: absolute;
  text-align: center;
  text-shadow: none;
}

.blog-list .date-box .day,
.blog-list .date-box .month {
  display: block;
  color: #fff;
  text-align: center;
  width: 40px;
  z-index: 100;
}

.de_light .blog-list .date-box .month {
  color: #222222;
}

.blog-list .date-box {
  text-align: center;
  background: #f6f6f6;
  padding: 10px;
}

.blog-list .date-box .month {
  font-size: 14px;
}

.blog-list .date-box .day {
  font-family: var(--body-font);
  color: #222222;
  font-weight: bold;
  font-size: 28px;
}

.blog-list .date-box .month {
  font-family: var(--body-font);
  color: #fff;
  font-size: 13px;
  letter-spacing: 3px;
}

.de_light .blog-list .date-box .month {
  border-bottom-color: #ddd;
}

.de_light .text-light .blog-list .date-box .month {
  color: #fff;
}

/* de-bloglist-type-1 */
.de-bloglist-type-1 .d-content {
  margin-bottom: 10px;
}

.de-bloglist-type-1 .d-image {
  position: absolute;
  overflow: hidden;
  width: 80px;
}

.de-bloglist-type-1 .d-image img {
  width: 100%;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
}

.de-bloglist-type-1 .d-content {
  padding-left: 100px;
}

.rtl .de-bloglist-type-1 .d-content {
  padding-left: 0;
  padding-right: 100px;
}

.de-bloglist-type-1 .d-content h4 {
  font-size: 16px;
  margin-bottom: 0px;
}

.de-bloglist-type-1 .d-date {
  position: relative;
  font-size: 12px;
  font-weight: 500;
  padding-left: 18px;
}

.rtl .de-bloglist-type-1 .d-date {
  padding-left: 0;
  padding-right: 18px;
}

.de-bloglist-type-1 .d-date:before {
  font-family: "FontAwesome";
  font-weight: 300;
  color: var(--primary-color);
  content: "\f073";
  left: 0;
  position: absolute;
}

.rtl .de-bloglist-type-1 .d-date:before {
  display: none;
}

.rtl .de-bloglist-type-1 .d-date:after {
  font-family: "FontAwesome";
  font-weight: 300;
  color: var(--primary-color);
  content: "\f073";
  left: auto;
  right: 0;
  position: absolute;
}

/* de-post-type-1 */
.de-post-type-1 {
  margin-bottom: 40px;
}

.de-post-type-1 .d-image {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  margin-bottom: 20px;
}

.de-post-type-1 .d-image img {
  width: 100%;
}

.de-post-type-1 .d-meta {
  font-size: 12px;
  margin-bottom: 10px;
}

.de-post-type-1 .d-meta span {
  display: inline-block;
  font-weight: 600;
  margin-right: 30px;
  padding-left: 30px;
  position: relative;
}

.de-post-type-1 h4 {
  margin-bottom: 10px;
}

.de-post-type-1 h4 a {
  font-size: 20px;
  color: #333333;
  margin-bottom: 0px;
}

.de-post-type-1 .d-meta span:before {
  font-family: "FontAwesome";
  font-size: 20px;
  font-weight: 300;
  color: var(--primary-color);
  content: "";
  left: 0;
  position: absolute;
}

.de-post-type-1 .d-meta span.d-by:before {
  content: "\f007";
}

.de-post-type-1 .d-meta span.d-date:before {
  content: "\f073";
}

.de-post-type-1 .d-meta span.d-tags:before {
  content: "\f02c";
}

.blog-snippet li {
  border-bottom: none;
  margin-bottom: 0;
}

#blog-carousel .item.item {
  width: 100%;
}

.de-blog-c1 {
  position: relative;
  margin-bottom: 60px;
}

.de-blog-c1 h4 {
  font-size: 28px;
  letter-spacing: 0;
  font-weight: 600;
  line-height: 1.3em;
}

.de-blog-c1 .d-date {
  position: absolute;
  left: 0;
  text-align: center;
  color: #ffffff;
  text-align: center;
}

.de-blog-c1 .d-date .d-month {
  text-transform: uppercase;
  background: var(--primary-color);
  font-size: 16px;
  font-family: var(--heading-font);
  margin-left: 0.5rem;
  margin-bottom: 10px;
  font-weight: bold;
  line-height: 1em;
  padding: 2px 0;
  letter-spacing: 2px;
}

.de-blog-c1 .d-date .d-day {
  font-size: 52px;
  font-family: var(--heading-font);
  padding-left: 0.3rem;
  font-weight: bold;
}

.de-blog-c1 .d-image {
  padding-left: 100px;
}

.de-blog-c1 .d-image img {
  width: 100%;
  -webkit-box-shadow: 8px 8px 0 0px var(--primary-color);
  -moz-box-shadow: 8px 8px 0 0px var(--primary-color);
  box-shadow: 8px 8px 0 0px var(--primary-color);
}

/* blog comment */

#blog-comment {
  margin-top: 40px;
}

#blog-comment h5 {
  margin-bottom: 10px;
}

#blog-comment ul,
#blog-comment li {
  list-style: none;
  margin-left: -40px;
  padding-left: 0;
}

.rtl #blog-comment li {
  margin-right: -30px;
}

.rtl #blog-comment li li {
  margin-right: 40px;
}

#blog-comment li {
  min-height: 70px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: solid 1px #ccc;
}

.dark-scheme #blog-comment li {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

#blog-comment li .avatar {
  position: absolute;
  margin-top: 5px;
}

#blog-comment li .avatar img {
  width: 70px;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}

#blog-comment .comment {
  margin-left: 85px;
}

.rtl #blog-comment .comment {
  margin-left: 0;
  margin-right: 85px;
}

#blog-comment li {
  min-height: 70px;
  font-size: 15px;
  line-height: 1.6em;
}

#blog-comment li li {
  margin-left: 55px;
  padding-bottom: 0px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: solid 1px #ccc;
  border-bottom: none;
}

.dark-scheme #blog-comment li li {
  border-top-color: rgba(255, 255, 255, 0.1);
}

#blog-comment li li .avatar {
  position: absolute;
}

#blog-comment li li .comment {
}

.comment-info {
  margin-left: 85px;
  margin-bottom: 5px;
}

.rtl .comment-info {
  margin-left: 0;
  margin-right: 85px;
}

.comment-info span {
}

.comment-info .c_name {
  display: block;
  font-weight: 700;
  color: #555555;
}

.dark-scheme .comment-info .c_name {
  color: #ffffff;
}

.comment-info .c_reply {
  padding-left: 20px;
  margin-left: 20px;
  border-left: solid 1px #ddd;
  font-size: 12px;
}

.dark-scheme .comment-info .c_reply {
  border-left-color: rgba(255, 255, 255, 0.2);
}

.comment-info .c_date {
  font-size: 12px;
}

.blog-list h4 {
  color: #333;
}

.blog-list .post-wrapper {
}

.blog-read h4 {
  color: #333;
  letter-spacing: normal;
  font-size: 24px;
  text-transform: none;
}

.blog-carousel ul,
.blog-carousel li {
  margin: 0;
  list-style: none;
}

.blog-carousel h4 {
  margin-bottom: 0px;
}

.blog-carousel p {
  margin-bottom: 10px;
}

.blog-carousel .post-date {
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 11px;
  color: #888;
}

.bloglist {
  position: relative;
  overflow: hidden;
  margin-bottom: 15px;
  background: var(--tertiary-color);
}

.post-content {
  position: relative;
}

.post-content p {
  margin-bottom: 0px;
}

.post-text .d-date {
  font-size: 14px;
}

.post-text h4 {
  margin-top: 10px;
  margin-bottom: 10px;
}

.post-text h4 a {
  font-weight: bold;
  font-family: var(--body-font);
  color: #1a1c26;
  text-decoration: none;
  line-height: 1.5em;
  letter-spacing: 0;
}

.dark-scheme .post-text h4 a {
  color: #ffffff;
}

.post-text .tags {
  font-size: 10px;
  text-transform: uppercase;
}

.p-tagline {
  position: absolute;
  z-index: 1;
  top: 20px;
  left: 20px;
}

.p-tagline {
  left: auto;
  right: 20px;
}

.p-tagline,
.p-title {
  font-family: var(--body-font);
  background: rgba(var(--primary-color-rgb), 0.2);
  border-radius: 3px;
  display: inline-block;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 10px;
  padding: 7px 10px 6px 10px;
  text-transform: uppercase;
  margin-bottom: 5px;
}

.p-tagline,
.p-title.invert {
  background: var(--primary-color);
}

.p-title {
  font-size: 12px;
  margin-bottom: 20px;
}

.post-text .p-date {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 10px;
  font-weight: 500;
  color: #888888;
  padding: 5px 10px;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.blog-read img {
  margin-bottom: 20px;
}

.blog-read .post-text {
  padding: 0;
}

/* blog comment form */

#commentform label {
  display: block;
}

#commentform input {
  width: 290px;
}

#commentform input:focus {
  border: solid 1px #999;
  background: #fff;
}

#commentform textarea {
  width: 97%;
  padding: 5px;
  height: 150px;
  color: #333;
}

#commentform textarea:focus {
  border: solid 1px #999;
  background: #fff;
}

#commentform input.btn {
  width: auto;
}

.post-meta {
  margin: 0px 0 10px 0px;
  border: solid 1px #eee;
  border-left: none;
  border-right: none;
  border-left: none;
  font-size: 11px;
  display: table;
  width: 100%;
  table-layout: fixed;
}

.post-meta a {
  color: #888;
}

.post-meta span {
  display: table-cell;
  padding: 10px 0 10px 0;
  text-align: center;
}

.post-meta span i {
  float: none;
}

.post-image {
  overflow: hidden;
}

.post-image img {
  width: 100%;
  margin-bottom: 0px;
}
.post-image .d-tagline {
  position: absolute;
  top: 20px;
  right: 20px;
  line-height: 1em;
}

.post-image .d-tagline span {
  font-size: 12px;
  color: #ffffff;
  text-transform: uppercase;
  display: inline-block;
  background: var(--bg-dark-1);
  margin-left: 5px;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  font-weight: 600;
}

.blog-slide {
  padding: 0;
  margin: 0;
}

.blog-item {
  margin-bottom: 60px;
}

.blog-item img.preview {
  width: 100%;
  margin-bottom: 30px;
}

.post-image {
  position: relative;
}

.post-image .post-info {
  position: absolute;
  bottom: 0;
  padding: 0;
  border: none;
  width: 100%;
}

.post-image .post-info .inner {
  margin: 0 30px 0 30px;
  padding: 3px 20px;
  border-radius: 0px 10px 0 0;
}

.post-image .post-date,
.post-image .post-author {
  color: #ffffff;
}

/* ================================================== */

/* ratings */

/* ================================================== */

.ratings {
  color: #f86e4e;
}

.p-rating i {
  color: #cccccc;
}

.p-rating i.checked {
  color: #ffd337;
}

.d-rating i {
  font-size: 15px;
  color: #fec42c;
  margin-right: 3px;
}

/* ================================================== */

/* contact form */

/* ================================================== */

.error {
  display: none;
  margin-top: 30px;
  color: #e7505a;
  clear: both;
  padding-top: 20px;
  padding: 20px;
  background: rgba(231, 80, 90, 0.1);
  border: solid 1px #e7505a;
}

.success {
  color: #ffffff;
  display: none;
  margin-top: 30px;
  clear: both;
  padding-top: 20px;
  padding: 20px;
  background: #96c346;
  border: solid 1px #96c346;
}

.error img {
  vertical-align: top;
}

#contact_form textarea {
  /*height: calc(100% - 20px);*/
}

#contact_form .radio-img input[type="radio"] + label,
#contact_form .radio-img input[type="checkbox"] + label {
  padding: 0px;
  position: relative;
  background: none;
  width: 20%;
  float: left;
  text-align: center;
  margin-right: 5%;
}

#contact_form .radio-img input[type="radio"] + label:before,
#contact_form .radio-img input[type="checkbox"] + label:before {
  position: absolute;
  top: 10px;
  left: 15px;
  display: none;
}

#contact_form .radio-img input[type="radio"] + label img,
#contact_form .radio-img input[type="checkbox"] + label img {
  width: 100%;
  margin-bottom: 10px;
  opacity: 0.5;
}

#contact_form .radio-img input[type="radio"]:checked + label img,
#contact_form .radio-img input[type="checkbox"]:checked + label img {
  width: 100%;
  padding: 3px;
  opacity: 1;
  background: var(--primary-color);
}

#contact_form input[type="checkbox"] {
  position: relative;
  border: solid 1px var(--primary-color);
  background: none;
  cursor: pointer;
  line-height: 0;
  margin: 4px 0.6em 0 0;
  outline: 0;
  padding: 0 !important;
  vertical-align: text-top;
  height: 15px;
  width: 15px;
  /* -webkit-appearance: none; */
  opacity: 0.5;
}

.form-control {
  padding: 10px;
  margin-bottom: 20px;
  border: solid 1px rgba(0, 0, 0, 0.05);
  background: rgba(0, 0, 0, 0.025);
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
}

.text-light .form-control {
  color: #ffffff;
  border: solid 1px rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.025);
}

.text-light .form-control option {
  background: var(--bg-dark-1);
}

.radio-opt {
  float: left;
}

.radio-opt input[type="radio"] {
  display: none;
}

.radio-opt label {
  min-width: 62px;
  font-size: 12px;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  background-color: rgba(var(--primary-color-rgb), 0.2);
  color: white;
  padding: 0px;
  margin: 0 8px 8px 0;
  opacity: 0.5;
}
.radio-opt input[type="radio"]:checked + label {
  background-color: var(--primary-color);
  opacity: 1;
}

#contact_form input[type="checkbox"]:checked {
  background: var(--primary-color);
  opacity: 1;
}

#contact_form.s2 .radio-img input[type="radio"] + label,
#contact_form.s2 .radio-img input[type="checkbox"] + label,
#contact_form .radio-img input[type="radio"] + label img,
#contact_form .radio-img input[type="checkbox"] + label img {
  width: 100%;
  float: none;
}

.form-underline {
  outline: none;
  width: 100%;
  padding: 10px 0 10px 0;
  margin-bottom: 20px;
  border: none;
  border-bottom: solid 1px var(--bg-dark-1);
  background: none;
  border-radius: 0;
  height: auto;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}

.text-light .form-underline,
.dark-scheme .form-underline {
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.3);
}

.form-underline input[type="text"],
.form-underline textarea,
.form-underline input[type="email"],
.form-underline select {
  color: #333;
  border-bottom: solid 1px var(--heading-font-color);
}

.text-light .form-underline input[type="text"],
.text-light .form-underline textarea,
.text-light .form-underline input[type="email"],
.text-light .form-underline select {
  color: #fff;
  border-bottom: solid 1px #ffffff;
}

.hover-underline {
  position: relative;
  border-bottom: solid 1px rgba(0, 0, 0, 0.4);
}

.hover-underline .form-underline {
  padding-top: 0;
}

.text-light .hover-underline {
  border-bottom: solid 1px rgba(255, 255, 255, 0.4);
}

.hover-underline:before {
  content: "";
  position: absolute;
  bottom: 0;
  margin-bottom: -1px;
  width: 0;
  border-bottom: solid 1px #000000;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  -moz-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  outline: none;
}

.text-light .hover-underline:before {
  border-bottom: solid 1px #ffffff;
}

.hover-underline:hover:before {
  width: 100%;
}

.text-light ::placeholder {
  color: #ffffff;
  opacity: 1; /* Firefox */
}

.text-light::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: #ffffff;
}

.form-default input[type="text"],
.form-default textarea,
.form-default input[type="email"],
.form-default select {
  padding: 10px;
  margin-bottom: 20px;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  height: auto;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  font-weight: 400;
  font-size: 18px;
}

.form-border select {
  background: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'><path d='M0 0h24v24H0z' fill='none'></svg>")
    right 5px center no-repeat !important;
}

.rtl .form-border select {
  background: none !important;
  padding-left: 20px;
}

#contact_form.form-default textarea {
  padding: 10px;
  height: 170px;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
}

#form_subscribe input[type="text"] {
  padding: 7px 12px 7px 12px;
  width: 80%;
  float: left;
  display: table-cell;
  border-radius: 30px 0 0 30px;
  -moz-border-radius: 30px 0 0 30px;
  -webkit-border-radius: 30px 0 0 30px;
  border: none;
  border-right: none;
  background: rgba(255, 255, 255, 0.7);
  -webkit-box-shadow: 2px 2px 20px 0px rgba(20, 20, 20, 0.05);
  -moz-box-shadow: 2px 2px 20px 0px rgba(20, 20, 20, 0.05);
  box-shadow: 2px 2px 20px 0px rgba(20, 20, 20, 0.05);
}

#form_sb input[type="text"] {
  font-size: 20px;
  padding: 25px 20px 25px 20px;
  width: 85%;
  height: 30px;
  float: left;
  display: table-cell;
  border-radius: 30px 0 0 30px;
  -moz-border-radius: 30px 0 0 30px;
  -webkit-border-radius: 30px 0 0 30px;
  border: none;
  background: #ffffff;
  border: none;
}

.dark-scheme #form_sb input[type="text"] {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

#form_sb #btn-submit i {
  text-align: center;
  font-size: 30px;
  float: left;
  width: 15%;
  background: #171a21;
  color: #ffffff;
  display: table-cell;
  padding: 10px 0 10px 0;
  border-radius: 0 30px 30px 0;
  -moz-border-radius: 0 30px 30px 0;
  -webkit-border-radius: 0 30px 30px 0;
}

footer:not(.footer-light)
  #form_subscribe
  input[type="text"]::-moz-input-placeholder {
  color: #ffffff;
}

footer:not(.footer-light)
  #form_subscribe
  input[type="text"]::-webkit-input-placeholder {
  color: #ffffff;
}

footer:not(.footer-light) #form_subscribe.form-dark input[type="text"] {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

.footer-light #form_subscribe input[type="text"] {
  border: none;
  border-right: none;
  padding: 6px 12px;
  background: #ffffff;
}

#form_subscribe input[type="text"]:focus {
  background: rgba(255, 255, 255, 0.2);
}

#form_subscribe #btn-subscribe i {
  text-align: center;
  font-size: 28px;
  float: left;
  width: 20%;
  background: #171a21;
  color: #ffffff;
  display: table-cell;
  padding: 5px 0 5px 0;
  border-radius: 0 30px 30px 0;
  -moz-border-radius: 0 30px 30px 0;
  -webkit-border-radius: 0 30px 30px 0;
}

.form-default input[type="text"]:focus,
.form-default textarea:focus,
.form-default input[type="email"]:focus,
.form-default select:focus {
  background: #f6f6f6;
}

.error_input {
  border-bottom: solid 1px #ff0000 !important;
}

.arrow-up,
.arrow-down {
  width: 0;
  height: 0;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
  border-bottom: 40px solid #fff;
  position: fixed;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
  bottom: 0;
  cursor: poInter;
  z-index: 101;
}

.arrow-down {
  border-top: 40px solid #fff;
  border-bottom: none;
  position: fixed;
  z-index: 102;
  top: -40px;
}

.arrow-up:before {
  font-family: "FontAwesome";
  font-size: 20px;
  content: "\f067";
  color: #222;
  position: relative;
  top: 12px;
  margin: 0 0 0 -8px;
}

.arrow-down:before {
  font-family: "FontAwesome";
  font-size: 20px;
  content: "\f068";
  color: #222;
  position: relative;
  top: -35px;
  margin: 0 0 0 -8px;
}

/* ================================================== */

/* elements */

/* ================================================== */

/* border */

/* ------------------------------ */

.small-border {
  width: 50px;
  height: 2px;
  background: rgba(0, 0, 0, 0.5);
  border-left: none;
  border-right: none;
  display: block;
  margin: 0 auto;
  margin-bottom: 30px;
}

.small-border.sm-left {
  margin-left: 0;
}

.rtl .small-border.sm-left {
  margin-right: 0;
}

.tiny-border {
  height: 1px;
  background: #333;
  width: 40px;
  margin: 20px 0 20px 0;
  display: block;
}

.tiny-border.center {
  margin-left: auto;
  margin-right: auto;
}

.small-border.white {
  border-top: solid 2px #ffffff;
}

/* breadcrumb */

/* ------------------------------ */

.crumb {
  color: #777;
  margin: 0;
  padding: 0;
  font-weight: 500;
}

.crumb {
  padding-top: 10px;
  margin-bottom: -50px;
}

.crumb li {
  display: inline;
  text-decoration: none;
  letter-spacing: 0;
}

.crumb li:after {
  color: rgba(255, 255, 255, 0.75);
  font-family: "FontAwesome";
  content: "\f054";
  font-size: 10px;
  margin: 0 10px 0 10px;
}

.crumb li:last-child:after {
  display: none;
}

.crumb a {
  opacity: 0.6;
  text-decoration: none;
}

.crumb a:hover {
  opacity: 1;
}

.crumb li.active {
  color: #ffffff;
  font-weight: bold;
}

.de_light .crumb a:hover {
  color: #fff;
}

/* button and link */

/* ------------------------------ */

a {
  text-decoration: none;
}

.de_light a {
  color: #888;
}

.de_light a:hover {
  color: #555;
}

a.btn-text {
  text-decoration: none;
  display: inline-block;
  color: #111;
  font-weight: 600;
  padding: 0;
}

a.btn-text:after {
  font-family: FontAwesome;
  content: "\f054";
  padding-left: 10px;
}

a.btn-text {
  color: #fff;
}

a.btn-big {
  font-size: 14px;
  color: #eceff3;
  letter-spacing: 1px;
  line-height: normal;
  font-weight: bold;
  text-transform: uppercase;
  border: solid 1px #fff;
  padding: 10px 30px 10px 30px;
}

a.btn-big:after {
  font-family: FontAwesome;
  content: "\f054";
  margin-left: 20px;
}

a.btn,
.btn {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

a.btn:before {
  content: "";
  background: rgba(0, 0, 0, 0);
  width: 0;
  height: 100%;
  position: absolute;
  z-index: -1;
}

a.btn-fx:after {
  font-family: FontAwesome;
  content: "\f178";
  margin-left: 15px;
  position: absolute;
  right: -20px;
  margin-top: 0px;
}

a.btn-fx {
  font-size: 14px;
  color: #eceff3;
  letter-spacing: 1px;
  line-height: normal;
  font-weight: bold;
  text-transform: uppercase;
  border: solid 1px #fff;
  padding: 10px 30px 10px 30px;
}

a.btn-fx:hover {
  padding-left: 20px;
  padding-right: 40px;
}

a.btn-fx:before {
  width: 0;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
}

a.btn-fx:hover:after {
  right: 15px;
}

a.btn-fx:hover:before {
  width: 100%;
  background: rgba(0, 0, 0, 1);
}

a.btn-fx.light:hover:before {
  width: 100%;
  background: rgba(255, 255, 255, 1);
}

.btn-fullwidth {
  display: block;
  width: 100%;
}

a.btn-slider {
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  line-height: normal;
  text-decoration: none;
  text-transform: uppercase;
  border: solid 2px #fff;
  padding: 10px 30px 10px 30px;
  border-radius: 60px;
}

a.btn-slider:hover {
  color: #222;
  background: #fff;
  border-color: #000;
  border: solid 2px #fff;
}

a.btn-slider:hover:after {
  color: #222;
}

a.btn-id,
a.btn-id:hover {
  border: none;
}

a.btn-light.btn-id {
  color: #222;
}

a.btn-dark.btn-id {
  color: #fff;
}

.btn-main.btn-small {
  padding: 5px 20px 5px 20px;
  font-weight: bold;
  text-transform: uppercase;
}

.btn-fx.btn-main {
  text-transform: normal;
}

a.btn-bg-dark {
  background: #222;
}

a.btn-text-light {
  color: #fff;
}

.btn-icon-left i {
  margin-right: 12px;
  color: #fff;
}

.btn-add_to_cart,
a.btn-add_to_cart {
  border: solid 1px #bbb;
  font-size: 12px;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  padding: 3px;
  padding-left: 40px;
  padding-right: 20px;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  color: #555;
}

.btn-add_to_cart:before,
a.btn-add_to_cart:before {
  font-family: "FontAwesome";
  content: "\f07a";
  position: absolute;
  left: 20px;
}

a.btn-main,
a.btn-main:active,
a.btn-main:focus,
a.btn-main:visited,
.btn-main,
input[type="button"].btn-main,
a.btn-line,
#mainmenu li ul.mega a.btn-main {
  background: var(--primary-color);
  color: var(--btn-color);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  letter-spacing: var(--btn-letter-spacing);
  padding: var(--btn-padding);
  text-decoration: var(--btn-text-decoration);
  text-transform: var(--btn-text-transform);
  border-radius: var(--btn-rounded);
  -moz-border-radius: var(--btn-rounded);
  -webkit-border-radius: var(--btn-rounded);
  border: none;
  position: relative;
  display: inline-block;
  text-align: center;
  outline: 0;
  white-space: nowrap;
}

a.btn-main.fx-slide {
  overflow: hidden;
}

a.btn-main.fx-slide span {
  display: block;
  position: relative;
  transition: all 0.3s ease-in-out;
}

a.btn-main.fx-slide:hover span {
  transform: translate(0, 40px);
  opacity: 0;
}

a.btn-main.fx-slide:hover:before {
  opacity: 1;
  transform: translate(0, 0);
}

a.btn-main.fx-slide:before {
  content: attr(data-hover);
  position: absolute;
  left: 0;
  width: 100%;
  opacity: 0;
  transform: translate(0, -100%);
  transition: all 0.3s ease-in-out;
}

a.btn-main.btn-dark-trans {
  background: rgba(255, 255, 255, 0.1);
}

a.btn-main.btn-dark-trans:hover {
  background: var(--primary-color);
}

a.btn-main.btn-light-trans {
  color: var(--heading-font-color);
  background: rgba(0, 0, 0, 0.05);
}

a.btn-main.btn-light-trans:hover {
  color: #ffffff;
  background: var(--primary-color);
}

a.btn-main.big {
  font-size: 30px;
  padding: 20px 30px;
}

a.btn-main.btn-trans.light {
  background: rgba(255, 255, 255, 0.25);
}

a.btn-topbar {
  display: inline-block;
  padding: 5px 20px;
  font-size: 14px;
  font-weight: bold;
}

a.btn-sc {
  display: inline-block;
  font-family: var(--heading-font);
  font-weight: bold;
  padding: 6px;
  font-size: 14px;
  color: #222;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  background: #f2f2f2;
}

a.btn-sc img {
  width: 20px;
  margin-top: -4px;
  margin-right: 8px;
}

a.btn-line,
a.btn-line:hover {
  background: none;
  color: #35404e;
  border: solid 1px rgba(255, 255, 255, 0.5);
}

.text-light .btn-line {
  color: #ffffff;
}

a.btn-line:hover {
  color: #ffffff;
}

header:not(.header-light) a.btn-line,
.dark-scheme a.btn-line,
.dark-schem a.btn-line:hover {
  color: #ffffff;
}

a.btn-main.btn-white {
  background: #ffffff;
}

.col-right a.btn-main {
  font-size: 14px;
  text-transform: none;
}

a.btn-border {
  border: solid 2px rgba(255, 255, 255, 0.3);
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  min-width: 120px;
  outline: 0;
  font-weight: bold;
  text-decoration: none;
  padding: 10px 30px;
  min-width: 120px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 2px;
}

a.btn-border:hover {
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0);
  margin-top: -2px;
  margin-bottom: 2px;
  box-sizing: border-box;
}

a.btn-border.light {
  border: solid 1px #ffffff;
  color: #ffffff;
}

a.btn-border.light:hover {
  background: #ffffff;
}

a.btn-border:hover a {
  color: #ffffff !important;
}

.d-btn-close {
  color: #ffffff;
  cursor: poInter;
  text-align: center;
  display: block;
  text-align: center;
  width: 60px;
  height: 60px;
  background: #333;
  font-size: 32px;
  font-weight: bold;
  text-decoration: none;
  margin: 0 auto;
  padding-top: 12px;
  position: absolute;
  left: 0;
  right: 0;
}

a.btn-link {
  display: block;
  text-decoration: none;
  margin-top: 10px;
}

a.btn-lg {
  font-size: 24px;
  padding: 15px 30px 10px 30px;
}

.btn-plus {
  font-size: 15px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  text-align: center;
  max-width: 36px;
  height: 36px;
  border-radius: 36px;
  -moz-border-radius: 36px;
  -webkit-border-radius: 36px;
  overflow: hidden;
  border: solid 1px var(--heading-font-color);
  color: var(--heading-font-color);
}

.btn-plus:hover {
  max-width: 100%;
  color: var(--heading-font-color);
}

.btn-plus i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
}

.btn-plus span {
  opacity: 0;
  display: inline-block;
  overflow: hidden;
  margin-left: 36px;
  line-height: 2.2em;
  padding-right: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.btn-plus:hover span {
  opacity: 1;
}

.text-light .btn-plus {
  border: solid 1px #ffffff;
  color: #ffffff;
}

.text-light .btn-plus:hover {
  color: #ffffff;
}

.cover a.btn-link:hover {
  color: #fff;
}

.play-button {
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  color: #fff;
  text-decoration: none;
  border: solid 5px rgba(255, 255, 255, 0.3);
  display: inline-block;
  text-align: center;
  width: 80px;
  height: 80px;
  padding-top: 22px;
  padding-left: 5px;
}

.play-button:before {
  font-family: "FontAwesome";
  font-size: 20px;
  content: "\f04b";
  position: relative;
  color: #fff;
}

.play-button:hover {
  border: solid 5px rgba(255, 255, 255, 1);
}

.play-button.dark {
  color: #222;
  border: solid 5px rgba(0, 0, 0, 0.1);
}

.play-button.dark:before {
  color: #222;
}

.play-button.dark:hover {
  border: solid 5px rgba(0, 0, 0, 0.5);
}

.text-light .play-button {
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  color: #fff;
  text-decoration: none;
  border: solid 5px rgba(255, 255, 255, 0.3);
  display: inline-block;
  text-align: center;
  width: 80px;
  height: 80px;
  padding-top: 22px;
  padding-left: 5px;
}

.text-light .play-button:before {
  font-family: "FontAwesome";
  font-size: 20px;
  content: "\f04b";
  position: relative;
  color: #fff;
}

.text-light .play-button.dark {
  color: #fff;
  border: solid 5px rgba(255, 255, 255, 0.3);
}

.text-light .play-button.dark:before {
  color: #fff;
}

.text-light .play-button.dark:hover {
  border: solid 5px rgba(255, 255, 255, 1);
}

/* divider */

/* ------------------------------ */

.spacer-single {
  width: 100%;
  height: 30px;
  display: block;
  clear: both;
}

.spacer-double {
  width: 100%;
  height: 60px;
  display: block;
  clear: both;
}

.spacer-triple {
  width: 100%;
  height: 90px;
  display: block;
  clear: both;
}

.spacer-half {
  width: 100%;
  height: 15px;
  display: block;
  clear: both;
}

.spacer-5 {
  width: 100%;
  height: 5px;
  display: block;
  clear: both;
}

.spacer-10 {
  width: 100%;
  height: 10px;
  display: block;
  clear: both;
}

.spacer-20 {
  width: 100%;
  height: 20px;
  display: block;
  clear: both;
}

.spacer-30 {
  width: 100%;
  height: 30px;
  display: block;
  clear: both;
}

.spacer-40 {
  width: 100%;
  height: 40px;
  display: block;
  clear: both;
}

.spacer-50 {
  width: 100%;
  height: 50px;
  display: block;
  clear: both;
}

.spacer-60 {
  width: 100%;
  height: 60px;
  display: block;
  clear: both;
}

.spacer-30-line {
  border-bottom: solid 1px rgba(0, 0, 0, 0.3);
  margin-top: 30px;
  margin-bottom: 30px;
}

.text-light .spacer-30-line {
  border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  margin-top: 30px;
  margin-bottom: 30px;
}

hr {
  display: block;
  clear: both;
  border-top: solid 1px #ddd;
  margin: 40px 0 40px 0;
}

/* dropcap */

/* ------------------------------ */

.dropcap {
  display: inline-block;
  font-size: 48px;
  float: left;
  margin: 10px 15px 15px 0;
  color: #eceff3;
  padding: 20px 10px 20px 10px;
}

/* form */

/* ------------------------------ */

.form-transparent input[type="text"],
.form-transparent textarea,
.form-transparent input[type="email"] {
  padding: 10px;
  margin-bottom: 20px;
  color: #fff;
  border: solid 1px rgba(0, 0, 0, 0.3);
  background: rgba(0, 0, 0, 0.2);
  border-radius: 0;
  height: auto;
}

.form-border input[type="text"],
.form-border textarea,
.form-border input[type="email"],
.form-border input[type="password"],
.form-border input[type="date"],
.form-border select {
  padding: 8px;
  margin-bottom: 10px;
  border: none;
  border: solid 2px #eeeeee;
  background: rgba(0, 0, 0, 0.025);
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  height: auto;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  color: #333;
}

.dark-scheme .form-border input[type="text"],
.dark-scheme .form-border textarea,
.dark-scheme .form-border input[type="email"],
.dark-scheme .form-border input[type="password"],
.dark-scheme .form-border input[type="date"],
.dark-scheme .form-border select {
  color: #ffffff;
  border: solid 1px rgba(var(--primary-color-rgb), 0.5);
}

.dark-scheme ::-webkit-calendar-picker-indicator {
  filter: invert(1);
}

.dark-scheme .form-border input::-moz-input-placeholder,
.dark-scheme .form-border textarea::-moz-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.dark-scheme .form-border input::-webkit-input-placeholder,
.dark-scheme .form-border textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.form-border input[type="text"]:focus,
.form-border textarea:focus,
.form-border input[type="date"]:focus,
.form-border select:focus {
  background: rgba(var(--primary-color-rgb), 0.1);
}

.form-subscribe {
  display: table;
  margin: 0 auto;
}

.form-subscribe input[type="text"] {
  display: table-cell;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-right: none;
  background: rgba(255, 255, 255, 0.1);
  padding: 6px 20px 6px 20px;
  border-radius: 60px 0 0 60px;
  height: 40px;
  vertical-align: middle;
}

.form-subscribe .btn-main {
  display: table-cell;
  border-radius: 0 60px 60px 0;
  height: 40px;
  vertical-align: middle;
}

.form-subscribe input[type="text"]:hover {
  background: rgba(255, 255, 255, 0.3);
}

.field-set label {
  color: #606060;
}

.field-set .d-label {
  display: inline-block;
  color: var(--heading-font-color);
  font-weight: 500;
  margin-bottom: 10px;
}

.dark-scheme .field-set label {
  color: #ffffff;
}

.de_form input[type="radio"],
.de_form input[type="checkbox"] {
  display: none;
}

.de_form input[type="radio"] + label:before {
  content: "\f111";
  font-family: "FontAwesome";
  margin-right: 10px;
  border: solid 1px #d2d2d2;
}

.de_form input[type="checkbox"] + label:before {
  position: absolute;
  content: "";
  display: inline-block;
  font-family: "FontAwesome";
  margin-right: 10px;
  border: solid 2px rgba(0, 0, 0, 0.2);
  width: 16px;
  height: 16px;
  margin-top: 5px;
  left: 0;
  font-size: 11px;
  padding: 1px 3px 0 3px;
  line-height: 15px;
  border-radius: 4px;
}

.dark-scheme .de_form input[type="checkbox"] + label:before {
  border: solid 2px rgba(255, 255, 255, 0.2);
}

.de_checkbox {
  position: relative;
  display: block;
  padding-left: 25px;
}

.de_form input[type="radio"] + label,
.de_form input[type="checkbox"] + label {
  cursor: pointer;
  border: none;
  border-radius: 3px;
}

.no-bg input[type="radio"] + label,
.de_form.no-bg input[type="checkbox"] + label {
  padding: 4px 0px;
  border: none;
  background: none;
}

.de_form input[type="radio"]:checked + label,
.de_form input[type="checkbox"]:checked + label {
  border: none;
}

.de_form input[type="checkbox"]:checked + label:before {
  content: "\f00c";
  color: #ffffff;
  border: rgba(0, 0, 0, 0);
}

.item_filter_group {
  border: solid 1px rgba(0, 0, 0, 0.15);
  margin-bottom: 25px;
  padding: 30px;
  border-radius: 12px;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
}

.dark-scheme .item_filter_group {
  border: solid 1px rgba(255, 255, 255, 0.075);
}

.item_filter_group h4 {
  font-size: 18px;
}

/* heading */

/* ------------------------------ */

h1,
h2,
h4,
h3,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
footer.footer-light h5 {
  margin-top: 0;
  font-family: var(--heading-font);
  font-weight: var(--heading-font-weight);
  color: var(--heading-font-color);
  text-transform: var(--heading-text-transform);
}

.dark-scheme h1,
.dark-scheme h2,
.dark-scheme h4,
.dark-scheme h3,
.dark-scheme h5,
.dark-scheme h6,
.dark-scheme .h1_big,
.dark-scheme .h1,
.dark-scheme .h2,
.dark-scheme .h3,
.dark-scheme .h4,
.dark-scheme .h5,
.dark-scheme .h6 {
  color: #ffffff;
}

footer h1,
footer h2,
footer h4,
footer h4,
footer h5,
footer h6 {
  color: #fff;
}

h2.text-light,
footer h4,
footer h4,
footer h5,
footer h6 {
  color: #fff;
}

.text-line {
  color: transparent !important;
  -webkit-text-stroke: 1px #ffffff;
}

span.underline {
  display: inline-block;
  position: relative;
}

span.underline:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0.4vw;
  background: var(--primary-color);
  bottom: 0;
  z-index: -1;
}

h2 span.underline:before {
  height: 0.25vw;
}

h1 {
  font-size: var(--h1-font-size);
  font-weight: var(--h1-font-weight);
  letter-spacing: var(--h1-letter-spacing);
  line-height: var(--h1-line-height);
  margin-bottom: var(--h1-margin-bottom);
}

h2 {
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  margin-bottom: var(--h2-margin-bottom);
}

h3 {
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  margin-bottom: var(--h3-margin-bottom);
}

h4 {
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  margin-bottom: var(--h4-margin-bottom);
}

h5 {
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  margin-bottom: var(--h5-margin-bottom);
}

h6 {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  margin-bottom: var(--h6-margin-bottom);
}

h1.title {
  font-size: 64px;
  letter-spacing: 10px;
}

h1.title strong {
  text-transform: none;
  letter-spacing: 0;
  font-weight: normal;
}

h2 .de_light .text-light h2 {
  color: #fff;
}

.text-light h2.deco span:before,
.text-light h2.deco span:after {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}

h5.new:before {
  content: "NEW";
  font-size: 12px;
  padding: 1px 6px 2px 6px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  margin-right: 5px;
  color: #ffffff;
  background: var(--primary-color);
}

h5 span.label {
  display: inline-block;
  margin-right: 10px;
  background: #222222;
  color: #ffffff;
  padding: 0 5px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.wm {
  text-align: center;
  width: 150%;
  font-size: 400px;
  font-weight: bold;
  position: absolute;
  left: 0;
  z-index: 0;
  text-align: center;
  font-family: var(--heading-font);
  line-height: 1.5em;
  margin-left: 0;
  letter-spacing: -0.08em;
  top: 50%;
  background: -webkit-linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 20%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: -moz-linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 20%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 20%,
    rgba(255, 255, 255, 0.5) 100%
  );
  /* -webkit-background-clip: text; */
  -webkit-text-fill-color: transparent;
  transform: translate(-50%, -50%);
  -webkit-user-select: none;
  user-select: none;
}

.wm .s1 {
  -webkit-text-stroke: 0;
  color: rgba(var(--primary-color-rgb), 0.3);
}

.wm.invert {
  color: rgba(0, 0, 0, 0.1);
}

.top-center {
  color: rgba(255, 255, 255, 0.5);
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 1;
  text-align: center;
  font-family: var(--heading-font);
  line-height: 70px;
  letter-spacing: -0.05em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.text-light,
.text-light p {
  color: var(--body-font-color-dark);
}

.text-dark,
.text-dark p {
  color: var(--body-font-color);
}

.text-white,
.de_light .text-white {
  color: #fff;
}

.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4,
.text-light h5,
.text-light h6 {
  color: #fff;
}

.text-dark h1,
.text-dark h2,
.text-dark h3,
.text-dark h4,
.text-dark h5,
.text-dark h6 {
  color: var(--heading-font-color);
}

.de_light .text-light h1,
.de_light .text-light h2,
.de_light .text-light h4,
.de_light .text-light h4,
.de_light .text-light h5,
.de_light .text-light h6 {
  color: #fff;
}

.text-white h1,
.text-white h2,
.text-white h4,
.text-white h4,
.text-white h5,
.text-white h6 {
  color: #fff;
}

.de_light .text-white h1,
.de_light .text-white h2,
.de_light .text-white h4,
.de_light .text-white h4,
.de_light .text-white h5,
.de_light .text-white h6 {
  color: #fff;
}

.de_light h1,
.de_light h2,
.de_light h4,
.de_light h4,
.de_light h5,
.de_light h6 {
  color: #202020;
}

/* list */

ul.d-inline li {
  list-style: none;
  display: inline;
}

.list-mx-10 li {
  margin: 0 10px;
}

.ul-check {
  padding: 0;
  list-style: none;
}

.ul-check li {
  margin: 5px 0 5px 0;
}

.ul-check li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  margin-right: 15px;
  color: var(--primary-color);
}

.rtl .ul-check li:after {
  font-family: "FontAwesome";
  content: "\f00c";
  margin-left: 15px;
  color: var(--primary-color);
}

.rtl .ul-check li:before {
  display: none;
}

.ul-check.white li:before {
  color: #ffffff;
}

.dark-scheme .ul-check li a {
  color: rgba(255, 255, 255, 0.7);
}

.ul-style-4 {
  padding: 0;
  list-style: none;
  font-size: 14px;
}

.ul-style-4 li {
  margin: 2px 0 2px 0;
  /* display: ; */
  font-weight: 500;
}

.ul-style-4 li:before {
  color: #ffffff;
  font-family: "FontAwesome";
  content: "\f00c";
  margin-right: 15px;
  padding: 3px;
  font-size: 12px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.ul-info {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ul-info li {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.ul-info li div:nth-child(2) {
  font-weight: 600;
}

ol.ol-style-1 {
  list-style-type: none;
  counter-reset: ordered;
  margin-left: 50px;
}

.rtl ol.ol-style-1 {
  margin-right: 50px;
  margin-left: 0px;
}

ol.ol-style-1 li {
  position: relative;
  font-weight: 500;
  margin-bottom: 20px;
  font-size: 18px;
}

ol.ol-style-1.fs-16 li {
  font-size: 16px;
}

ol.ol-style-1 li::before {
  background: rgba(var(--primary-color-rgb), 1);
  border-radius: 50%;
  color: #ffffff;
  content: counter(ordered);
  counter-increment: ordered;
  display: inline-block;
  font-weight: 400;
  margin-left: -50px;
  margin-top: -5px;
  padding: 5px 5px;
  position: absolute;
  top: 10px;
  width: 40px;
  height: 40px;
  text-align: center;
}

.rtl ol.ol-style-1 li::before {
  display: none;
}

.rtl ol.ol-style-1 li::after {
  background: rgba(var(--primary-color-rgb), 1);
  border-radius: 50%;
  color: #ffffff;
  content: counter(ordered);
  counter-increment: ordered;
  display: inline-block;
  font-weight: 400;
  margin-right: -50px;
  margin-top: -5px;
  padding: 5px 5px;
  position: absolute;
  top: 10px;
  right: 0;
  width: 40px;
  height: 40px;
  text-align: center;
}

ol.ol-style-1.c2 li::before {
  background: var(--bg-dark-2);
}

ol.ol-style-1 h4 {
  font-size: 18px;
  margin-bottom: 10px;
}

.text-light ol.ol-style-1 li::before {
  color: #ffffff;
}

.ol-style-1 {
  font-size: 16px;
  font-weight: bold;
}

.ol-style-1 h4 {
  font-size: 16px;
}

.ol-style-1 p {
  font-weight: normal;
}

.ol-style-1 {
  list-style-type: none;
  counter-reset: item;
  margin: 0;
  padding: 0;
}

.ol-style-1 li {
  display: table;
  counter-increment: item;
  margin-bottom: 0.6em;
}

.ol-style-1 li:before {
  content: counters(item, ".") ". ";
  display: table-cell;
  padding-right: 0.6em;
}

.ol-style-1 li li {
  margin: 0;
}

.ol-style-1 li li:before {
  content: counters(item, ".") " ";
}

/* pagination */

.page-link {
  margin: 0 5px;
  font-weight: bold;
  color: var(--heading-font-color);
  background: none;
}

.page-link {
  width: 40px;
  border: none;
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.page-link:hover {
  background: none;
}

.page-item.active .page-link {
  border-color: var(--primary-color);
}

.dark-scheme .page-link {
  color: #ffffff;
}

.spinner {
  display: table-cell;
  vertical-align: middle;
  margin: 100px auto 0;
  width: 70px;
  text-align: center;
}

.spinner > div {
  width: 18px;
  height: 18px;
  background-color: #fff;

  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
  }

  40% {
    -webkit-transform: scale(1);
  }
}

@keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

/* ================================================== */

/* preloader */

/* ================================================== */

#de-loader {
  position: fixed;
  z-index: 20000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.dark-scheme #de-loader {
  background: var(--bg-dark-1);
}

.lds-roller {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}

.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 40px 40px;
}

.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--primary-color);
  margin: -2px 0 0 -2px;
}

.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}

.lds-roller div:nth-child(1):after {
  top: 63px;
  left: 63px;
}

.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}

.lds-roller div:nth-child(2):after {
  top: 68px;
  left: 56px;
}

.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}

.lds-roller div:nth-child(3):after {
  top: 71px;
  left: 48px;
}

.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}

.lds-roller div:nth-child(4):after {
  top: 72px;
  left: 40px;
}

.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}

.lds-roller div:nth-child(5):after {
  top: 71px;
  left: 32px;
}

.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}

.lds-roller div:nth-child(6):after {
  top: 68px;
  left: 24px;
}

.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}

.lds-roller div:nth-child(7):after {
  top: 63px;
  left: 17px;
}

.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}

.lds-roller div:nth-child(8):after {
  top: 56px;
  left: 12px;
}

@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* progress bar */

/* ================================================== */

.de-progress {
  width: 100%;
  height: 8px;
  background: #ddd;
  margin-top: 20px;
  margin-bottom: 20px;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  overflow: hidden;
}

.de-progress .progress-bar {
  background: #333;
  height: 8px;
  box-shadow: none;
}

.de-progress {
  background: #ffffff;
}

.skill-bar {
  margin-bottom: 40px;
}

.skill-bar.style-2 .de-progress {
  background: rgba(0, 0, 0, 0.1);
}

.skill-bar .value {
  color: #ccc;
  font-size: 12px;
  font-weight: bold;
  float: right;
  margin-top: -40px;
}

.rtl .skill-bar .value {
  float: left;
}

.skill-bar h4 {
  font-size: 16px;
}

/* social-icons */

/* ================================================== */

.social-icons {
  display: inline-block;
}

.social-icons i {
  text-shadow: none;
  padding: 10px 5px;
  width: 36px;
  height: 36px;
  text-align: center;
  font-size: 16px;
  margin: 0 3px 0 3px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
}

.dark-scheme .social-icons i {
  background: rgba(255, 255, 255, 0.1);
}

.social-icons i.fa-google-plus {
  padding: 12px 14px 10px 6px;
}

.social-icons.s2 i {
  background: rgba(255, 255, 255, 0.1);
}

.social-icons i:hover {
  background: #fff;
  border-color: #eceff3;
  color: #333;
}

.social-icons.big a {
  padding: 0;
  display: inline-block;
}
.social-icons.big i {
  font-size: 26px;
  width: auto;
  height: auto;
  color: #ffffff;
  background: var(--primary-color);
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  width: 48px;
  padding: 14px 0;
}

.social-icons.big i:hover {
  background: none;
}

#topbar .social-icons i {
  font-size: 16px;
  height: 30px;
  width: 30px;
  color: #ffffff;
}

.social-icons.big i {
  margin: 0 15px 0 15px;
}

.social-icons.big i:hover {
  background: none;
}

.social-icons.s1 i {
  border: none;
  font-size: 16px;
  margin: 3px;
}

.social-icons.s1:hover i {
  background: none;
}

.social-icons.s1 {
  line-height: 0.5;
  text-align: center;
}

.social-icons.s1 .inner {
  display: inline-block;
  position: relative;
}

.social-icons.s1 .inner:before,
.social-icons.s1 .inner:after {
  content: "";
  position: absolute;
  height: 5px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  top: 0;
  width: 100%;
}

.social-icons.s1 .inner:before {
  right: 100%;
  margin-right: 15px;
  margin-top: 20px;
}

.social-icons.s1 .inner:after {
  left: 100%;
  margin-left: 15px;
  margin-top: 20px;
}

.col-right {
  display: inline-block;
  float: right;
  margin-top: 22px;
}

/* ================================================== */

/* accordion

/* ================================================== */

.accordion-section-title {
  color: #35404e;
  width: 100%;
  padding: 15px 0;
  cursor: poInter;
  font-family: var(--body-font);
  width: 100%;
  display: inline-block;
  font-size: 17px;
  transition: all linear 0.5s;
  text-decoration: none;
  font-weight: 600;
  overflow: none;
  border-bottom: solid 1px #dddddd;
}

.dark-scheme .accordion-section-title,
.text-light .accordion-section-title {
  color: #ffffff;
  border-bottom: solid 1px rgba(255, 255, 255, 0.4) !important;
}

.accordion-section-title:before {
  font-family: "FontAwesome";
  content: "\f107";
  float: right;
  color: var(--bg-dark-1);
  text-align: center;
  padding: 0 8px 0 8px;
  font-size: 15px;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  width: 30px;
}

.dark-scheme .accordion-section-title:before,
.text-light .accordion-section-title:before {
  color: #ffffff;
}

.rtl .accordion-section-title:before {
  float: left;
}

.accordion-section-title.active:before {
  content: "\f106";
}

.accordion-section-title.active {
  margin-bottom: 0px;
  text-decoration: none;
}

.accordion-section-title:hover {
  text-decoration: none;
}

.accordion-section-content {
  padding-top: 15px;
  padding-bottom: 5px;
  display: none;
  margin-bottom: 10px;
}

.accordion.s2 .accordion-section-title {
  border: none;
  border-bottom: solid 1px #ddd;
}

/* bs */

.accordion-item h2 {
  line-height: 24px;
  display: block;
}

.expand-custom {
  background: #ffffff;
  padding: 30px;
  margin-bottom: 30px;
  border-radius: 3px;
  border: solid 1px #dddddd;
}

.dark-scheme .expand-custom {
  background: var(--bg-color-odd);
  border: var(--border-default);
}
.de_tab .de_nav {
  overflow: hidden;
  padding-left: 0;
  margin: 0;
  padding: 0;
  font-weight: bold;
}

.de_tab .de_nav li {
  float: left;
  list-style: none;
  margin-right: 10px;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
}

.rtl .de_tab .de_nav li {
  float: right;
  margin-right: 0;
  margin-left: 0;
}

.d_coll .de_tab .de_nav {
  text-align: center;
}

.d_coll .de_tab .de_nav li {
  float: none;
  display: inline-block;
  margin-right: 5px;
}

.de_tab .de_nav li span {
  border: solid 1px rgba(0, 0, 0, 0.2);
  display: block;
  text-decoration: none;
  color: #646464;
  font-size: 15px;
  cursor: poInter;
}

.dark-scheme .de_tab .de_nav li span {
  color: rgba(255, 255, 255, 0.3);
  background: #292f45;
}

.de_tab.tab_methods .de_nav li span {
  border: solid 2px rgba(0, 0, 0, 0.1);
}

.de_tab.tab_methods .de_nav li {
  background: none;
  display: inline-block;
  float: none;
  margin: 0 10px 0 0;
}

.de_tab.tab_methods .de_nav li span {
  padding: 35px 10px;
  color: rgba(0, 0, 0, 0.6);
  font-family: var(--body-font);
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  border-radius: 12px;
  min-width: 140px;
}

.dark-scheme .de_tab.tab_methods .de_nav li span {
  color: rgba(255, 255, 255, 0.6);
}

.dark-scheme .de_tab.tab_methods .de_nav li.active span {
  color: #ffffff;
}

.de_tab.tab_methods .de_nav li span i {
  display: block;
  font-size: 30px;
  margin-bottom: 10px;
}

.de_tab.tab_methods.style-2 .de_nav li span {
  background: none;
  border-radius: 0px;
  border: solid 1px rgba(255, 255, 255, 0.5);
  font-size: 16px;
  color: #fff;
}

.de_tab.tab_methods.style-2.light .de_nav li span {
  background: #eee;
  color: #707070;
}

.de_tab.tab_methods.style-2 .de_nav li.active span {
  border: solid 2px rgba(255, 255, 255, 0.8);
  color: #222;
}

.de_tab.tab_methods .de_nav li .v-border {
  height: 60px;
  border-left: solid 1px rgba(255, 255, 255, 0.3);
  display: inline-block;
  margin-bottom: -5px;
}

.de_tab.tab_methods.dark .de_nav li .v-border {
  border-left: solid 1px rgba(0, 0, 0, 0.3);
}

.de_tab .de_nav li span {
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.de_tab .de_tab_content {
  padding-top: 30px;
}

.de_tab.tab_methods .de_tab_content {
  background: 0;
  padding: 0;
  border: none;
  padding-top: 30px;
}

.de_tab.tab_methods.dark .de_tab_content {
  border-top: solid 1px rgba(0, 0, 0, 0.4);
}

.de_tab .de_nav li.active span {
  background: #fff;
  color: #222;
}

.de_tab .de_nav li.active span .v-border {
  display: none;
}

.de_tab .de_nav li.active span {
  background: #27282b;
}

.de_tab.tab_methods .de_nav li.active span {
  background: none;
}

.de_tab.tab_methods.dark .de_nav li.active span {
  background: none;
  color: #333;
  border: solid 1px rgba(0, 0, 0, 0.8);
}

/* new added */

.de_tab.tab_methods.tab_6 .de_nav li span {
  padding: 20px 0 20px 0;
  font-size: 14px;
  line-height: 70px;
  width: 120px;
  height: 120px;
}

.de_tab.tab_methods.style-2 .de_nav li .arrow {
  width: 0;
  height: 0;
  border-left: 0px solid transparent;
  border-right: 0px solid transparent;
  border-top: 0px solid transparent;
  margin: 0 auto;
  margin-bottom: 20px;
}

.de_tab.tab_methods.style-2 .de_nav li.active .arrow {
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid;
  margin: 0 auto;
}

.de_tab.tab_methods.style-2 .de_nav li {
  margin: 5px;
  display: inline-block;
}

.de_tab.tab_methods.style-2 .de_nav li span {
  font-family: var(--body-font);
  background: rgba(255, 255, 255, 0.1);
  border-radius: 0px;
  font-size: 16px;
  font-weight: lighter;
  color: #fff;
  opacity: 0.8;
  width: 120px;
  height: 100px;
  border: none;
  padding: 20px;
  border-radius: 300px;
  -moz-border-radius: 300px;
  -webkit-border-radius: 300px;
  -webkit-border-radius: 300px;
}

.de_tab.tab_methods.style-2 .de_nav li i {
  display: block;
  font-size: 36px;
  margin-bottom: 10px;
}

.de_tab.tab_methods.style-2.sub-style-2 .de_nav li span {
  background: rgba(0, 0, 0, 0.1);
  color: #000;
  opacity: 0.8;
}

.de_tab.tab_methods.style-2 .de_nav li.active span {
  color: #222;
  opacity: 1;
  border: none;
}

.de_tab.tab_methods.style-2 .de_nav li span:hover {
  border: none;
}

.de_tab.tab_methods.style-2 .de_tab_content {
  border: none;
}

.de_tab.tab_simple .de_nav li {
  min-width: 80px;
  text-align: center;
}

.de_tab.tab_simple .de_nav li span {
  font-size: 16px;
  font-weight: 600;
  padding: 2px 0px;
  margin-right: 30px;
  border: none;
  border-radius: 0;
  background: none;
  border-bottom: solid 2px rgba(255, 255, 255, 0);
  color: rgba(0, 0, 0, 0.5);
}

.dark-scheme .de_tab.tab_simple .de_nav li span {
  color: rgba(255, 255, 255, 0.5);
}

.rtl .de_tab.tab_simple .de_nav li span {
  margin-right: 0px;
  margin-left: 30px;
}

.de_tab.tab_simple .de_nav li.active span {
  color: rgba(0, 0, 0, 1);
}

.dark-scheme .de_tab.tab_simple .de_nav li.active span {
  color: rgba(255, 255, 255, 1);
}

/* tab de_light */

.de_light .de_tab.tab_style_2 .de_tab_content {
  border: none;
  background: none;
  padding: 40px 0 0 0;
  border-top: solid 1px #ddd;
}

.text-light .de_tab.tab_style_2 .de_tab_content {
  border-top: solid 1px rgba(255, 255, 255, 0.1);
}

.de_light .de_tab.tab_style_2 .de_nav {
}

.de_light .de_tab.tab_style_2 .de_nav li {
  float: none;
  list-style: none;
  background: none;
  margin: 0 5px 0 5px;
  text-align: center;
  display: inline-block;
}

.de_light .de_tab.tab_style_2 .de_nav li img {
  width: auto;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.7;
}

.de_light .de_tab.tab_style_2 .de_nav li.active img {
  width: auto;
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: 1;
}

.de_light .de_tab.tab_style_2 .de_nav li span {
  background: none;
  display: block;
  text-decoration: none;
  font-size: 14px;
  cursor: poInter;
  border: none;
}

.de_light .de_tab.tab_style_2 .de_nav li.active span {
  border-bottom: solid 6px;
  color: #333;
  background: none;
}

.text-light .de_tab.tab_style_2 .de_nav li.active span {
  color: #fff;
}

/* tab de_light */

.de_light .de_tab.tab_style_3 .de_tab_content {
  border: none;
  background: none;
  padding: 40px 0 0 0;
  border-top: solid 1px #ddd;
}

.text-light .de_tab.tab_style_3 .de_tab_content {
  border-top: solid 1px rgba(255, 255, 255, 0.1);
}

.de_light .de_tab.tab_style_3 .de_nav {
  text-align: center;
  background: #eee;
  display: inline-block;
  border-radius: 60px;
  margin-bottom: 30px;
  padding: 0;
}

.de_light .de_tab.tab_style_3 .de_nav li {
  float: none;
  list-style: none;
  background: none;
  text-align: center;
  display: inline-block;
  margin: 0;
  padding: 0;
}

.de_light .de_tab.tab_style_3 .de_nav li img {
  width: auto;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.7;
}

.de_light .de_tab.tab_style_3 .de_nav li.active img {
  width: auto;
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: 1;
}

.de_light .de_tab.tab_style_3 .de_nav li span {
  background: none;
  display: block;
  text-decoration: none;
  font-size: 14px;
  cursor: poInter;
  border: none;
  padding: 5px 30px 5px 30px;
  min-width: 150px;
}

.de_light .de_tab.tab_style_3 .de_nav li:last-child span {
  border-radius: 0 60px 60px 0;
}

.de_light .de_tab.tab_style_3 .de_nav li:first-child span {
  border-radius: 60px 0 0 60px;
}

.de_light .de_tab.tab_style_3 .de_nav li span:hover {
  background: #ddd;
}

.de_light .de_tab.tab_style_3 .de_nav li.active span {
  background: #eee;
  color: #fff;
}

.text-light .de_tab.tab_style_3 .de_nav li.active span {
  color: #fff;
}

.de_tab h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.de_tab h3 span {
  font-size: 40px;
}

.de_tab p {
  margin-bottom: 0;
}

.de_nav h3 {
  text-transform: uppercase;
  font-size: 24px;
  line-height: 1em;
  margin-bottom: 0;
}

/* tab de_light */

.de_tab.tab_style_4 .de_tab_content {
  border: none;
  background: none;
  padding: 0;
  border-top: none;
}

.text-light .de_tab.tab_style_4 .de_tab_content {
  border-top: none;
}

.de_tab.tab_style_4 .de_nav {
  text-align: center;
  display: inline-block;
  border-radius: 60px;
  margin-bottom: 30px;
  padding: 0;
  border: solid 1px rgba(255, 255, 255, 0.5);
}

.de_tab.tab_style_4 .de_nav li img {
  width: auto;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.7;
}

.de_tab.tab_style_4 .de_nav li.active img {
  width: auto;
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: 1;
}

.de_tab.tab_style_4 .de_nav li {
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  cursor: poInter;
  border: none;
  padding: 15px 30px 15px 30px;
  min-width: 150px;
  margin: 0;
  border-right: solid 1px rgba(255, 255, 255, 0.5);
}

.de_tab.tab_style_4 .de_nav li span {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  width: auto;
  display: inline-block;
}

.de_tab.tab_style_4 .de_nav li:last-child {
  border-radius: 0 60px 60px 0;
  border-right: none;
}

.de_tab.tab_style_4 .de_nav li:first-child {
  border-radius: 60px 0 0 60px;
}

.de_tab.tab_style_4 .de_nav li.active,
.de_tab.tab_style_4 .de_nav li.active span {
  background: #333;
  color: #fff;
}

.text-light .de_tab.tab_style_4 .de_nav li.active {
  color: #fff;
}

.de_tab.tab_style_4 .de_nav li.active h4,
.de_tab.tab_style_4 .de_nav li.active h4,
.de_tab.tab_style_4 .de_nav li.active h4 span {
  color: #fff;
}

.tab_style_4 h4,
.de_tab.tab_style_4 .de_nav li span {
  margin: 0;
  font-size: 22px;
  font-weight: 600;
}

.tab_style_4 h4 {
  margin: 0;
  font-size: 12px;
}

.de_tab .de_tab_content.tc_style-1 {
  background: none;
  padding: 0;
  padding-top: 30px;
}

.tab-small-post ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tab-small-post ul li {
  min-height: 60px;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.tab-small-post ul li {
  border-bottom: solid 1px #202220;
}

.tab-small-post ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.tab-small-post ul li img {
  position: absolute;
}

.tab-small-post ul li span {
  display: block;
  padding-left: 64px;
}

.tab-small-post ul li span.post-date {
  font-size: 11px;
}

.de_tab.timeline.nav_4 li {
  display: inline-block;
  text-align: center;
  background: none;
  width: 24%;
}

.de_tab.timeline.nav_4 li span {
  background: none;
  border: none;
  margin-top: 20px;
  font-family: var(--body-font);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.de_tab.timeline.nav_4 .dot {
  display: block;
  width: 8px;
  height: 8px;
  background: #fff;
  opacity: 1;
  margin: 0 auto;
  border-radius: 8px;
  margin-top: 1px;
}

.de_tab.timeline.nav_4 .dot:before,
.de_tab.timeline.nav_4 .dot:after {
  content: "";
  position: absolute;
  height: 5px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  top: 0;
  width: 24%;
}

.de_tab.timeline.nav_4 li:last-child .dot:before,
.de_tab.timeline.nav_4 li:last-child .dot:after {
  border-bottom: none;
}

.de_tab.timeline li .num {
  font-size: 20px;
}

.de_tab.timeline .de_tab_content {
  background: none;
  border: none;
  padding-top: 30px;
}

.de_tab .navigation_arrow {
  text-align: center;
}

.btn-left,
.btn-right {
  background: none;
  border: solid 1px rgba(255, 255, 255, 0.2);
  padding: 10px 20px 10px 20px;
  margin: 5px;
  font-family: var(--body-font);
  text-transform: uppercase;
  letter-spacing: 5px;
}

.btn-right:after {
  font-family: FontAwesome;
  content: "\f054";
  padding-left: 10px;
}

.btn-left:before {
  font-family: FontAwesome;
  content: "\f053";
  padding-right: 10px;
}

a.btn-left,
a.btn-right {
  text-decoration: none;
}

/* testimonial
    /* ================================================== */

.de_testi {
  display: block;
  margin-bottom: 10px;
}

.de_testi blockquote p {
  margin-top: 10px;
}

/*
.de_testi blockquote:before {
  font-family: FontAwesome;
  content: "\f10d";
  padding-bottom: 10px;
  font-size: 20px;
  display: inline-block;
  padding: 10px 20px 10px 20px;
  font-style: normal;
  background: #000;
  position: absolute;
  left: 15px;
  font-weight: normal;
}
*/

.de_testi blockquote .de-rating-ext {
  text-align: center;
  margin-top: 0;
}

.de_testi blockquote p {
  text-align: center;
  font-size: 16px;
  line-height: 1.7em;
  font-weight: 400;
  margin-bottom: 10px;
}

.de_testi_by div {
  color: var(--heading-font-color);
  font-weight: bold;
  margin-top: 20px;
  display: block;
  text-align: center;
  font-style: normal;
  font-size: 15px;
  line-height: 1.5em;
}

.de_testi_by div span {
  display: block;
  font-weight: 400;
  font-size: 15px;
  opacity: 0.5;
}

.de_testi_by img {
  width: 80px !important;
  height: 80px !important;
  display: block;
  margin: 0 auto;
  margin-top: 20px;
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.de_testi_pic {
  float: left;
  padding-right: 15px;
}

.de_testi_company {
  padding-top: 20px;
}

.de_testi blockquote {
  position: relative;
  display: block;
  font-family: var(--body-font);
  border: none;
  font-weight: 300;
  padding: 10px;
}

.de_testi.s2 blockquote {
  background: #ffffff;
  padding: 20px 40px 40px 40px;
  border-radius: var(--rounded-1);
  -moz-border-radius: var(--rounded-1);
  -webkit-border-radius: var(--rounded-1);
}

.text-light .de_testi.s2 blockquote {
  background: var(--bg-dark-1);
  color: #ffffff;
}

.de_testi.no-bg blockquote {
  background: none;
}

.de_testi blockquote:before {
  position: absolute;
  font-family: "FontAwesome";
  content: "\f10e";
  color: rgba(255, 255, 255, 0.05);
  z-index: 100;
  font-size: 84px;
  background: none;
  top: 20px;
  right: 0;
  padding: 20px;
  z-index: -1;
}

.de_testi.type-2.review blockquote {
  padding: 50px;
}

.de_testi.type-2.review blockquote:before {
  display: none;
}

.de_testi.type-2.review p {
  padding-top: 0;
}

.de_testi.type-2.review h3 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px;
}

.text-light .de_testi.type-2 blockquote {
  color: #fff;
  background: var(--bg-color-odd);
  border: var(--border-default);
}

.de_testi.type-2 blockquote p {
  font-family: var(--body-font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7em;
  letter-spacing: -0.1px;
}

.de_testi.type-2 .de_testi_by {
  font-size: 14px;
  font-weight: normal;
}

.de_testi.opt-3 blockquote {
  background: none;
  color: #555;
  padding-top: 0;
  font-weight: 400;
}

.de_testi.opt-3 blockquote p {
  font-size: 14px;
}

.de_testi.opt-3 blockquote:before {
  color: #fff;
}

.de_testi.opt-3 .de_testi_by {
  font-size: 14px;
  color: #000;
}

.de_testi.de-border blockquote {
  border: solid 5px rgba(0, 0, 0, 0.05);
}

/* new timeline */

.site-timeline-content {
  position: relative;
}

.de-timeline-article .site-center-line {
  position: absolute;
  width: 2px;
  height: 100%;
  top: 5%;
  left: 50%;
  margin-left: -2px;
  bottom: 5%;
}
.year__ {
  display: inline-block;
}
.de-timeline-article.odd .site-center-line {
  background: var(--primary-color);
}
.de-timeline-article.even .site-center-line {
  background: var(--primary-color);
}
.de-timeline-article {
  width: 100%;
  position: relative;
  overflow: hidden;
  margin: 0;
  margin-top: -2%;
}
.de-timeline-article .content-left-container,
.de-timeline-article .content-right-container {
  max-width: 47%;
  width: 100%;
  margin-bottom: 80px;
}
.de-timeline-article .content-left,
.de-timeline-article .content-right {
  position: relative;
  width: auto;
  padding: 60px 25px 20px;
}
.de-timeline-title {
  margin-top: 0;
}
.de-timeline-article p {
  padding: 0;
  font-size: 15px;
  position: relative;
}
.de-timeline-article .content-left-container {
  float: left;
}
h4.de-timeline-year {
  margin: 0;
  display: inline-block;
  padding: 10px 25px;
  border-radius: 21px;
  color: #fff;
}
.de-timeline-article.even h4.de-timeline-year {
  color: var(--heading-font-color);
}
.de-timeline-article.odd .year__ {
  float: left;
}
.de-timeline-article.odd h4.de-timeline-year {
  background: var(--primary-color);
}
.de-timeline-article.even .year__ {
  float: right;
}
.de-timeline-article.even h4.de-timeline-year {
  background: var(--primary-color);
}
.de-timeline-article .d-line {
  position: absolute;
  width: 55px;
  height: 2px;
  top: 20px;
  margin-left: 0;
}
.de-timeline-article.odd .d-line {
  left: 50%;
  background: var(--primary-color);
}
.de-timeline-article.even .d-line {
  right: 50%;
  background: var(--primary-color);
}
.de-timeline-article .owl-carousel {
  position: relative;
  width: auto;
  padding: 60px 25px 20px;
}
.de-timeline-article .content-right-container {
  float: right;
}
.de-timeline-article .meta-dot {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  border-radius: 100%;
}
.de-timeline-article.odd .meta-dot {
  background: var(--primary-color);
}
.de-timeline-article.even .meta-dot {
  background: var(--primary-color);
}
@media only screen and (max-width: 830px) {
  .de-timeline-article .site-center-line {
    margin-left: 0;
    top: 30px;
    left: 30px;
  }
  .de-timeline-article .meta-dot {
    margin-left: 0;
    left: 20px;
  }
  .de-timeline-article .content-left-container,
  .de-timeline-article .content-right-container {
    max-width: 100%;
    width: auto;
    float: none;
    margin-left: 50px;
  }
  .de-timeline-article .content-left-container {
    margin-bottom: 20px;
  }
  .de-timeline-article .content-left,
  .de-timeline-article .content-right {
    padding: 10px 25px;
    min-height: 65px;
  }
  .de-timeline-article .content-left:before {
    content: "\f0d9";
    right: auto;
    left: -8px;
  }
  .de-timeline-article .content-right:before {
    display: none;
  }
  h4.de-timeline-year {
    position: absolute;
    top: 0;
    left: 60px;
  }
  .de-timeline-article.odd .d-line {
    left: 30px;
  }
  .de-timeline-article.even .d-line {
    right: 0;
    left: 30px;
  }
  .de-timeline-article.odd .content-left-container {
    padding-top: 20px;
  }
  .de-timeline-article.even .content-left-container {
    padding-top: 50px;
  }
  .de-timeline-article.odd .content-left-container .owl-carousel {
    padding: 60px 20px 0 20px;
  }
  .de-timeline-article.even .content-right-container .owl-carousel {
    padding: 0px 20px 60px 20px;
  }
}

/* close new timeline */

.v-center {
  min-height: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  background: #ffffff;
}

.d-flex-2 {
  display: flex;
  align-items: center;
}

.timeline-area {
  padding: 80px 0;
}

.all-timelines {
  position: relative;
}

.timelines h2 {
  text-align: center;
  color: #fff;
  font-weight: 600;
  margin-bottom: 40px;
}

.all-timelines::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
  width: 2px;
  background: #efa22f;
  top: 20px;
}

.single-timeline {
  margin-bottom: 22px;
}

.timeline-blank {
  width: 50%;
}

.timeline-text {
  width: 50%;
  padding-left: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.timeline-text h6 {
  color: #f0f1f2;
  font-weight: 900;
  display: inline-block;
  font-size: 1rem;
}

.timeline-text span {
  color: #f0f1f2;
  display: block;
  width: 100%;
}

.single-timeline:nth-child(even) .timeline-text span {
  text-align: right;
}

.t-circle {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  left: -6px;
  background: #efa22f;
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.single-timeline:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.single-timeline:nth-child(even) .t-circle {
  right: -6px;
  left: unset;
}

.single-timeline:nth-child(even) .timeline-text {
  padding-left: 0;
  padding-right: 30px;
  text-align: right;
}

@media all and (max-width: 768px) {
  .all-timelines::before {
    right: unset;
    top: 0;
  }

  .single-timeline:nth-child(2n) .timeline-text {
    padding-left: 30px;
    padding-right: 0;
    text-align: left;
  }

  .single-timeline:nth-child(2n) .t-circle {
    left: -6px;
    right: unset;
  }

  .timeline-blank {
    display: none;
  }

  .timeline-text {
    width: 100%;
  }

  .single-timeline:nth-child(even) .timeline-text span {
    text-align: left !important;
  }
}

@media all and (max-width: 360px) {
  .all-timelines::before {
    top: 32px;
  }
}

/* css attributes */

.overflow-hidden {
  overflow: hidden;
}

.border1 {
  border-width: 1px;
}

.bordertop {
  border-top: solid 1px #eee;
}

/* ================================================== */

/* anim */

/* ================================================== */

header,
.hover,
.hover *,
.de_tab .de_nav li span,
a.btn-line:after,
.de_count,
.social-icons a i,
.de_tab.tab_methods .de_nav li span,
.de_tab.tab_methods .de_nav li span:hover,
.mfp-close,
.mfp-close:hover,
.text-rotate-wrap,
.text-rotate-wrap .text-item,
.carousel-item .pf_text .title,
.carousel-item:hover .pf_text .title,
.carousel-item .pf_text .title .type,
.carousel-item:hover .pf_text .title .type,
.owl-slider-nav .next,
.owl-slider-nav .prev,
#back-to-top.show,
#back-to-top.hide,
.social-icons-sm i,
.social-icons-sm i:hover,
.de_tab .de_nav li span,
#popup-box.popup-show,
#popup-box.popup-hide,
.d-btn-close,
.btn-main,
.de_tab.tab_style_4 .de_nav li,
.form-subscribe input[type="text"],
#mainmenu *,
#mainmenu a span,
#mainmenu a.active span,
.error_input,
.de_tab.tab_methods.style-2 .de_nav li.active .arrow,
.owl-item.active.center div blockquote,
.mask *,
.mask .cover,
.mask:hover .cover,
.mask img,
.mask:hover img,
.accordion .content,
a.btn-border,
#contact_form input,
#form_subscribe input[type="text"],
.logo-carousel img,
a.a-underline *,
.dropdown *,
.form-border *,
.d-carousel *,
#slider-carousel *,
.container-timeline *,
.d_demo_img *,
.carousel-control-next-icon,
.carousel-control-prev-icon,
.grayscale,
.hover-color,
.show-on-scroll,
#mainmenu > li::before,
.btn-plus,
.btn-plus *,
#topbar,
#extra-wrap,
#btn-extra,
#btn-extra *,
.crumb *,
.active-show,
.de-dot *,
#selector *,
.de__pcard *,
#de_notif {
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  -moz-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  outline: none;
}

a.btn-fx:after,
a.btn-fx:hover:after,
a.btn-fx:before,
a.btn-fx:hover:before,
#mainmenu li,
#mainmenu li ul,
.widget-post li .post-date,
.items_filter *,
.owl-prev,
.owl-next {
  -o-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -webkit-transition: 0.2s ease;
  transition: 0.2s ease;
  outline: none;
}

header.header-mobile #mainmenu > li > span {
  -o-transition: none;
  -ms-transition: none;
  -moz-transition: none;
  -webkit-transition: none;
  transition: none;
  outline: none;
}

@-webkit-keyframes scaleIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(1.5, 1.5, 1.5);
    transform: scale3d(1.5, 1.5, 1.5);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(1.5, 1.5, 1.5);
    transform: scale3d(1.5, 1.5, 1.5);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.scaleIn {
  -webkit-animation-name: scaleIn;
  animation-name: scaleIn;
}

@-webkit-keyframes scaleInFade {
  from {
    opacity: 0;
    -webkit-transform: scale3d(1.5, 1.5, 1.5);
    transform: scale3d(1.5, 1.5, 1.5);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes scaleInFade {
  from {
    opacity: 0;
    -webkit-transform: scale3d(1.5, 1.5, 1.5);
    transform: scale3d(1.5, 1.5, 1.5);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.scaleInFade {
  -webkit-animation-name: scaleInFade;
  animation-name: scaleInFade;
}

@-webkit-keyframes scaleOutFade {
  from {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1, 1);
    transform: scale(1, 1, 1);
  }
}

@keyframes scaleOutFade {
  from {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1, 1, 1);
    transform: scale(1, 1, 1);
  }
}

.scaleOut {
  -webkit-animation-name: scaleOutFade;
  animation-name: scaleOutFade;
}

@-webkit-keyframes widthInFade {
  from {
    opacity: 0;
    width: 1px;
  }

  100% {
    opacity: 1;
    width: 100px;
  }
}

@keyframes widthInFade {
  from {
    opacity: 0;
    width: 1px;
  }

  100% {
    opacity: 1;
    width: 100px;
  }
}

.widthInFade {
  -webkit-animation-name: widthInFade;
  animation-name: widthInFade;
}

/* ================================================== */

/* video */

/* ================================================== */

video,
object {
  display: inline-block;
  vertical-align: baseline;
  min-width: 100%;
  min-height: 100%;
}

.de-video-container {
  top: 0%;
  left: 0%;
  height: 500px;
  width: 100%;
  overflow: hidden;
}

.de-video-content {
  width: 100%;
  position: absolute;
  z-index: 10;
}

.de-video-overlay {
  position: absolute;
  width: 100%;
  min-height: 100%;
  background: rgba(20, 20, 20, 0.5);
}

.video-fixed {
  width: 100%;
  position: fixed;
  top: 0;
}

/* youtube, vimeo */

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.de-video-container .btn-line:hover:after,
.de-video-container a.btn-line:hover:after,
.de-video-container a.btn-line.hover:after {
  color: #eceff3;
}

/* ================================================== */

/* map */

/* ================================================== */

/* --------------- map --------------- */

#map {
  width: 100%;
  height: 500px;
}

.map iframe {
  width: 100%;
  border: solid 1px #ccc;
  padding: 2px;
  background: #fff;
}

.map-container {
  width: 100%;
  height: 380px;
  overflow: hidden;
}

.map-container iframe {
  width: 100%;
}

.de-map-hotspot {
  position: relative;
}

.de-map-hotspot img {
  width: 100%;
}

.de-spot {
  padding: 0;
  margin: 0;
  position: absolute;
  vertical-align: center;
  text-align: center;
}

.de-spot span {
  position: absolute;
  display: inline-block;
  background: #ffffff;
  padding: 0 10px;
  font-size: 12px;
  font-weight: bold;
  left: 30px;
  line-height: 1.8em;
  color: #35404e;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}
.dark-scheme .de-spot span {
  background: none;
  color: #ffffff;
  border: solid 2px rgba(255, 255, 255, 0.25);
}
.de-circle-1 {
  width: 15px;
  height: 15px;
  background-color: var(--tertiary-color);
  border-radius: 50%;
  position: absolute;
  margin: 5px 0 0 5px;
  left: 31%;
}

.de-circle-2 {
  border: 4px solid var(--tertiary-color);
  -webkit-border-radius: 30px;
  height: 25px;
  width: 25px;
  position: absolute;
  -webkit-animation: pulsate 1s ease-out;
  -webkit-animation-iteration-count: infinite;
  opacity: 0;
  left: 31%;
}

@-webkit-keyframes pulsate {
  0% {
    -webkit-transform: scale(0.1, 0.1);
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(1.2, 1.2);
    opacity: 0;
  }
}

/* ================================================== */

/* overide bootstrap */

/* ================================================== */

.dark-scheme .modal-header,
.nav-tabs {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}

.dark-scheme .modal-content {
  background: var(--bg-dark-1);
}

.dark-scheme .modal-footer {
  border-top-color: rgba(255, 255, 255, 0.2);
}

.dark-scheme .accordion-body {
  background: var(--bg-dark-1);
  border-color: #292f45;
}

.nav-tabs .nav-link {
  font-weight: 600;
}

.tab-default .tab-content {
  margin-top: 20px;
}

.container-fluid {
  padding: 0px;
  margin: 0px;
}

.btn-primary {
  text-shadow: none;
  border: none;
}

.btn.btn-primary:hover {
  background: #555;
}

.img-responsive {
  display: inline-block;
}

.img-shadow {
  -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.1);
}

.img-circle {
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.img-gray {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
}

img.img-auto {
  width: auto;
  height: auto;
}

img.img-rounded {
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.images-group-s1 img {
  width: 31.5%;
  margin-right: 2.5%;
  float: left;
  padding: 5px;
}

.images-group-s1 img:nth-child(2) {
  padding-top: 25%;
}

.images-group-s1 img:nth-child(3) {
  padding-top: 12.5%;
  margin-right: 0;
}

.box-rounded {
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.img-card-sm {
  width: 72px;
  background: #ffffff;
  margin: 3px;
  padding: 5px 0;
}

p {
  margin-top: 0;
}

p.lead {
  font-size: 15px;
  line-height: 32px;
  margin-top: 0;
  font-weight: 400;
  letter-spacing: -0.2px;
}

p.small {
  line-height: 1.8em;
}

p.lead.big {
  font-size: 32px !important;
}

.dark-scheme p.lead {
  color: rgba(255, 255, 255, 0.75);
}

.dark-scheme strong {
  color: #ffffff;
}

.panel-group {
  opacity: 0.8;
}

.panel-heading,
.panel-body {
  background: #27282b;
  border: solid 1px #202220;
  border-radius: 0;
}

.panel-body {
  border-top: none;
}

.progress {
  background: #27282b;
}

.panel-heading h4 a {
  display: block;
}

.panel-heading h4 a:hover {
  color: #eceff3;
}

.panel-default,
.panel-collapse,
.panel-collapse,
.panel-group .panel {
  border: none;
  border-radius: 0;
}

.panel-heading {
  background: #222;
}

.table-bordered,
.table-bordered td {
  border: solid 1px #202220;
}

blockquote {
  font-family: var(--body-font);
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.4em;
  border: none;
  border-left: solid 3px #333333;
  padding-left: 30px;
}

.rtl blockquote {
  border-left: none;
  border-right: solid 3px #333333;
  padding-left: 0px;
  padding-right: 30px;
}

.dark-scheme blockquote {
  color: #ffffff;
}

.dark-scheme blockquote span {
  color: #ffffff;
}

blockquote.s2 {
  border: none;
  text-align: left;
  background: #f2f2f2;
  padding: 30px 30px 30px 60px;
  margin-top: 20px;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
}

blockquote.s2:before {
  font-family: "FontAwesome";
  content: "\f10e";
  font-style: normal;
  position: absolute;
  margin-left: -30px;
}

blockquote.s1 {
  padding: 0px;
}

blockquote.s1:before {
  font-family: "FontAwesome";
  content: "\f10d";
  display: block;
  color: rgba(0, 0, 0, 0.1);
  z-index: -1;
  font-size: 40px;
  top: 0;
  left: 0;
}

.collapsible-link::before {
  content: "";
  width: 14px;
  height: 2px;
  background: #333;
  position: absolute;
  top: calc(50% - 1px);
  right: 1rem;
  display: block;
  transition: all 0.3s;
}

/* Vertical line */
.collapsible-link::after {
  content: "";
  width: 2px;
  height: 14px;
  background: #333;
  position: absolute;
  top: calc(50% - 7px);
  right: calc(1rem + 6px);
  display: block;
  transition: all 0.3s;
}

.text-light .collapsible-link:before,
.text-light .collapsible-link:after {
  background: #ffffff;
}

.rtl .collapsible-link::before {
  right: auto;
  left: 0px;
}

.rtl .collapsible-link::after {
  right: auto;
  left: 6px;
}

.rtl .rtl-show {
  display: block;
}

.rtl .rtl-hide {
  display: none;
}

.collapsible-link[aria-expanded="true"]::after {
  transform: rotate(90deg) translateX(-1px);
}

.collapsible-link[aria-expanded="true"]::before {
  transform: rotate(180deg);
}

.collapsible-link.text-white {
  color: #ffffff;
}

.collapsible-link.text-white::after,
.collapsible-link.text-white::before {
  background: #ffffff;
}

.accordion-style-1 {
  overflow: visible;
}

.accordion-style-1 .card {
  margin-bottom: 20px;
  border: none;
  -webkit-box-shadow: 8px 8px 50px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 8px 8px 50px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 8px 8px 50px 0px rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  overflow: hidden;
}

.pic-grey {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
}

.pic-grey:hover {
  -webkit-filter: grayscale(0);
  -moz-filter: grayscale(0);
  -o-filter: grayscale(0);
  -ms-filter: grayscale(0);
  filter: grayscale(0);
}

/* ================================================== */

/* widget */

/* ================================================== */

.widget {
  margin-bottom: 30px;
  padding-bottom: 30px;
}

footer .widget {
  margin-bottom: 0;
}

.widget ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.widget ul li {
  margin: 3px 0;
}

.widget .small-border {
  height: 2px;
  width: 30px;
  background: #fff;
  margin: 0px 0 20px 0;
  display: block;
}

.widget_category li {
  padding: 8px 20px 8px 20px;
  margin-bottom: 8px;
  background: #111;
}

.widget_category li:before {
  font-family: "FontAwesome";
  content: "\f07b";
  margin-right: 10px;
}

.de_light .widget_category li {
  background: none;
  border: solid 1px #eee;
}

.widget_category li a {
  color: #606060;
}

.widget_recent_post li a {
  color: #555;
}

.widget-post li {
  padding-bottom: 8px;
  margin-bottom: 8px;
}

.widget-post li a {
  font-weight: 600;
  display: block;
  text-decoration: none;
  color: #606060;
}

.dark-scheme .widget-post li a {
  color: #ffffff;
}

.widget-post .post-date {
  position: absolute;
  color: #222;
  margin-right: 10px;
  text-align: center;
  width: 50px;
  font-size: 10px;
  text-transform: uppercase;
}

.widget-post li:hover > .post-date {
  background: #222;
  color: #fff;
}

.widget-post .date {
  margin-top: 5px;
  margin-right: 10px;
  float: left;
  background: #333;
  color: #fff;
  display: inline-block;
  padding: 2px 3px 2px 3px;
  line-height: 1.4em;
  font-size: 12px;
  width: 60px;
  font-weight: bold;
  text-align: center;
}

.rtl .widget-post .date {
  float: right;
}

.widget .tiny-border {
  width: 100%;
  background: rgba(255, 255, 255, 0.1);
}

.footer-light .widget .tiny-border {
  background: rgba(0, 0, 0, 0.1);
}

.widget_tags li {
  text-shadow: none;
  display: inline-block;
  margin-right: 3px;
  margin-bottom: 16px;
}

.widget_tags li a {
  font-size: 14px;
  text-decoration: none;
  color: #fff !important;
  padding: 5px 10px 7px 10px;
  margin: 0 2px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  background: var(--bg-dark-1);
}

.de_light .widget_tags li a {
  color: #606060;
  border: solid 1px rgba(0, 0, 0, 0.2);
}

.widget_tags li a:hover {
  color: #555;
  border-color: #555;
}

.de_light .widget_tags li a:hover {
  color: #111;
  border-color: #111;
}

.widget_tags li a {
  border-color: #555;
}

.widget_tags li a:hover {
  border-color: #eceff3;
}

footer .widget {
  border: none;
  margin-bottom: 0;
}

.widget_tags ul {
  margin-top: 30px;
}

footer .widget.widget_tags li a {
  border-color: #222;
}

footer .widget_recent_post li {
  padding: 0 0 10px 0;
  margin: 0;
  margin-bottom: 10px;
  background: none;
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

footer .widget_recent_post li a {
  color: #ccc;
}

footer .widget h5 {
  font-size: 18px;
  margin-bottom: 20px;
}

footer .widget_list li {
  padding: 0 0 10px 0;
  margin: 0;
  margin-bottom: 10px;
  background: none;
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

footer .widget_list li a {
  color: #ccc;
}

footer .tiny-border span {
  background: #ffffff;
  display: block;
  height: 1px;
  width: 30px;
}
/* Remove extra space below footer */

body {
  margin: 0;
  padding: 0;
}

footer.cy-footer {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.cy-footer-bottom {
  margin-bottom: 0 !important;
}

html,
body {
  height: auto !important;
  overflow-x: hidden;
}
#cookit {
  position: fixed;
  width: 100%;
  bottom: 0;
  padding: 1rem 2rem;
  display: flex;
  z-index: 1022;
  background: rgba(20, 20, 20, 1) !important;
}

.dark-scheme #cookit {
  border-top: solid 1px rgba(255, 255, 255, 0.15);
}

#cookit.hidden {
  display: none;
}

#cookit #cookit-container {
  margin: auto;
  width: 1300px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

#cookit #cookit-container > * {
  margin: 0.4rem;
}

#cookit #cookit-container p {
  line-height: 1.4rem;
}

#cookit #cookit-container a {
  text-decoration: none;
}

#cookit #cookit-container a:hover {
  opacity: 0.9;
}

#cookit #cookit-container #cookit-button {
  color: #ffffff !important;
  font-size: 14px;
  font-weight: bold;
  padding: 0.25rem 2rem;
  margin-left: auto;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

/* marquee */

.d-flex {
  display: flex;
  white-space: nowrap;
}

.de-marquee-list {
  display: flex;
  align-items: top;
  -webkit-animation: loop 40s infinite linear;
  animation: loop 40s infinite linear;
}

.de-marquee-list .d-item-txt {
  font-size: 100px;
  line-height: 100px;
  padding-right: 8px;
  font-style: normal;
  font-weight: bold;
  font-family: var(--heading-font);
  color: var(--primary-color);
  user-select: none;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.75);
}

.de-marquee-list.s2 .d-item-txt {
  background: -webkit-linear-gradient(
    0deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: -moz-linear-gradient(
    0deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: linear-gradient(
    0deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 0;
}

.de-marquee-list .d-item-txt img {
  width: 80px;
  margin-top: -15px;
  margin-right: 20px;
}

.de-marquee-list .d-item-display {
  display: inline;
}

.de-marquee-list .d-item-block {
  width: 80px;
  height: 2px;
  margin: 0 20px;
  margin-right: 40px;
  padding: 0px;
  border-radius: 50%;
  display: inline-block;
  transform: translateY(-30px);
  background: var(--primary-color);
}

.de-marquee-list.s2 .d-item-block {
  height: 5px;
  background: -webkit-linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.5) 100%
  );
}

.de-marquee-list .d-item-block {
  border-radius: 0;
}

.text-light .de-marquee-list .d-item-dot {
  background: rgba(255, 255, 255, 0.3);
}

.de-marquee-list.style-2 .d-item-txt {
  font-size: 160px;
  background: rgba(255, 255, 255, 0.2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.de-marquee-list.style-2 .d-item-dot {
  transform: translateY(-0px);
  background: rgba(255, 255, 255, 0.2);
}

/* marquee */

.de-step-s1 {
  /* overflow: ; */
  position: relative;
  padding: 0 25px;
  height: 100%;
  border-radius: var(--rounded-1);
  -moz-border-radius: var(--rounded-1);
  -webkit-border-radius: var(--rounded-1);
}

.de-step-s1 p {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
}

.de-step-s1 h4 {
  position: relative;
  z-index: 1;
}

.de-step-s1 .d-number {
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 500;
  padding: 5px 10px;
  display: inline-block;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  margin-bottom: 40px;
  line-height: 1em;
  color: var(--heading-font-color);
}

.text-light .de-step-s1 .d-number {
  color: #ffffff;
}

.border-gray {
  border: solid 1px #ddd;
}

.bg-blur {
  background: rgba(0, 0, 0, 0.15);
  -webkit-backdrop-filter: blur(10px);
  -o-backdrop-filter: blur(10px);
  -moz-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

/* marquee plugin close */

.gradient-white-top {
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 50%,
    rgba(255, 255, 255, 0) 100%
  );
}

.gradient-edge-top {
  z-index: 1;
  position: absolute;
  top: 0;
  width: 100%;
  height: 30%;
  background: linear-gradient(
    180deg,
    rgba(var(--bg-dark-1-rgb), 1) 0%,
    rgba(var(--bg-dark-1-rgb), 0) 100%
  );
}

.gradient-edge-bottom {
  z-index: 1;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 30%;
  background: linear-gradient(
    0deg,
    rgba(var(--bg-dark-1-rgb), 1) 0%,
    rgba(var(--bg-dark-1-rgb), 0) 100%
  );
}

.gradient-edge-start {
  z-index: 1;
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    90deg,
    rgba(var(--bg-dark-1-rgb), 1) 0%,
    rgba(var(--bg-dark-1-rgb), 0) 100%
  );
}

.gradient-edge-end {
  z-index: 1;
  position: absolute;
  top: 0;
  width: 50%;
  right: 0;
  height: 100%;
  background: linear-gradient(
    90deg,
    rgba(var(--bg-dark-1-rgb), 0) 0%,
    rgba(var(--bg-dark-1-rgb), 1) 100%
  );
}

.gradient-edge-top.light {
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(255, 255, 255, 0) 100%
  );
}
.de-gradient-edge-bottom.light {
  background: linear-gradient(
    0deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(255, 255, 255, 0) 100%
  );
}

.dark-scheme .gradient-edge-top {
  background: linear-gradient(
    180deg,
    rgba(30, 31, 34, 1) 0%,
    rgba(30, 31, 34, 0) 100%
  );
}

.gradient-edge-top.color {
  background: linear-gradient(
    180deg,
    rgba(var(--primary-color-rgb), 1) 0%,
    rgba(var(--primary-color-rgb), 0) 100%
  );
}
.gradient-edge-bottom.color {
  background: linear-gradient(
    0deg,
    rgba(var(--primary-color-rgb), 1) 0%,
    rgba(var(--primary-color-rgb), 0) 100%
  );
}
.gradient-edge-start.color {
  background: linear-gradient(
    90deg,
    rgba(var(--primary-color-rgb), 1) 0%,
    rgba(var(--primary-color-rgb), 0) 100%
  );
}
.gradient-edge-end.color {
  background: linear-gradient(
    90deg,
    rgba(var(--primary-color-rgb), 0) 0%,
    rgba(var(--primary-color-rgb), 1) 100%
  );
}

.dark-scheme .de-gradient-edge-bottom {
  background: linear-gradient(
    0deg,
    rgba(var(--bg-dark-1-rgb), 1) 0%,
    rgba(var(--bg-dark-1-rgb), 0) 100%
  );
}

.no-border {
  border: none !important;
}

.owl-carousel.no-hide .owl-stage-outer {
  overflow: visible !important;
}

.grayscale {
  filter: grayscale(1);
}

.hover-color:hover {
  filter: grayscale(0);
}

.show-on-scroll {
  opacity: 0;
}

.show-on-scroll.show {
  opacity: 1;
}

.show-on-scroll.hide {
  opacity: 0;
}

.d_wrap {
  position: relative;
}
.d_wrap img {
  position: relative;
}
.d_wrap_sm-box {
  font-size: 15px;
  font-family: var(--heading-font);
  font-weight: bold;
  display: inline-block;
  position: absolute;
  background: rgba(30, 31, 34, 0.5);
  padding: 10px 15px;
  color: #2f394b;
  box-shadow: 5px 25px 20px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 5px 25px 20px 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 5px 25px 20px 5px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  padding-left: 60px;
}

.d_wrap_sm-box h6,
.d_wrap_sm-box h4 {
  color: var(--heading-font-color);
}

.de-rating-ext .d-val {
  color: #fff;
  margin-right: 10px;
}

.de-rating-ext {
  font-size: 14px;
}

.de-rating-ext i {
  margin-right: 2px;
  color: var(--primary-color);
}

/* select2 begin */
.select2-container--default .select2-selection--single {
  border-color: #fff;
  height: 60px;
  padding: 2.5px 0;
  border-radius: 0;
}
.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 48px;
}

.select2-dropdown {
  border-radius: 0;
  box-shadow: #444 0px 3px 5px;
  border: 0;
}

.select2-container--default {
  margin-bottom: 20px;
}
.select2-container--default img {
  width: 30px;
  margin-left: 5px;
  margin-right: 10px;
  padding: 7px 0;
}
.select2-container--default .select2-selection--single {
  background: none;
  height: 50px;
  border: solid 1px rgba(255, 255, 255, 0.2);
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}
.select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #ffffff;
}
.select2-container--default .select2-results__option--selectable {
  background: #333;
}
.select2-container--default
  .select2-results__option--highlighted.select2-results__option--selectable {
  background: var(--primary-color);
}

/* select2 end */

.grid-divider > [class*="col-"]:nth-child(n + 2):after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  border-left: solid 1px rgba(255, 255, 255, 0.3);
  height: auto;
}

.grid-divider.dark > [class*="col-"]:nth-child(n + 2):after {
  border-left: solid 1px rgba(0, 0, 0, 0.25);
}

.grid-divider.dark-divider > [class*="col-"]:nth-child(n + 2):after {
  border-left: solid 1px var(--heading-font-color);
}

.dark-scheme .grid-divider > [class*="col-"]:nth-child(n + 2):after,
.text-light .grid-divider > [class*="col-"]:nth-child(n + 2):after {
  border-left-color: rgba(255, 255, 255, 0.5);
}

/* ================================================== */

/* declass */

/* ================================================== */

/* background */
.bg-white {
  background: #ffffff;
}
.bg-black {
  background: #000000;
}

/* width (percent) */
.w-10 {
  width: 10%;
}
.w-20 {
  width: 20%;
}
.w-30 {
  width: 30%;
}
.w-40 {
  width: 40%;
}
.w-50 {
  width: 50%;
}
.w-60 {
  width: 60%;
}
.w-70 {
  width: 70%;
}
.w-80 {
  width: 80%;
}
.w-90 {
  width: 90%;
}
.w-100 {
  width: 100%;
}

/* width (px) */
.w-10px {
  width: 10px;
}
.w-20px {
  width: 20px;
}
.w-24px {
  width: 24px;
}
.w-30px {
  width: 30px;
}
.w-40px {
  width: 40px;
}
.w-50px {
  width: 50px;
}
.w-60px {
  width: 60px;
}
.w-70px {
  width: 70px;
}
.w-80px {
  width: 80px;
}
.w-90px {
  width: 90px;
}
.w-100px {
  width: 100px;
}
.w-110px {
  width: 110px;
}
.w-120px {
  width: 120px;
}
.w-130px {
  width: 130px;
}
.w-140px {
  width: 140px;
}
.w-150px {
  width: 150px;
}
.w-200px {
  width: 200px;
}
.w-250px {
  width: 250px;
}
.w-300px {
  width: 300px;
}
.w-400px {
  width: 400px;
}
.w-500px {
  width: 500px;
}

.h-auto {
  height: auto;
}

/* height (percent) */
.h-10 {
  height: 10%;
}
.h-20 {
  height: 20%;
}
.h-30 {
  height: 30%;
}
.h-40 {
  height: 40%;
}
.h-50 {
  height: 50%;
}
.h-60 {
  height: 60%;
}
.h-70 {
  height: 70%;
}
.h-80 {
  height: 80%;
}
.h-90 {
  height: 90%;
}
.h-100 {
  height: 100%;
}

/* height (px) */
.h-10px {
  height: 10px;
}
.h-20px {
  height: 20px;
}
.h-24px {
  height: 24px;
}
.h-40px {
  height: 40px;
}
.h-50px {
  height: 50px;
}
.h-60px {
  height: 60px;
}
.h-70px {
  height: 70px;
}
.h-80px {
  height: 80px;
}
.h-90px {
  height: 90px;
}
.h-100px {
  height: 100px;
}
.h-110px {
  height: 110px;
}
.h-120px {
  height: 120px;
}
.h-130px {
  height: 130px;
}
.h-140px {
  height: 140px;
}
.h-150px {
  height: 150px;
}
.h-200px {
  height: 200px;
}
.h-250px {
  height: 250px;
}
.h-300px {
  height: 300px;
}

/* top (percent) */
.top-10 {
  top: 10%;
}
.top-20 {
  top: 20%;
}
.top-30 {
  top: 30%;
}
.top-40 {
  top: 40%;
}
.top-50 {
  top: 50%;
}
.top-60 {
  top: 60%;
}
.top-70 {
  top: 70%;
}
.top-80 {
  top: 80%;
}
.top-90 {
  top: 90%;
}
.top-100 {
  top: 100%;
}

/* top (px) */
.top-10px {
  top: 10px;
}
.top-20px {
  top: 20px;
}
.top-30px {
  top: 30px;
}
.top-40px {
  top: 40px;
}
.top-50px {
  top: 50px;
}
.top-60px {
  top: 60px;
}
.top-70px {
  top: 70px;
}
.top-80px {
  top: 80px;
}
.top-90px {
  top: 90px;
}
.top-100px {
  top: 100px;
}

/* bottom (percent) */
.bottom-10 {
  bottom: 10%;
}
.bottom-20 {
  bottom: 20%;
}
.bottom-30 {
  bottom: 30%;
}
.bottom-40 {
  bottom: 40%;
}
.bottom-50 {
  bottom: 50%;
}
.bottom-60 {
  bottom: 60%;
}
.bottom-70 {
  bottom: 70%;
}
.bottom-80 {
  bottom: 80%;
}
.bottom-90 {
  bottom: 90%;
}
.bottom-100 {
  bottom: 100%;
}

/* bottom (px) */
.bottom-10px {
  bottom: 10px;
}
.bottom-20px {
  bottom: 20px;
}
.bottom-30px {
  bottom: 30px;
}
.bottom-40px {
  bottom: 40px;
}
.bottom-50px {
  bottom: 50px;
}
.bottom-60px {
  bottom: 60px;
}
.bottom-70px {
  bottom: 70px;
}
.bottom-80px {
  bottom: 80px;
}
.bottom-90px {
  bottom: 90px;
}
.bottom-100px {
  bottom: 100px;
}

/* top negative (px) */
.top-min-10 {
  top: -10px;
}
.top-min-20 {
  top: -20px;
}
.top-min-30 {
  top: -30px;
}
.top-min-40 {
  top: -40px;
}
.top-min-50 {
  top: -50px;
}
.top-min-60 {
  top: -60px;
}
.top-min-70 {
  top: -70px;
}
.top-min-80 {
  top: -80px;
}
.top-min-90 {
  top: -90px;
}
.top-min-100 {
  top: -100px;
}

/* bottom negative (px) */
.bottom-min-10 {
  bottom: -10px;
}
.bottom-min-20 {
  bottom: -20px;
}
.bottom-min-30 {
  bottom: -30px;
}
.bottom-min-40 {
  bottom: -40px;
}
.bottom-min-50 {
  bottom: -50px;
}
.bottom-min-60 {
  bottom: -60px;
}
.bottom-min-70 {
  bottom: -70px;
}
.bottom-min-80 {
  bottom: -80px;
}
.bottom-min-90 {
  bottom: -90px;
}
.bottom-min-100 {
  bottom: -100px;
}

/* left pos (percent) */
.start-10 {
  left: 10%;
}
.start-20 {
  left: 20%;
}
.start-30 {
  left: 30%;
}
.start-40 {
  left: 40%;
}
.start-50 {
  left: 50%;
}
.start-60 {
  left: 60%;
}
.start-70 {
  left: 70%;
}
.start-80 {
  left: 80%;
}
.start-90 {
  left: 90%;
}
.start-100 {
  left: 100%;
}

/* left pos (px) */
.start-10px {
  left: 10px;
}
.start-20px {
  left: 20px;
}
.start-30px {
  left: 30px;
}
.start-40px {
  left: 40px;
}
.start-50px {
  left: 50px;
}
.start-60px {
  left: 60px;
}
.start-70px {
  left: 70px;
}
.start-80px {
  left: 80px;
}
.start-90px {
  left: 90px;
}
.start-100px {
  left: 100px;
}

/* right  pos (percent) */
.end-10 {
  right: 10%;
}
.end-20 {
  right: 20%;
}
.end-30 {
  right: 30%;
}
.end-40 {
  right: 40%;
}
.end-50 {
  right: 50%;
}
.end-60 {
  right: 60%;
}
.end-70 {
  right: 70%;
}
.end-80 {
  right: 80%;
}
.end-90 {
  right: 90%;
}
.end-100 {
  right: 100%;
}

/* right  pos (px) */
.end-10px {
  right: 10px;
}
.end-20px {
  right: 20px;
}
.end-30px {
  right: 30px;
}
.end-40px {
  right: 40px;
}
.end-50px {
  right: 50px;
}
.end-60px {
  right: 60px;
}
.end-70px {
  right: 70px;
}
.end-80px {
  right: 80px;
}
.end-90px {
  right: 90px;
}
.end-100px {
  right: 100px;
}

/* margin-left (percent) */
.ms-10 {
  margin-left: 10%;
}
.ms-20 {
  margin-left: 20%;
}
.ms-30 {
  margin-left: 30%;
}
.ms-40 {
  margin-left: 40%;
}
.ms-50 {
  margin-left: 50%;
}
.ms-60 {
  margin-left: 60%;
}
.ms-70 {
  margin-left: 70%;
}
.ms-80 {
  margin-left: 80%;
}
.ms-90 {
  margin-left: 90%;
}
.ms-100 {
  margin-left: 100%;
}

/* margin-left (px) */
.ms-10px {
  margin-left: 10px;
}
.ms-20px {
  margin-left: 20px;
}
.ms-30px {
  margin-left: 30px;
}
.ms-40px {
  margin-left: 40px;
}
.ms-50px {
  margin-left: 50px;
}
.ms-60px {
  margin-left: 60px;
}
.ms-70px {
  margin-left: 70px;
}
.ms-80px {
  margin-left: 80px;
}
.ms-90px {
  margin-left: 90px;
}
.ms-100px {
  margin-left: 100px;
}

/* margin top (px) */
.mt-10 {
  margin-top: 10px;
}
.mt-20 {
  margin-top: 20px;
}
.mt-30 {
  margin-top: 30px;
}
.mt-40 {
  margin-top: 40px;
}
.mt-50 {
  margin-top: 50px;
}
.mt-60 {
  margin-top: 60px;
}
.mt-70 {
  margin-top: 70px;
}
.mt-80 {
  margin-top: 80px;
}
.mt-90 {
  margin-top: 90px;
}
.mt-100 {
  margin-top: 100px;
}

/* margin top negative (px) */
.mt-min-10 {
  margin-top: -10px;
}
.mt-min-20 {
  margin-top: -20px;
}
.mt-min-30 {
  margin-top: -30px;
}
.mt-min-40 {
  margin-top: -40px;
}
.mt-min-50 {
  margin-top: -50px;
}
.mt-min-60 {
  margin-top: -60px;
}
.mt-min-70 {
  margin-top: -70px;
}
.mt-min-80 {
  margin-top: -80px;
}
.mt-min-90 {
  margin-top: -90px;
}
.mt-min-100 {
  margin-top: -100px;
}

/* margin bottom (px) */
.mb-10 {
  margin-bottom: 10px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mb-30 {
  margin-bottom: 30px;
}
.mb-40 {
  margin-bottom: 40px;
}
.mb-50 {
  margin-bottom: 50px;
}
.mb-60 {
  margin-bottom: 60px;
}
.mb-70 {
  margin-bottom: 70px;
}
.mb-80 {
  margin-bottom: 80px;
}
.mb-90 {
  margin-bottom: 90px;
}
.mb-100 {
  margin-bottom: 100px;
}

/* margin bottom negative (px) */
.mb-min-10 {
  margin-bottom: -10px;
}
.mb-min-20 {
  margin-bottom: -20px;
}
.mb-min-30 {
  margin-bottom: -30px;
}
.mb-min-40 {
  margin-bottom: -40px;
}
.mb-min-50 {
  margin-bottom: -50px;
}
.mb-min-60 {
  margin-bottom: -60px;
}
.mb-min-70 {
  margin-bottom: -70px;
}
.mb-min-80 {
  margin-bottom: -80px;
}
.mb-min-90 {
  margin-bottom: -90px;
}
.mb-min-100 {
  margin-bottom: -100px;
}

/* margin left negative (px) */
.ms-min-10 {
  margin-left: -10px;
}
.ms-min-20 {
  margin-left: -20px;
}
.ms-min-30 {
  margin-left: -30px;
}
.ms-min-40 {
  margin-left: -40px;
}
.ms-min-50 {
  margin-left: -50px;
}
.ms-min-60 {
  margin-left: -60px;
}
.ms-min-70 {
  margin-left: -70px;
}
.ms-min-80 {
  margin-left: -80px;
}
.ms-min-90 {
  margin-left: -90px;
}
.ms-min-100 {
  margin-left: -10p0x;
}

/* margin top negative (px) */
.me-min-10 {
  margin-right: -10px;
}
.me-min-20 {
  margin-right: -20px;
}
.me-min-30 {
  margin-right: -30px;
}
.me-min-40 {
  margin-right: -40px;
}
.me-min-50 {
  margin-right: -50px;
}
.me-min-60 {
  margin-right: -60px;
}
.me-min-70 {
  margin-right: -70px;
}
.me-min-80 {
  margin-right: -80px;
}
.me-min-90 {
  margin-right: -90px;
}
.me-min-100 {
  margin-right: -100px;
}

/* font-size (px) */
.fs-12 {
  font-size: 12px;
}
.fs-14 {
  font-size: 14px;
}
.fs-15 {
  font-size: 15px;
}
.fs-16 {
  font-size: 16px;
}
.fs-18 {
  font-size: 18px;
}
.fs-20 {
  font-size: 20px;
}
.fs-24 {
  font-size: 24px;
}
.fs-28 {
  font-size: 28px;
}
.fs-30 {
  font-size: 30px;
}
.fs-32 {
  font-size: 20px;
}
.fs-36 {
  font-size: 36px;
}
.fs-40 {
  font-size: 40px;
}
.fs-48 {
  font-size: 48px;
}
.fs-56 {
  font-size: 56px;
}
.fs-60 {
  font-size: 60px;
}
.fs-64 {
  font-size: 64px;
}
.fs-72 {
  font-size: 72px;
}
.fs-84 {
  font-size: 84px;
}
.fs-96 {
  font-size: 96px;
}
.fs-120 {
  font-size: 120px;
}
.fs-150 {
  font-size: 150px;
}
.fs-200 {
  font-size: 200px;
}

/* font-weight */
.fw-100 {
  font-weight: 100;
}
.fw-200 {
  font-weight: 200;
}
.fw-400 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-600 {
  font-weight: 600;
}
.fw-bold {
  font-weight: bold;
}

/* margin left (px) */
.ms-10 {
  margin-left: 10%;
}
.ms-20 {
  margin-left: 20%;
}
.ms-30 {
  margin-left: 30%;
}
.ms-40 {
  margin-left: 40%;
}
.ms-50 {
  margin-left: 50%;
}
.ms-60 {
  margin-left: 60%;
}
.ms-70 {
  margin-left: 70%;
}
.ms-80 {
  margin-left: 80%;
}
.ms-90 {
  margin-left: 90%;
}
.ms-100 {
  margin-left: 100%;
}

/* padding (px) */
.p-10 {
  padding: 10px;
}
.p-15 {
  padding: 15px;
}
.p-20 {
  padding: 20px;
}
.p-30 {
  padding: 30px;
}
.p-40 {
  padding: 40px;
}
.p-50 {
  padding: 50px;
}
.p-60 {
  padding: 60px;
}
.p-70 {
  padding: 70px;
}
.p-80 {
  padding: 80px;
}
.p-90 {
  padding: 90px;
}
.p-100 {
  padding: 100px;
}

/* padding bottom (px) */
.pb-10 {
  padding-bottom: 10px;
}
.pb-20 {
  padding-bottom: 20px;
}
.pb-30 {
  padding-bottom: 30px;
}
.pb-40 {
  padding-bottom: 40px;
}
.pb-50 {
  padding-bottom: 50px;
}
.pb-60 {
  padding-bottom: 60px;
}
.pb-70 {
  padding-bottom: 70px;
}
.pb-80 {
  padding-bottom: 80px;
}
.pb-90 {
  padding-bottom: 90px;
}
.pb-100 {
  padding-bottom: 100px;
}

/* padding top (px) */
.pt-10 {
  padding-top: 10px;
}
.pt-20 {
  padding-top: 20px;
}
.pt-30 {
  padding-top: 30px;
}
.pt-40 {
  padding-top: 40px;
}
.pt-50 {
  padding-top: 50px;
}
.pt-60 {
  padding-top: 60px;
}
.pt-70 {
  padding-top: 70px;
}
.pt-80 {
  padding-top: 80px;
}
.pt-90 {
  padding-top: 90px;
}
.pt-100 {
  padding-top: 100px;
}
.pt-110 {
  padding-top: 110px;
}
.pt-120 {
  padding-top: 120px;
}

/* padding left (px) */
.ps-10 {
  padding-left: 10px;
}
.ps-20 {
  padding-left: 20px;
}
.ps-30 {
  padding-left: 30px;
}
.ps-40 {
  padding-left: 40px;
}
.ps-50 {
  padding-left: 50px;
}
.ps-60 {
  padding-left: 60px;
}
.ps-70 {
  padding-left: 70px;
}
.ps-80 {
  padding-left: 80px;
}
.ps-90 {
  padding-left: 90px;
}
.ps-100 {
  padding-left: 100px;
}

.rtl .ps-10 {
  padding-right: 10px;
  padding-left: 0;
}
.rtl .ps-20 {
  padding-right: 20px;
  padding-left: 0;
}
.rtl .ps-30 {
  padding-right: 30px;
  padding-left: 0;
}
.rtl .ps-40 {
  padding-right: 40px;
  padding-left: 0;
}
.rtl .ps-50 {
  padding-right: 50px;
  padding-left: 0;
}
.rtl .ps-60 {
  padding-right: 60px;
  padding-left: 0;
}
.rtl .ps-70 {
  padding-right: 70px;
  padding-left: 0;
}
.rtl .ps-80 {
  padding-right: 80px;
  padding-left: 0;
}
.rtl .ps-90 {
  padding-right: 90px;
  padding-left: 0;
}
.rtl .ps-100 {
  padding-right: 100px;
  padding-left: 0;
}

/* border white */
.border-white-1 {
  border: solid 1px white;
}
.border-white-2 {
  border: solid 2px white;
}
.border-white-3 {
  border: solid 3px white;
}
.border-white-4 {
  border: solid 4px white;
}
.border-white-5 {
  border: solid 5px white;
}
.border-white-6 {
  border: solid 6px white;
}
.dashed-1-white {
  border: dashed 1px white;
}

/* border bottom white with transparency */
.border-bottom-white-trans-1 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
}
.border-bottom-white-trans-2 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.2);
}
.border-bottom-white-trans-3 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.3);
}
.border-bottom-white-trans-4 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.4);
}
.border-bottom-white-trans-5 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
}
.border-bottom-white-trans-6 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.6);
}
.border-bottom-white-trans-7 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.7);
}
.border-bottom-white-trans-8 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.8);
}
.border-bottom-white-trans-9 {
  border-bottom: solid 1px rgba(255, 255, 255, 0.9);
}

/* border bottom grey */
.border-bottom-1-grey {
  border-bottom: solid 1px #dddddd;
}

/* border bottom dark */
.border-bottom-1-dark {
  border-bottom: solid 1px var(--bg-dark-1);
}

/* border bottom dark */
.border-bottom-1-light {
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
}

/* hover effects */
.hover:hover .hover-scale-1-2 {
  transform: scale(1.2);
}
.hover-scale-in-1 {
  transform: scale(1.1);
}
.hover:hover .hover-scale-in-1 {
  transform: scale(1);
}
.hover-scale-in-3 {
  transform: scale(3);
}
.hover:hover .hover-scale-in-3 {
  transform: scale(1);
}
.hover-op-0 {
  opacity: 1;
}
.hover:hover .hover-op-0 {
  opacity: 0;
}
.hover-op-1,
.hover-op-05 {
  opacity: 0;
}
.hover:hover .hover-op-1 {
  opacity: 1;
}
.hover:hover .hover-op-05 {
  opacity: 0.5;
}
.hover:hover .hover-scale-1-1 {
  transform: scale(1.1);
}
.hover:hover .hover-scale-1-2 {
  transform: scale(1.2);
}
.hover:hover .hover-scale-in-3 {
  transform: scale(1);
  opacity: 1;
}
.hover:hover .hover-bg-color {
  background: var(--primary-color) !important;
}
.hover:hover .hover-bg-color-2 {
  background: var(--primary-color) !important;
}
.hover:hover .hover-bg-dark {
  background: var(--heading-font-color);
}
.hover-mh-60 {
  max-height: 0px;
  overflow: hidden;
}
.hover:hover .hover-mh-60 {
  max-height: 60px;
}
.hover:hover .hover-top-0 {
  top: 0;
}
.hover:hover .hover-pb-40 {
  padding-bottom: 40px;
}
.hover-mt-40 {
  margin-top: 40px;
}
.hover:hover .hover-mt-40 {
  margin-top: 0px;
}
.hover:hover .hover-mt-0 {
  margin-top: 0;
}
.hover:hover .hover-jello {
  animation-name: jello;
  animation-duration: 1.5s;
}
.hover:hover .hover-text-light * {
  color: #ffffff;
}
.hover:hover .hover-jello {
  animation-name: jello;
  animation-duration: 1.5s;
}
.hover:hover .hover-bounce {
  animation-name: bounce;
  animation-duration: 1.5s;
}

.inline-block {
  display: inline-block;
}

.infinite {
  animation-iteration-count: infinite;
}

/* opacity */
.op-05 {
  opacity: 0.05;
}
.op-1 {
  opacity: 0.1;
}
.op-2 {
  opacity: 0.2;
}
.op-3 {
  opacity: 0.3;
}
.op-4 {
  opacity: 0.4;
}
.op-5 {
  opacity: 0.5;
}
.op-6 {
  opacity: 0.6;
}
.op-7 {
  opacity: 0.7;
}
.op-8 {
  opacity: 0.8;
}
.op-9 {
  opacity: 0.9;
}

/* line height em */
.lh-1 {
  line-height: 1em;
}
.lh-1-1 {
  line-height: 1.1em;
}
.lh-1-2 {
  line-height: 1.2em;
}
.lh-1-3 {
  line-height: 1.3em;
}
.lh-1-4 {
  line-height: 1.4em;
}
.lh-1-5 {
  line-height: 1.5em;
}
.lh-1-6 {
  line-height: 1.6em;
}
.lh-1-7 {
  line-height: 1.7em;
}
.lh-1-8 {
  line-height: 1.8em;
}

/* min height (px) */
.mh-80 {
  min-height: 80px;
}
.mh-100 {
  min-height: 100px;
}
.mh-200 {
  min-height: 200px;
}
.mh-300 {
  min-height: 300px;
}
.mh-400 {
  min-height: 400px;
}
.mh-500 {
  min-height: 500px;
}
.mh-600 {
  min-height: 600px;
}
.mh-700 {
  min-height: 700px;
}
.mh-800 {
  min-height: 800px;
}
.mh-900 {
  min-height: 900px;
}
.mh-1000 {
  min-height: 1000px;
}

/* background dark */
.bg-dark-10 {
  background: rgba(var(--bg-dark-1-rgb), 0.1);
}
.bg-dark-20 {
  background: rgba(var(--bg-dark-1-rgb), 0.2);
}
.bg-dark-30 {
  background: rgba(var(--bg-dark-1-rgb), 0.3);
}
.bg-dark-40 {
  background: rgba(var(--bg-dark-1-rgb), 0.4);
}
.bg-dark-50 {
  background: rgba(var(--bg-dark-1-rgb), 0.5);
}

/* overlay-black */
.overlay-dark-1 {
  background: rgba(var(--bg-dark-1-rgb), 0.1);
}
.overlay-dark-2 {
  background: rgba(var(--bg-dark-1-rgb), 0.2);
}
.overlay-dark-3 {
  background: rgba(var(--bg-dark-1-rgb), 0.3);
}
.overlay-dark-4 {
  background: rgba(var(--bg-dark-1-rgb), 0.4);
}
.overlay-dark-5 {
  background: rgba(var(--bg-dark-1-rgb), 0.5);
}
.overlay-dark-6 {
  background: rgba(var(--bg-dark-1-rgb), 0.6);
}
.overlay-dark-7 {
  background: rgba(var(--bg-dark-1-rgb), 0.7);
}
.overlay-dark-8 {
  background: rgba(var(--bg-dark-1-rgb), 0.8);
}
.overlay-dark-9 {
  background: rgba(var(--bg-dark-1-rgb), 0.9);
}

/* overlay-black */
.overlay-black-1 {
  background: rgba(0, 0, 0, 0.1);
}
.overlay-black-2 {
  background: rgba(0, 0, 0, 0.2);
}
.overlay-black-3 {
  background: rgba(0, 0, 0, 0.3);
}
.overlay-black-4 {
  background: rgba(0, 0, 0, 0.4);
}
.overlay-black-5 {
  background: rgba(0, 0, 0, 0.5);
}
.overlay-black-6 {
  background: rgba(0, 0, 0, 0.6);
}
.overlay-black-7 {
  background: rgba(0, 0, 0, 0.7);
}
.overlay-black-8 {
  background: rgba(0, 0, 0, 0.8);
}
.overlay-black-9 {
  background: rgba(0, 0, 0, 0.9);
}

/* overlay-white */
.overlay-white-1 {
  background: rgba(255, 255, 255, 0.1);
}
.overlay-white-2 {
  background: rgba(255, 255, 255, 0.2);
}
.overlay-white-3 {
  background: rgba(255, 255, 255, 0.3);
}
.overlay-white-4 {
  background: rgba(255, 255, 255, 0.4);
}
.overlay-white-5 {
  background: rgba(255, 255, 255, 0.5);
}
.overlay-white-6 {
  background: rgba(255, 255, 255, 0.6);
}
.overlay-white-7 {
  background: rgba(255, 255, 255, 0.7);
}
.overlay-white-8 {
  background: rgba(255, 255, 255, 0.8);
}
.overlay-white-9 {
  background: rgba(255, 255, 255, 0.9);
}

/* positions */
.absolute,
.abs {
  position: absolute;
}
.abs-center {
  left: 50%;
  transform: translateX(-50%);
}
.abs-middle {
  top: 50%;
  transform: translateY(-50%);
}
.abs-centered {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.relative,
.position-relative {
  position: relative;
}

/* z-index */
.z-1 {
  z-index: 1;
}
.z-2 {
  z-index: 2;
}
.z-3 {
  z-index: 3;
}
.z-4 {
  z-index: 4;
}
.z-1000 {
  z-index: 1000;
}

.auto-height {
  height: 100%;
  padding-top: 100%;
}

.rounded-top-60 {
  border-radius: 60px 60px 0 0;
  -moz-border-radius: 60px 60px 0 0;
  -webkit-border-radius: 60px 60px 0 0;
}

.rounded-bottom-60 {
  border-radius: 0 0 60px 60px;
  -moz-border-radius: 0 0 60px 60px;
  -webkit-border-radius: 0 0 60px 60px;
}

.rounded-bottom-end-60 {
  border-radius: 0 0 60px 0;
  -moz-border-radius: 0 0 60px 0;
  -webkit-border-radius: 0 0 60px 0;
}

.rounded-bottom-start-60 {
  border-radius: 0 0 0 60px;
  -moz-border-radius: 0 0 0 60px;
  -webkit-border-radius: 0 0 0 60px;
}

.rounded-top-start-60 {
  border-radius: 60px 0 0 0;
  -moz-border-radius: 60px 0 0 0;
  -webkit-border-radius: 60px 0 0 0;
}

.border-1-black {
  border: solid 1px black;
}

.border-1-color {
  border: solid 1px var(--primary-color);
}

.bg-color-op-1 {
  background: rgba(var(--primary-color-rgb), 0.1);
}
.bg-color-op-2 {
  background: rgba(var(--primary-color-rgb), 0.2);
}
.bg-color-op-3 {
  background: rgba(var(--primary-color-rgb), 0.3);
}
.bg-color-op-4 {
  background: rgba(var(--primary-color-rgb), 0.4);
}
.bg-color-op-5 {
  background: rgba(var(--primary-color-rgb), 0.5);
}
.bg-color-op-6 {
  background: rgba(var(--primary-color-rgb), 0.6);
}
.bg-color-op-7 {
  background: rgba(var(--primary-color-rgb), 0.7);
}
.bg-color-op-8 {
  background: rgba(var(--primary-color-rgb), 0.8);
}

.ratio-1-1 {
  width: 100%;
  position: relative;
}
.ratio-1-1:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.rtl .rtl-hide {
  display: none;
}

.rtl-show {
  display: none;
}

.rtl .rtl-show {
  display: block;
}

/* declass end */

/* shop */

.de__pcard h3 {
  font-weight: bold;
  margin-top: 5px;
  margin-bottom: 0px;
  font-size: 17px;
}

.atr__images {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.atr__images img {
  width: 100%;
  height: auto;
  background: var(--bg-dark-2);
  padding: 20px;
  border-radius: var(--rounded-1);
  -moz-border-radius: var(--rounded-1);
  -webkit-border-radius: var(--rounded-1);
}

.atr__image-hover {
  opacity: 0;
  z-index: 1;
  position: absolute;
  left: 0;
}

.atr__images .atr__image-hover.full {
  padding: 0;
}

.atr__images:hover .atr__image-hover {
  opacity: 1;
  -o-transition: 0.8s;
  -ms-transition: 0.8s;
  -moz-transition: 0.8s;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
}

.atr__colors {
  margin-top: 10px;
}

.atr__colors div {
  border: solid 1px rgba(51, 51, 51, 0);
  display: inline-block;
  margin: 0 2px;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

.atr__colors span {
  display: block;
  background: #333333;
  width: 20px;
  height: 20px;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

.atr__colors div.active {
  border: solid 1px #ffffff;
  padding: 3px;
}

.atr__colors div.active span {
  width: 15px;
  height: 15px;
}

.atr__opt {
  text-align: center;
}

.atr__opt div {
  display: inline-block;
  cursor: pointer;
  font-size: 14px;
  padding: 2px;
  margin: 2px;
  border: solid 1px var(--secondary-color);
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  line-height: 1em;
  width: 32px;
}

.atr__opt div.active {
  background: var(--secondary-color);
  color: #ffffff;
}

.de__pcard .atr__extra-menu {
  z-index: 1;
  text-align: center;
  position: absolute;
  width: 100%;
  transform: scale(0);
  bottom: 20px;
}

.de__pcard .atr__extra-menu div,
.de__pcard .atr__extra-menu a {
  display: inline-block;
  cursor: pointer;
  margin: 0 2px;
}

.de__pcard .atr__extra-menu div i,
.de__pcard .atr__extra-menu a i {
  color: #ffffff;
  background: var(--bg-dark-1);
  font-size: 18px;
  padding: 10px;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
}

.de__pcard .atr__extra-menu div.active i {
  background: var(--primary-color);
  color: #ffffff;
}

.de__pcard .atr__extra-menu div:hover:not(.active) i {
  background: #333333;
  color: #ffffff;
}

.de__pcard .atr__images:hover .atr__extra-menu {
  transform: scale(1);
}

.de__pcard .atr__promo {
  position: absolute;
  z-index: 1;
  display: inline-block;
  background: var(--primary-color);
  color: #ffffff;
  padding: 3px 8px;
  line-height: 1em;
  margin: 10px 0 0 10px;
  font-weight: bold;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

#de_notif {
  opacity: 0;
  font-weight: bold;
  background: #ffffff;
  color: #000000;
  padding: 5px 10px;
  position: fixed;
  left: 50%;
  bottom: -50px;
  transform: translate(-50%, 0);
  z-index: 100;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

#de_notif.active {
  opacity: 1;
  bottom: 40px;
}

/* shop end */

/* cart begin */

.de__cart-item {
  display: flex;
  margin-bottom: 30px;
}
.de__cart-item img {
  position: absolute;
  width: 64px;
  margin: 0 15px;
  background: var(--bg-light);
  padding: 5px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}
.de__cart-item h4 {
  margin-bottom: 0;
  font-size: 18px;
}
.d-checkbox__input {
  display: none;
}
.d-checkbox__input:checked + .d-checkbox__label:after {
  opacity: 1;
}
.d-checkbox__label {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  cursor: pointer;
}
.d-checkbox__label:before {
  content: "";
  width: 22px;
  height: 22px;
  border: 2px solid rgba(255, 255, 255, 0.25);
  padding: 3px;
  box-sizing: border-box;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 3px;
}
.d-checkbox__label:after {
  font-family: "FontAwesome";
  content: "\f00c";
  background: rgba(255, 255, 255, 0.25);
  padding: 3px;
  color: #ffffff;
  font-size: 14px;
  line-height: 16px;
  text-align: center;
  width: 22px;
  height: 22px;
  display: block;
  border-radius: 2px;
  overflow: hidden;
  text-align: center;
  opacity: 0;
  transition: 0.2s opacity;
}
.de__cart-item .d-info {
  display: inline-flex;
  margin-left: 95px;
}
.de__cart-item .d-price {
  font-size: 18px;
}
.de__cart-item .de-number .d-plus,
.de__cart-item .de-number .d-minus {
  padding-top: 5px;
}
.de__cart-item .de-number input {
  font-weight: bold;
  font-size: 16px;
}

#extra-wrap .de__cart-item .d-info {
  max-width: 150px;
  /*text-overflow: ellipsis;
  white-space: nowrap;
    overflow: hidden;*/
}
#extra-wrap .de__cart-item h4,
#extra-wrap .de__cart-item .d-price {
  font-size: 14px;
}

/* cart end */

/* ecommerce icons begin */
.de-icon-counter {
  cursor: pointer;
  position: relative;
  padding: 10px;
  padding-right: 15px;
}
.de-icon-counter img {
  width: 24px;
}
.de-icon-counter .d-counter {
  background: var(--primary-color);
  font-size: 12px;
  width: 24px;
  height: 24px;
  color: #ffffff;
  position: absolute;
  top: 0;
  right: 0;
  padding-top: 6px;
  line-height: 1;
  text-align: center;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

.de-quick-search {
  color: #ffffff;
  background: none;
  outline: none;
  border: solid 1px rgba(255, 255, 255, 0.5);
  padding: 3px 10px;
  max-width: 150px;
}
/* ecommerce icons end */

/* radio__button begin */
.radio__button input[type="radio"] {
  visibility: hidden;
  height: 0;
  width: 0;
}

.radio__button label {
  /* font-size: ; */
  color: var(--secondary-color);
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  border: solid 1px var(--primary-color);
  color: var(--primary-color);
  line-height: 1em;
  padding: 2px 10px;
  border-radius: 3px;
  opacity: 0.75;
}
.radio__button input[type="radio"]:checked + label {
  border: solid 2px var(--primary-color);
  font-weight: bold;
  opacity: 1;
}

/* radio__button end */

/* owl sync begin */
#sync1 .item {
  background: var(--bg-dark-2);
  padding: 40px;
  margin: 5px;
  color: #fff;
  -webkit-border-radius: var(--rounded-1);
  -moz-border-radius: var(--rounded-1);
  border-radius: var(--rounded-1);
  text-align: center;
}

#sync2 .item {
  background: var(--bg-dark-2);
  margin: 5px;
  color: #fff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  text-align: center;
  cursor: pointer;
}
#sync2 .item h1 {
  font-size: 18px;
}
#sync2 .current .item {
  background: var(--secondary-color);
}

.owl-theme .owl-nav {
  /*default owl-theme theme reset .disabled:hover links */
}
.owl-theme .owl-nav [class*="owl-"] {
  transition: all 0.3s ease;
}
.owl-theme .owl-nav [class*="owl-"].disabled:hover {
  background-color: #d6d6d6;
}

#sync1.owl-theme {
  position: relative;
}
#sync1.owl-theme .owl-next,
#sync1.owl-theme .owl-prev {
  width: 22px;
  height: 40px;
  margin-top: -20px;
  position: absolute;
  top: 50%;
}
#sync1.owl-theme .owl-prev {
  left: 10px;
}
#sync1.owl-theme .owl-next {
  right: 10px;
}
/* owl sync end */

/* price range slider */
.price-input {
  width: 100%;
  display: flex;
  margin: 0 0 15px;
}
.price-input .field {
  display: flex;
  width: 100%;
  align-items: center;
}
.field input {
  color: #ffffff;
  width: 60px;
  outline: none;
  font-size: 16px;
  margin-left: 12px;
  border-radius: 3px;
  border: none;
  font-weight: bold;
  -moz-appearance: textfield;
  background: none;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.price-input .separator {
  width: 130px;
  display: flex;
  font-size: 19px;
  align-items: center;
  justify-content: center;
  margin-top: 15px;
  margin-left: 10px;
}
.slider {
  height: 5px;
  position: relative;
  background: var(--bg-dark-3);
  border-radius: 5px;
}
.slider .progress {
  height: 100%;
  left: 0%;
  right: 0%;
  position: absolute;
  border-radius: 5px;
  background: var(--primary-color);
}
.range-input {
  position: relative;
  margin-bottom: 10px;
}
.range-input input {
  position: absolute;
  width: 100%;
  height: 5px;
  top: -5px;
  background: none;
  pointer-events: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
input[type="range"]::-webkit-slider-thumb {
  height: 17px;
  width: 17px;
  border-radius: 50%;
  background: var(--primary-color);
  pointer-events: auto;
  -webkit-appearance: none;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.05);
}
input[type="range"]::-moz-range-thumb {
  height: 17px;
  width: 17px;
  border: none;
  border-radius: 50%;
  background: var(--primary-color);
  pointer-events: auto;
  -moz-appearance: none;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.05);
}
/* range slider end */

/* custom tabs */
.de-tab .d-tab-nav {
  padding: 0;
  list-style: none;
  position: relative;
}
.de-tab .d-tab-nav .active-tab {
  border-bottom: none;
  font-weight: 500;
  position: relative;
  color: #ffffff;
  background: var(--primary-color);
}
.de-tab .d-tab-nav li {
  display: block;
  cursor: pointer;
  padding: 10px;
}
.de-tab .d-tab-content {
  padding: 0;
  list-style: none;
}
.de-tab .d-tab-content > li {
  display: none;
}

.de-tab .d-tab-nav li {
  display: inline-block;
  padding: 8px 20px;
}

.de-tab.pill .d-tab-nav {
  background: rgba(var(--primary-color-rgb), 0.2);
}

.de-tab.pill .d-tab-nav {
  display: flex;
  justify-content: space-around;
  border: none;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  overflow: hidden;
}
.de-tab.pill .d-tab-nav li {
  font-weight: 500;
  color: #000000;
  text-align: center;
  flex-grow: 1;
}
.de-tab.pill .d-tab-nav .active-tab {
  background: var(--primary-color);
  color: #ffffff;
  border: none;
}

.de-tab.plain .d-tab-nav li {
  font-weight: 500;
  color: #000000;
  text-align: center;
  padding: 0;
  margin: 0;
  opacity: 0.4;
}
.de-tab.plain .d-tab-nav .active-tab {
  background: none;
  font-weight: bold;
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .d-tab-nav,
  .d-tab-nav li {
    display: block !important;
  }
}

/* custom tabs end */

/* de-dot */

.de-dot {
  position: absolute;
  z-index: 10;
  box-sizing: content-box;
  display: inline-block;
  width: 32px;
  height: 44px;
  border-radius: 50%;
  padding: 18px 20px 18px 28px;
}

.de-dot:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 15px;
  height: 15px;
  background: orange;
  border-radius: 50%;
  animation: dot-pulse 1500ms ease-out infinite;
}

.de-dot:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 15px;
  height: 15px;
  background: orange;
  border-radius: 50%;
  transition: all 200ms;
}

@keyframes dot-pulse {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }

  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(2.2);
    opacity: 0;
  }
}

.de-dot .d-content {
  transform: scale(0);
  transform-origin: top left;
  background: rgba(var(--bg-dark-1-rgb), 0.8);
  opacity: 0;
  overflow: hidden;
  margin-left: 10px;
  margin-top: 20px;
  width: 210px;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  padding: 20px 25px;
  font-size: 15px;
  line-height: 1.6em;
}

.de-dot:hover .d-content {
  transform: scale(1);
  opacity: 1;
}

.de-dot:hover:after {
  background: #ffffff;
}

.de-dot:hover:before {
  background: #ffffff;
}

.ss-wrap {
  position: relative;
  width: 120%;
  margin-left: -10%;
  margin-bottom: -100px;
}

.ss-wrap img {
  width: 25%;
  box-shadow:
    0 0.25rem 0.5rem rgb(0 0 0 / 15%),
    0 1.5rem 2.2rem rgb(0 0 0 / 25%);
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}

.ss-wrap .img-l1 {
  top: 10%;
  left: 20%;
  z-index: 3;
}

.ss-wrap .img-l2 {
  top: 20%;
  left: 0%;
}

.ss-wrap .img-r1 {
  top: 10%;
  right: 20%;
  z-index: 3;
}

.ss-wrap .img-r2 {
  top: 20%;
  right: 0%;
}

.body-font {
  font-family: var(--body-font);
}

/* de-vertical-nav begin */

.de-vertical-nav a {
  background: var(--bg-grey);
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  display: block;
  padding: 40px;
  position: relative;
}

.de-vertical-nav img {
  position: absolute;
  width: 40px;
  top: 50%;
  transform: translateY(-50%);
}

/* de-vertical-nav end */

.menu-simple {
  display: inline;
  list-style: none;
  margin: 0;
  padding: 0;
  font-weight: 500;
}

.menu-simple li {
  display: inline;
  margin: 0 15px;
}

/* timeline begin */
.de-timeline .d-item {
  display: flex;
  justify-content: space-between;
  position: relative;
}

.de-timeline .d-item {
  content: "";
  border-left: solid 1px #555;
  margin-left: 20px;
  padding-bottom: 30px;
}

.de-timeline .d-item .d-icon {
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  position: absolute;
  width: 28px;
  height: 28px;
  text-align: center;
  left: -15px;
  color: var(--heading-font-color);
  background: var(--primary-color);
}

.de-timeline .d-item.active .d-icon {
  animation: pulsing 2s infinite;
  transition: all 0.2s;
}

.de-timeline .d-item .d-text {
  max-width: 80%;
  padding-left: 40px;
}

.de-timeline .d-item .d-text h4 {
  margin-bottom: 5px;
}

.de-timeline .d-item:not(.active) {
  opacity: 0.25;
}

@keyframes pulsing {
  from {
    box-shadow: 0 0 0 0 rgba(var(--primary-color-rgb), 1);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(var(--primary-color-rgb), 0);
  }
  to {
    box-shadow: 0 0 0 0 rgba(var(--primary-color-rgb), 0);
  }
}

/* de-timeline end */

/* timeline-s2 begin */
.de-timeline-s2 .d-item {
  display: flex;
  justify-content: space-between;
  position: relative;
}

.de-timeline-s2 .d-item {
  content: "";
  border-left: solid 1px #555;
  margin-left: 20px;
  padding-bottom: 30px;
}

.de-timeline-s2.color .d-item {
  border-left-color: var(--primary-color);
}

.de-timeline-s2 .d-item.no-border {
  border: none;
}

.de-timeline-s2 .d-item .d-icon {
  font-weight: bold;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  position: absolute;
  width: 40px;
  height: 40px;
  padding-top: 5px;
  text-align: center;
  left: -20px;
  color: #ffffff;
  background: var(--bg-dark-1);
}

.de-timeline-s2.color .d-item .d-icon {
  background: var(--primary-color);
}

.de-timeline-s2 .d-item.active .d-icon {
  animation: pulsing 2s infinite;
  transition: all 0.2s;
}

.de-timeline-s2 .d-item .d-text {
  padding-left: 40px;
}

.de-timeline-s2 .d-item .d-text h4 {
  margin-bottom: 5px;
}

@keyframes pulsing {
  from {
    box-shadow: 0 0 0 0 rgba(var(--primary-color-rgb), 1);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(var(--primary-color-rgb), 0);
  }
  to {
    box-shadow: 0 0 0 0 rgba(var(--primary-color-rgb), 0);
  }
}

/* de-timeline end */

/* swiperjs */

.swiper {
  background: var(--bg-dark-1);
}

.swiper,
.sw-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-slide {
  position: relative;
  background: var(--bg-dark-1);
}

.sw-caption {
  z-index: 1;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  letter-spacing: -0.5;
}

.sw-text-wrapper.border-left {
  border-left: solid 1px rgba(0, 0, 0, 0.25);
  padding-left: 40px;
}

.sw-text-wrapper.border-left.light {
  border-left: solid 1px rgba(255, 255, 255, 0.25);
  padding-left: 40px;
}

.slider-title .underline {
  position: relative;
}
.slider-title .underline:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background: var(--primary-color);
}
h1.slider-title {
  font-size: 64px;
  font-weight: 500;
  margin-bottom: 20px;
  line-height: 1.1em;
  letter-spacing: -2px;
}
h2.slider-title {
  font-size: 64px;
  letter-spacing: -3px;
}
h3.slider-teaser {
  font-size: 24px;
}
p.slider-teaser {
  font-size: 18px;
  line-height: 1.6em;
  font-weight: 400;
}

.sw-overlay {
  background: -webkit-linear-gradient(
    0deg,
    rgba(var(--bg-dark-1-rgb), 0.75) 0%,
    rgba(var(--bg-dark-1-rgb), 0.75) 50%
  );
  background: -moz-linear-gradient(
    0deg,
    rgba(var(--bg-dark-1-rgb), 0.75) 0%,
    rgba(var(--bg-dark-1-rgb), 0.75) 50%
  );
  background: linear-gradient(
    0deg,
    rgba(var(--bg-dark-1-rgb), 0.75) 0%,
    rgba(var(--bg-dark-1-rgb), 0.75) 50%
  );
}

.swiper-inner {
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.swiper-pagination {
  width: 100px;
  font-size: 20px;
  text-align: right;
  position: absolute;
  left: auto;
  right: 40px;
  bottom: 40px;
  font-weight: 400;
}

.swiper-pagination-total {
  font-size: 20px;
  opacity: 0.5;
}

.swiper-pagination-current {
  color: #ffffff;
  font-size: 20px;
}

.slider-light .swiper-pagination-current {
  color: var(--heading-font-color);
}

.swiper-button-next,
.swiper-button-prev {
  color: #ffffff;
}

.slider-light .swiper-button-next,
.slider-light .swiper-button-prev {
  color: var(--primary-color);
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-size: 24px;
}

.swiper-button-next {
  right: 20px;
}

.swiper-button-prev {
  left: 20px;
}

.sw-price {
  color: #ffffff;
}
.sw-price .d-starting {
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.75);
}
.sw-price .d-price {
  font-size: 56px;
  font-family: var(--heading-font);
  font-weight: bold;
  margin-bottom: 10px;
}
.sw-price .d-val {
  background: -webkit-linear-gradient(0deg, #888888 0%, #ffffff 75%);
  background: -moz-linear-gradient(0deg, #888888 0%, #ffffff 75%);
  background: linear-gradient(0deg, #888888 0%, #ffffff 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.sw-price .d-cur,
.sw-price .d-period {
  font-size: 16px;
  font-family: var(--body-font);
  color: var(--primary-color);
}
.sw-price .d-cur {
  font-weight: bold;
}

/* swiper end */

/* swiper #2 begin */

.swiper-container {
  overflow: hidden;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 480px) {
  .swiper-container {
    min-height: 320px;
  }
}
.swiper-container-wrapper {
  display: flex;
  flex-flow: column nowrap;
  height: 100vh;
  width: 100vw;
}
@media (min-width: 480px) {
  .swiper-container-wrapper {
    flex-flow: row nowrap;
  }
}

#swiper-s2 .swiper-slide {
  text-align: center;
  background-size: cover;
  background-position: center;
  background-color: var(--bg-dark-1);
  /* Center slide text vertically */
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  /* Slide content */
}
.swiper-slide .description,
.swiper-slide .title {
  display: block;
  opacity: 0;
  transition: 0.5s ease 0.5s;
}
.swiper-slide-active .description,
.swiper-slide-active .title {
  opacity: 1;
}
.swiper-slide-active .title {
  margin-bottom: 0.5rem;
  font-size: 24px;
  color: #000;
  transition: opacity 0.5s ease 0.5s;
}
.swiper-slide-active .description {
  font-size: 16px;
  color: #777;
  transition: opacity 0.5s ease 0.75s;
}

.sw-caption-thumb h3 {
  font-size: 22px;
}

.sw-caption-thumb .d-tag {
  color: #ffffff;
  font-size: 12px;
  font-weight: bold;
  background: var(--primary-color);
  padding: 2px 10px;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

/* swiper #2 end */

.player {
  margin: 0 auto;
  background: none;
  width: 120px;
  height: 120px;
  border: solid 2px #fff;
  position: relative;
  text-indent: -9999px;
}

.player span {
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-left: 20px solid #ffffff;
  border-bottom: 15px solid transparent;
  position: absolute;
  top: 37.5%;
  left: 45%;
}

.player:hover {
  background: var(--primary-color);
  cursor: pointer;
  border: none;
  box-shadow: none;
}

.player:hover span {
  transform: scale(0.8);
}

.player.invert span {
  border-left: 20px solid #000;
}

.player.invert:hover span {
  border-left: 20px solid #fff;
}

.de-flex #mainmenu {
  margin: 0;
}

.col-start,
.col-end {
  display: flex;
  align-items: center;
  justify-content: start;
  flex-grow: 1;
  flex-basis: 0;
}

.col-end {
  justify-content: end;
}

.col-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.col-center img {
  width: 160px;
}

.subtitle {
  color: var(--primary-color);
  position: relative;
  font-weight: bold;
  position: relative;
  display: inline-block;
  font-size: 14px;
  font-family: var(--heading-font);
  text-transform: none;
  letter-spacing: 0;
  line-height: 1.5em;
  margin-bottom: 20px;
  padding: 6px 0 3px 0;
  letter-spacing: 5px;
  text-transform: uppercase;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

.subtitle:after {
  bottom: auto;
  left: auto;
  top: 0;
  right: 0;
}

.text-light .subtitle {
  border-color: rgba(255, 255, 255, 0.5);
}

@keyframes blinkingText {
  0% {
    background: var(--primary-color);
  }
  50% {
    background: rgba(var(--primary-color-rgb), 0);
  }
  100% {
    background: var(--primary-color);
  }
}

.scrollbar {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 4px;
  transition: all linear 0.1s;
  min-width: 0%;
  z-index: 1000;
}

.scrollbar-v {
  background: var(--primary-color);
  position: fixed;
  top: calc(50% + 60px);
  left: 45px;
  width: 2px;
  transition: all linear 0.1s;
  min-height: 0%;
  z-index: 1000;
}

.scrollbar-v:before {
  content: "";
  position: absolute;
  left: 0;
  width: 2px;
  min-height: 100px;
  background: rgba(0, 0, 0, 0.15);
}

.scrollbar-v.dark:before {
  background: rgba(255, 255, 255, 0.2);
}

.float-text {
  width: 20px;
  position: fixed;
  z-index: 1002;
  margin-left: 30px;
  text-align: center;
  font-size: 12px;
  top: 50%;
  left: 16px;
  transform: translate(-50%, -50%);
  font-weight: 500;
}

.float-text a {
  color: #000000;
}

.float-text.dark a {
  color: #ffffff;
}

.float-text span {
  margin-left: -5px;
  margin-top: 20px;
  writing-mode: vertical-rl;
  letter-spacing: 0.75px;
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
  color: #222;
}

.float-text-right {
  width: 20px;
  position: fixed;
  z-index: 1000;
  margin-left: 30px;
  text-align: center;
  letter-spacing: 2px;
  font-size: 12px;
  top: 50%;
  right: 15px;
}

.de_social-icons a {
  color: #ffffff;
  margin: 10px 0;
}

.dark-scheme .float-text span {
  color: #ffffff;
}

.triangle-bottomright-dark {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid var(--bg-dark-1);
  border-left: 60px solid transparent;
}

.triangle-bottomright-dark-half {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 30px solid var(--bg-dark-1);
  border-left: 30px solid transparent;
}

.triangle-bottomright-white {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid #ffffff;
  border-left: 60px solid transparent;
}

.triangle-bottomright-light {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid var(--bg-light);
  border-left: 60px solid transparent;
}

.triangle-bottomright-dark-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid var(--bg-dark-2);
  border-left: 60px solid transparent;
}

.triangle-bottomright-dark-2-half {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 30px solid var(--bg-dark-2);
  border-left: 30px solid transparent;
}

.triangle-bottomright-color {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid var(--primary-color);
  border-left: 60px solid transparent;
}

.triangle-bottomleft-dark-2 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-bottom: 60px solid var(--bg-dark-2);
  border-right: 60px solid transparent;
}

/* de-number begin */

.de-number {
  margin-top: 8px;
}

.d-minus,
.d-plus {
  margin-top: -6px;
  cursor: pointer;
  color: #ffffff;
  font-size: 24px;
  width: 36px;
  height: 36px;
  padding: 3px 5px 3px 5px;
  line-height: 1em;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none; /* Standard syntax */
  background: var(--primary-color);
}
.d-minus:active,
.d-plus:active {
  background: #ffffff;
  color: #000;
}
.de-number input {
  width: 40px;
  text-align: center;
  font-size: 20px;
  border: none;
  padding: 3px !important;
  background: none;
  color: #ffffff;
  border: solid 1px var(--primary-color);
}
/* de-number close */

#recaptcha {
  width: 304px;
  margin: 0 auto;
}

.carousel-indicators [data-mdb-target] {
  background: none !important;
  margin: 0 10px;
}
.carousel-indicators [data-mdb-target] img {
  margin-top: 20px;
}

.d_demo_img {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 5px;
  margin-bottom: 15px;
  border-radius: 12px;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;

  box-shadow: 5px 20px 40px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 5px 20px 40px 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 5px 20px 40px 5px rgba(0, 0, 0, 0.1);
}

.d_demo_img:hover {
  border-color: rgba(var(--primary-color-rgb), 1);
}

.d_demo_img .d-overlay {
  opacity: 0;
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
}

.d_demo_img .d-overlay span {
  color: #ffffff;
  background: var(--bg-dark-1);
  padding: 5px 15px;
  font-weight: bold;
  transform: scale(1.5);
  opacity: 0;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
}

.d_demo_img:hover img {
  transform: scale(1.1);
}

.d_demo_img:hover .d-overlay {
  opacity: 1;
}

.d_demo_img:hover .d-overlay span {
  transform: scale(1);
  opacity: 1;
}

.de-hover-scale:hover {
  transform: scale(1.2);
  -webkit-box-shadow: 0 10px 30px rgb(0 19 87 / 25%);
  -moz-box-shadow: 0 10px 30px rgb(0 19 87 / 25%);
  box-shadow: 0 10px 30px rgb(0 19 87 / 25%);
}

.soft-shadow {
  box-shadow:
    0 0.25rem 0.5rem rgb(0 0 0 / 5%),
    0 1.5rem 2.2rem rgb(0 0 0 / 10%);
}

.rtl .owl-carousel,
.rtl .bx-wrapper {
  direction: ltr;
}

.rtl .owl-carousel .owl-item {
  direction: rtl;
}

#item-carousel-big {
  padding: 0 25px;
}

.de-flex {
  display: flex;
  justify-content: space-between;
}

.de-flex > .de-flex-col {
  display: flex;
  justify-content: center;
  align-items: center;
}

#loadmore {
  display: inline-block;
  margin-top: 10px;
}

.d-item {
  display: none;
}

.filter__l,
.filter__r {
  font-family: var(--heading-font);
}

.filter__l {
  font-weight: bold;
}

.filter__r {
  float: right;
  cursor: pointer;
}

/*Cookie Consent Begin*/
#cookieConsent {
  background-color: rgba(255, 255, 255, 0.8);
  min-height: 26px;
  font-size: 14px;
  line-height: 26px;
  font-weight: 500;
  padding: 10px 30px 10px 30px;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  z-index: 9999;
}

#cookieConsent a {
  text-decoration: none;
}

#closeCookieConsent {
  float: right;
  display: inline-block;
  cursor: poInter;
  height: 20px;
  width: 20px;
  margin: -15px 0 0 0;
  font-weight: bold;
}

#closeCookieConsent:hover {
  color: #fff;
}

#cookieConsent a.cookieConsentOK {
  color: #fff;
  display: inline-block;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  padding: 0 20px;
  cursor: poInter;
}

#cookieConsent a.cookieConsentOK:hover {
  opacity: 0.8;
}

/*Cookie Consent End*/

.vertical-center {
  min-height: 100%;
  /* Fallback for browsers do NOT support vh unit */
  min-height: 100vh;
  /* These two lines are counted as one :-)       */

  display: flex;
  align-items: center;
}

#purchase-now {
  position: fixed;
  bottom: 80px;
  left: 20px;
  z-index: 10000;
}

#purchase-now a {
  color: #ffffff;
  z-index: 1;
  position: absolute;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  background: #78a938;
  display: block;
  font-size: 24px;
  font-weight: bold;
  width: 60px;
  height: 60px;
  padding: 17px;
  text-decoration: none;
  animation: shadow-pulse 1s infinite;
}

#buy-now {
  position: fixed;
  bottom: 60px;
  left: 40px;
  z-index: 10000;
  direction: ltr !important;
}

#buy-now a {
  color: #ffffff;
  z-index: 1;
  position: absolute;
  background: #333333;
  display: block;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 15px;
  text-align: center;
  width: 150px;
  line-height: 1em;
  text-decoration: none;
  animation: shadow-pulse 1s infinite;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

#buy-now a img {
  width: 64px;
  margin-left: 3px;
}

@keyframes shadow-pulse {
  0% {
    box-shadow: 0 0 0 0px rgba(120, 169, 56, 0.2);
  }

  100% {
    box-shadow: 0 0 0 20px rgba(120, 169, 56, 0);
  }
}

#purchase-now a span {
  font-size: 14px;
  font-weight: 500;
  left: 8px;
  position: absolute;
  top: 18px;
  width: 100px;
}

#purchase-now .pn-hover {
  position: absolute;
  font-weight: bold;
  font-size: 16px;
  background: #ffffff;
  color: #78a938;
  width: 120px;
  padding: 10px;
  padding-left: 20px;
  text-align: center;
  top: 8px;
  border-radius: 0px;
  left: 30px;
  opacity: 0;
}

#purchase-now:hover .pn-hover {
  opacity: 1;
  left: 40px;
}

.opt-1 {
  display: inline-block;
}

.opt-2 {
  display: none;
}

.border {
  border-color: #efefef !important;
}

.tparrows {
  background: none !important;
}

.gray img,
img.gray {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
}

.text-light .border {
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.owl-thumbs img {
  padding: 3px;
}

#slider-carousel .owl-thumbs {
  padding: 3px;
  margin-bottom: 30px;
  width: auto;
}

#slider-carousel .owl-thumbs button {
  opacity: 1;
  border: none !important;
  padding: 0;
  margin-right: 15px;
  margin-bottom: 20px;
  opacity: 1;
  overflow: hidden;
  opacity: 0.5;
}

#slider-carousel .owl-thumb-item.active {
  opacity: 1;
}

#slider-carousel button.owl-thumb-item.active {
  -webkit-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.5);
  box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.5);
}

#slider-carousel .owl-thumb-item img {
  background: #fff;
  padding: 0;
  width: 120px;
}

.de_tab.tab_style_4 .de_nav {
  -webkit-touch-1a1c26out: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

strong {
  font-weight: bold;
}

.text-light strong {
  color: #fff;
}

.bg-white {
  background: #ffffff;
}

.bg-white-10 {
  background: rgba(255, 255, 255, 0.1);
}

.wh80 {
  width: 80%;
  height: 80%;
}

.border-top {
  border-top: solid 1px #e5e5e5;
}

.border-bottom {
  border-bottom: solid 1px #e5e5e5;
}

.text-light .border-bottom {
  border-bottom: solid 1px rgba(255, 255, 255, 0.3) !important;
}

.dark-scheme .border-bottom,
.dark-scheme header.border-bottom {
  border-bottom: solid 1px rgba(255, 255, 255, 0.25) !important;
}

.color-overlay {
  background: rgba(157, 130, 235, 0.3);
}

section .color-overlay {
  padding: 60px 0 60px 0;
}

.color-overlay-2 {
  background: rgba(26, 37, 48, 0.85);
}

.circle-x {
  background: #333;
  display: inline-block;
  padding: 20px;
  font-size: 40px;
  color: #fff;
  margin-top: 140px;
  width: 70px;
  height: 70px;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
  box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
}

#navigation {
  position: fixed;
  width: 100%;
  height: 60px;
  top: 0;
  right: 20px;
  text-align: center;
  margin-bottom: 60px;
  z-index: 1000;
}

.nav-prev:before,
.nav-next:before,
.nav-exit:before {
  font-family: "FontAwesome";
  content: "\f177";
  color: #fff;
  padding: 20px;
  font-size: 24px;
  cursor: poInter;
}

.nav-exit:before {
  width: 100%;
  display: block;
}

.nav-next:before {
  content: "\f178";
  width: 100%;
  background: #555;
}

.nav-exit:before {
  content: "\f00d";
}

.de_light .nav-exit:before {
  color: #222;
}

.no-bottom {
  margin-bottom: 0;
  padding-bottom: 0;
}

p {
  margin-bottom: 20px;
}

p.intro {
  color: #555;
  font-size: 16px;
  line-height: 1.5em;
}

.bg-grey {
  background: #f6f6f6;
}

.no-bottom .col-md-12 {
}

.no-bottom {
  padding-bottom: 0 !important;
}

.no-top {
  padding-top: 0 !important;
}

.no-margin {
  margin: 0 !important;
}

.nopadding {
  padding: 0;
  margin: 0;
}

#filters i {
  margin-right: 10px;
}

.bg-side {
  position: relative;
  overflow: hidden;
}

.image-slider {
  cursor: move;
}

.inner-padding {
  padding: 90px;
}

.inner-padding.pos-left {
  padding: 90px;
  padding-left: 0;
}

.rtl .inner-padding.pos-left {
  padding-left: 90px;
  padding-right: 0;
}

.no-padding,
section.no-padding {
  padding: 0;
}

.float-left {
  float: left;
}

#loader-area {
  display: none;
  background: #fff;
}

#loader-area {
  display: none;
  background: #111;
}

.loader {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

.page-overlay {
  display: none;
  width: 120px;
  height: 120px;
  border-radius: 0px;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10000;
  margin: auto;
}

.teaser {
  font-size: 15px;
  letter-spacing: 10px;
  text-transform: uppercase;
  line-height: 1.8em;
}

.teaser.style-2 {
  letter-spacing: 20px;
  text-transform: uppercase;
}

.teaser.style-3 {
  font-size: 14px;
}

.teaser.style-4 {
  letter-spacing: 5px;
  text-transform: uppercase;
  font-size: 14px;
}

.form-control:focus {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}

.d-carousel {
  position: relative;
  display: flex;
  align-items: center;
}

.d-custom-nav {
  position: absolute;
  display: flex;
  width: 100%;
  height: 100px;
  z-index: 100;
}

.d-arrow-left,
.d-arrow-right {
  display: none;
  cursor: pointer;
  position: absolute;
  margin-top: -10px;
  z-index: 100;
  width: 30px;
  height: 60px;
  background-color: rgba(255, 255, 255, 1);
}

.d-arrow-left {
  left: 0px;
  border-top-right-radius: 110px;
  border-bottom-right-radius: 110px;
}

.d-arrow-right {
  right: 0px;
  border-top-left-radius: 110px;
  border-bottom-left-radius: 110px;
}

.d-arrow-left i,
.d-arrow-right i {
  position: absolute;
  z-index: 1000;
  top: 20px;
  color: #ffffff;
  font-size: 20px;
  font-weight: bold;
}

.d-arrow-left i {
  left: 8px;
}

.d-arrow-right i {
  right: 8px;
}

#d-coll-carousel {
  position: relative;
  display: flex;
  align-items: center;
}

.owl-nav {
  display: flex;
}

.owl-prev,
.owl-next,
.d-nav-left,
.d-nav-right {
  cursor: pointer;
  position: absolute;
  top: 27.5%;
  z-index: 100;
  width: 40px;
  height: 40px;
  background-color: rgba(255, 255, 255, 1);
  border: solid 1px #ccc;
}

.dark-scheme .owl-prev,
.dark-scheme .owl-next {
  background: var(--bg-color-even);
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.1);
}

.owl-prev:hover,
.owl-next:hover {
  transform: scale(1.1);
  -webkit-box-shadow: 5px 5px 30px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 5px 5px 30px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 5px 30px 0px rgba(0, 0, 0, 0.2);
}

.owl-prev,
.d-nav-left {
  left: -12px;
  border-radius: 60px;
  padding-left: 4px;
}

.owl-next,
.d-nav-right {
  right: -12px;
  border-radius: 60px;
  padding-right: 4px;
}

.d-nav-left i,
.d-nav-right i {
  position: absolute;
  top: 20px;
  color: #111111;
  font-size: 20px;
  font-weight: bold;
}

.owl-next i,
.d-nav-left i {
  top: 12px;
  left: 16px;
}

.d-nav-right i {
  top: 12px;
  right: 16px;
}

.owl-arrow {
  z-index: 100;
  background: #fff;
  margin-top: 48%;
  display: none;
  cursor: poInter;
}

.owl-arrow span {
  display: block;
  background: #555;
  position: absolute;
}

.owl-arrow .prev {
  left: 0;
}

.owl-arrow .next {
  right: 0;
}

.owl-arrow .prev:before,
.owl-arrow .next:before {
  font-family: "FontAwesome";
  content: "\f177";
  color: #222222;
  padding: 20px;
  font-size: 32px;
  display: block;
}

.owl-arrow .next:before {
  content: "\f178";
}

.owl-pagination {
  margin-top: 0px;
  height: 40px;
}

.owl-theme .owl-controls .owl-page span {
  display: block;
  margin-top: 20px;
  margin-left: 10px;
  margin-right: 10px;
  width: 6px;
  height: 6px;
  background-color: #555;
  opacity: 1;
}

.owl-theme .owl-controls .owl-page.active span {
  background: none;
}

.owl-theme .owl-controls .owl-page.active span:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  border-radius: 15px;
  position: relative;
  border: solid 2px #555;
  top: -2px;
  left: -2px;
}

/* new owl */

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 0px;
}

.owl-dots button {
  border: none;
  outline: none;
  padding: 0;
  width: 8px;
  height: 8px;
  margin: 0 5px;
  border-radius: 30px;
  background: rgba(0, 0, 0, 0.15);
}

.owl-theme .owl-dots .owl-dot span {
  display: none;
}

/* new owl close */

.text-light .owl-theme .owl-controls .owl-page span {
  background-color: #fff;
}

.text-light .owl-theme .owl-controls .owl-page.active span {
  background: none;
}

.text-light .owl-theme .owl-controls .owl-page.active span:before {
  border: solid 2px #fff;
}

.text-slider {
  color: #fff;
  display: inline-block;
}

.text-slider.med-text {
  font-size: 72px;
  line-height: 84px;
  font-weight: bold;
}

.text-slider.big-text {
  font-size: 120px;
  line-height: 120px;
  font-weight: bold;
}

.border-deco .text-item {
  display: inline-block;
}

.text-slider.dark {
  color: #222;
}

.text-item i {
  font-size: 60px;
  margin-top: 5px;
}

.text-slider.big-text i {
  font-size: 90px;
  margin-top: 15px;
}

.text-slider h1 {
  font-size: 60px;
}

.text-rotate-wrap {
  display: inline-block;
}

.text-rotate-wrap .text-item {
  display: none;
}

.red {
  color: #ff0000;
}

.teal {
  color: #009999;
}

.purple {
  color: #663366;
}

.green {
  color: #009900;
}

.bg-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.center-y {
  position: relative;
}

.overlay-bg {
  padding: 120px 0;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.overlay-bg.p60 {
  padding-top: 60px;
  padding-bottom: 60px;
}

.overlay-gradient {
  width: 100%;
  height: 100%;
  z-index: 100;
  top: 0;
}

.overlay-solid {
  width: 100%;
  height: 100%;
  z-index: 100;
  top: 0;
}

.overlay-bg.t0 {
  background: rgba(var(--primary-color-rgb), 0);
}

.overlay-bg.t20 {
  background: rgba(var(--primary-color-rgb), 0.2);
}

.overlay-bg.t30 {
  background: rgba(var(--primary-color-rgb), 0.3);
}

.overlay-bg.t40 {
  background: rgba(var(--primary-color-rgb), 0.4);
}

.overlay-bg.t50 {
  background: rgba(var(--primary-color-rgb), 0.5);
}

.overlay-bg.t60 {
  background: rgba(var(--primary-color-rgb), 0.6);
}

.overlay-bg.t70 {
  background: rgba(var(--primary-color-rgb), 0.7);
}

.overlay-bg.t80 {
  background: rgba(var(--primary-color-rgb), 0.8);
}

.overlay-bg.t90 {
  background: rgba(var(--primary-color-rgb), 0.9);
}

.overlay-bg.light-5 {
  background: rgba(255, 255, 255, 0.5);
}

.overlay-bg.light-6 {
  background: rgba(255, 255, 255, 0.6);
}

.overlay-bg.light-7 {
  background: rgba(255, 255, 255, 0.7);
}

.overlay-bg.light-8 {
  background: rgba(255, 255, 255, 0.8);
}

.overlay-bg.c1 {
  background: rgba(var(--primary-color-rgb), 0.8);
}

.overlay-bg.dark {
  background: rgba(20, 20, 20, 0.8);
}

.overlay-bg.gradient-blue-aqua {
  background: -moz-linear-gradient(
    45deg,
    rgba(2, 68, 129, 0.9) 0%,
    rgba(52, 176, 188, 1) 100%
  );
  background: -webkit-linear-gradient(
    45deg,
    rgba(2, 68, 129, 0.9) 0%,
    rgba(52, 176, 188, 1) 100%
  );
  background: linear-gradient(
    45deg,
    rgba(2, 68, 129, 0.9) 0%,
    rgba(52, 176, 188, 1) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#cc024481', endColorstr='#cc34b0bc', GradientType=1);
}

.de-overlay-gradient-dark {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: -moz-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
  background: -webkit-linear-gradient(
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 1) 100%
  );
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
}

.de-overlay-gradient-color {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: -moz-linear-gradient(
    rgba(var(--primary-color-rgb), 0) 0%,
    rgba(var(--primary-color-rgb), 1) 100%
  );
  background: -webkit-linear-gradient(
    rgba(var(--primary-color-rgb), 0) 0%,
    rgba(var(--primary-color-rgb), 1) 100%
  );
  background: linear-gradient(
    rgba(var(--primary-color-rgb), 0) 0%,
    rgba(var(--primary-color-rgb), 1) 100%
  );
}

.bg-grey,
section.bg-grey {
  background: var(--bg-grey);
}

.wow {
  visibility: hidden;
}

#back-to-top {
  background: var(--primary-color);
  position: fixed;
  bottom: -40px;
  right: 20px;
  z-index: 1020;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 30px;
  cursor: poInter;
  padding-top: 3px;
  border: 0;
  text-decoration: none;
  transition: opacity 0.2s ease-out;
  outline: none;
  opacity: 0;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

#back-to-top:hover {
  transform: scale(1.1);
}

#back-to-top.show {
  bottom: 20px;
  opacity: 1;
}

#back-to-top.hide {
  bottom: -40px;
}

#back-to-top:before {
  font-family: "FontAwesome";
  font-size: 18px;
  content: "\f106";
  color: #ffffff;
  position: relative;
}

/* mouse scroll icon begin */

.mouse {
  position: absolute;
  width: 22px;
  height: 42px;
  bottom: 40px;
  left: 50%;
  margin-left: -12px;
  border-radius: 15px;
  border: 2px solid #fff;
  -webkit-animation: intro 1s;
  animation: intro 1s;
}

.scroll {
  display: block;
  width: 3px;
  height: 3px;
  margin: 6px auto;
  border-radius: 4px;
  background: #fff;
  -webkit-animation: finger 1s infinite;
  animation: finger 1s infinite;
}

@-webkit-keyframes intro {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes intro {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes finger {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}

@keyframes finger {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}

/* mouse scroll icon close */

@-moz-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -moz-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -moz-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@-webkit-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -moz-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

.arrow-anim {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -20px;
  width: 40px;
  height: 40px;
  background-size: contain;
}

.arrow-anim:before {
  content: "\f107";
  font-family: "FontAwesome";
  font-size: 32px;
}

.bounce {
  -moz-animation: bounce 2s infinite;
  -webkit-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

a.read_more {
  display: inline-block;
  font-weight: bold;
  color: #222222;
  text-decoration: none;
}

a.read_more:hover {
  color: #707070;
}

a.read_more i {
  margin-left: 8px;
}

.text-light a.read_more {
  color: #fff;
}

.text-black {
  color: #222;
}

#de-arrow-nav-set {
  text-align: center;
}

#de-arrow-nav-set i {
  color: #222;
  font-size: 32px;
}

#de-arrow-nav-set i.icon_menu {
  display: inline-block;
}

/* owl */
.owl-custom-nav.menu-float {
  position: relative;
}
.owl-custom-nav.menu-float .btn-prev,
.owl-custom-nav.menu-float .btn-next {
  position: absolute;
  z-index: 2000;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  cursor: pointer;
  padding: 0;
}
.owl-custom-nav.menu-float .btn-prev {
  left: 0px;
}
.owl-custom-nav.menu-float .btn-next {
  right: 0px;
}
.owl-custom-nav.menu-float .btn-prev:before,
.owl-custom-nav.menu-float .btn-next:before {
  font-size: 24px;
}
.owl-custom-nav .btn-prev:before,
.owl-custom-nav .btn-next:before {
  display: block;
  font-family: "FontAwesome";
  content: "\f105";
  color: #ffffff;
  padding: 8px 0;
  font-size: 20px;
  width: 40px;
  height: 50px;
  background: var(--primary-color);
  text-align: center;
}
.owl-custom-nav .btn-prev:before {
  content: "\f104";
  border-radius: 0 30px 30px 0;
  -moz-border-radius: 0 30px 30px 0;
  -webkit-border-radius: 0 30px 30px 0;
}
.owl-custom-nav .btn-next:before {
  border-radius: 30px 0 0 30px;
  -moz-border-radius: 30px 0 0 30px;
  -webkit-border-radius: 30px 0 0 30px;
}

.owl-custom-nav.dark .btn-prev:before,
.owl-custom-nav.dark .btn-next:before {
  color: #000000;
}

.owl-custom-nav a {
  text-decoration: none;
}

.owl-prev,
.owl-next {
  display: none;
}

#custom-owl-slider {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -1;
  background: #fff;
}

#custom-owl-slider .items {
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 20;
  visibility: inherit;
  opacity: 1;
}

#custom-owl-slider .item img {
  display: block;
  width: 100%;
  height: 100%;
}

.owl-slider-nav {
  position: absolute;
  width: 100%;
}

.owl-slider-nav,
.owl-slider-nav div {
  position: absolute;
  z-index: 10;
  cursor: poInter;
}

.owl-slider-nav .next {
  right: -50px;
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-bottom: 50px solid transparent;
  border-right: 50px solid transparent;
}

.owl-slider-nav .prev {
  left: -50px;
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-bottom: 50px solid transparent;
  border-left: 50px solid transparent;
}

.owl-slider-nav .next:before {
  font-family: "FontAwesome";
  font-size: 24px;
  content: "\f0da";
  color: #fff;
  position: absolute;
  right: -40px;
  top: -13px;
}

.owl-slider-nav .prev:before {
  font-family: "FontAwesome";
  font-size: 24px;
  content: "\f0d9";
  color: #fff;
  position: absolute;
  left: -40px;
  top: -13px;
}

.owl-dots {
  text-align: center;
}

.owl-dot {
  background: #ccc;
  border: none;
  margin: 5px;
  width: 6px;
  height: 6px;
  padding: 0;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
}

.dark-scheme .owl-dot,
.text-light .owl-dot {
  background: rgba(255, 255, 255, 0.2);
}

.owl-item.active div blockquote {
  position: relative;
  overflow: hidden;
}

.owl-item.active div blockquote,
.owl-item.active div blockquote .de_testi_by {
  opacity: 1;
}

.owl-stage {
  overflow: none;
}

.typed-strings p {
  position: absolute;
}

.typed-cursor {
  opacity: 1;
  -webkit-animation: blink 0.5s infinite;
  -moz-animation: blink 0.5s infinite;
  animation: blink 0.5s infinite;
}

@keyframes blink {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes blink {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes blink {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.style-2 .date-box {
  text-align: center;
  position: absolute;
  right: 0;
  padding: 15px 5px 5px 5px;
  color: #fff;
}

.style-2 .date-box .d {
  font-weight: 600;
  font-size: 38px;
  margin-bottom: 5px;
}

.style-2 .date-box .m {
  font-family: var(--body-font);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 8px;
  margin-left: 8px;
}

.sitemap {
  margin: 0;
  padding: 0;
}

.sitemap.s1 li {
  list-style: none;
}

.sitemap.s1 li:before {
  font-family: FontAwesome;
  content: "\f016";
  margin-right: 10px;
}

.list {
  margin: 0;
  padding: 0;
}

.list li {
  list-style: none;
}

.rtl .list.s1 li:after,
.list.s1 li:before {
  font-family: FontAwesome;
  content: "\f00c";
  margin-right: 10px;
}

.rtl .list.s1 li:after {
  margin-right: 0;
  margin-left: 10px;
}

.rtl .list.s1 li:before {
  display: none;
}

.list.s2 li:before {
  font-family: FontAwesome;
  content: "\f055";
  margin-right: 10px;
}

.list.s3 {
  display: inline;
  margin: 0;
  padding: 0;
}

.list.s3 li {
  display: inline;
  margin-right: 20px;
}

.list.s3 a {
  font-weight: bold;
}

#owl-logo img:hover {
  opacity: 1;
}

.switch-set {
  font-weight: bold;
  direction: ltr !important;
}

.dark-scheme .switch-set {
  color: #ffffff;
}

.dark-scheme .switch {
  background: rgba(255, 255, 255, 0.1);
}

.switch-set div {
  display: inline-block;
  padding: 0 5px;
  direction: ltr !important;
}

.switch {
  margin-bottom: -5px;
  -webkit-appearance: none;
  height: 22px;
  width: 42px;
  background-color: var(--primary-color);
  border-radius: 60px;
  position: relative;
  cursor: poInter;
  border: none;
}

.switch::after {
  content: "";
  width: 18px;
  height: 18px;
  background-color: #ffffff;
  position: absolute;
  border-radius: 100%;
  transition: 0.5s;
  margin: 2px 0 0 2px;
}

.de-switch {
  display: block;
}

.de-switch h3 {
  font-weight: 400;
  padding-bottom: 6px;
}

.de-switch input[type="checkbox"] {
  display: none;
}

.de-switch input[type="checkbox"]:checked + label {
  background-color: #2f7df9;
}

.de-switch input[type="checkbox"]:checked + label:after {
  left: 23px;
}

.de-switch label {
  transition: all 200ms ease-in-out;
  display: inline-block;
  position: relative;
  height: 20px;
  width: 40px;
  border-radius: 40px;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.3);
  color: transparent;
}

.dark-scheme .de-switch label {
  background-color: rgba(255, 255, 255, 0.1);
}

.de-switch label:after {
  transition: all 200ms ease-in-out;
  content: " ";
  position: absolute;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background-color: white;
  top: 3px;
  left: 3px;
  right: auto;
}

.de-switch.colored input[type="checkbox"]:checked + label {
  background-color: #55c946;
}

.de-switch.colored label {
  background-color: #ff4949;
}

.switch-with-title h5 {
  float: left;
}

.switch-with-title .de-switch {
  float: right;
}

.switch:checked::after {
  transform: translateX(20px);
}

.switch:focus {
  outline-color: transparent;
}

.menu_side_area {
  margin-left: 20px;
  display: flex;
  align-items: center;
}

.rtl .menu_side_area {
  margin-left: 0;
}

.de_countdown {
  text-align: right;
  z-index: 100;
  padding: 0 0 10px 0;
}

.dark-scheme .de_countdown {
  color: #fff;
  background: none;
}

.countdown-section {
  font-size: 28px;
  margin-left: 8px;
  font-weight: bold;
}

.tabs_wrapper {
  margin-top: 40px;
}

.hide-content {
  display: none;
}

.display-none {
  display: none;
}

.ul-check {
  padding: 0;
  list-style: none;
}

.ul-check li {
  position: relative;
  display: block;
  margin-top: 0;
  padding: 0px;
  padding-left: 30px;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  line-height: 1.6em;
}

.ul-check li h4 {
  font-size: 18px;
  font-weight: 500;
}

.ul-check.s2 li h4 {
  font-weight: 600;
}

.ul-check.s2 li {
  margin-bottom: 30px;
}

.ul-check.s3 li {
  margin-bottom: 5px;
}

.ul-check .d-label {
  background: #fdda76;
  font-weight: bold;
  padding: 0 5px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.ul-check-inline {
  margin: 0;
  padding: 0;
}

.ul-check-inline li {
  display: inline-block;
  padding: 0 20px;
  padding-left: 0;
  color: var(--heading-font-color);
}

.ul-check-inline li:before {
  font-family: "FontAwesome";
  content: "\f00c";
  margin-right: 10px;
  color: var(--primary-color);
  border: solid 1px var(--primary-color);
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  padding: 5px;
}

.ul-check li:before {
  position: absolute;
  left: 0;
  font-family: "FontAwesome";
  content: "\f00c";
  margin-right: 12px;
  width: 20px;
  line-height: 1;
  padding: 4px 0;
  font-size: 15px;
  display: inline-block;
  text-align: center;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
}

.rtl .ul-check li:before {
  margin-right: 0;
  margin-left: 12px;
}

.ul-style-3 {
  margin-top: 15px;
  padding: 0;
  list-style: none;
}

.ul-style-3 li {
  display: inline-block;
  margin: 0;
  padding: 0px;
}

.ul-style-3 li:after {
  content: "/";
  margin: 0 5px 0 10px;
}

.ul-style-3 li:last-child:after {
  content: "";
}

a:hover .bg-hover-2 {
  background: var(--primary-color) !important;
}

a:hover .text-hover-white {
  color: #ffffff;
}

/* shadow */

.shadow-soft,
.de-map-wrapper iframe,
.expand-custom,
#form_sb input,
.container-timeline ul li::before {
  -webkit-box-shadow: 0 10px 30px rgb(30 30 30 / 30%);
  -moz-box-shadow: 0 10px 30px rgb(30 30 30 / 30%);
  box-shadow: 0 10px 30px rgb(30 30 30 / 30%);
}

.shadow-1 {
  -webkit-box-shadow: 0 10px 30px rgb(29, 29, 31, 25%);
  -moz-box-shadow: 0 10px 30px rgb(29, 29, 31, 25%);
  box-shadow: 0 10px 30px rgb(29, 29, 31, 25%);
}

.no-shadow {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.rounded-5 {
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  position: relative;
  overflow: hidden;
}

.rounded-10 {
  overflow: hidden;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}

.rounded-20 {
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  position: relative;
}

.rounded-30 {
  overflow: hidden;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
}

.circle {
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.rtl .carousel-control-next {
  right: 0;
}

.rtl .carousel-control-prev {
  left: 0;
  right: auto;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
  opacity: 1;
  width: 48px;
  height: 48px;
  padding-top: 10px;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}

.carousel-control-next-icon:after,
.carousel-control-prev-icon:after {
  font-family: FontAwesome;
  content: "\f104";
  font-size: 32px;
  color: var(--primary-color);
}

.carousel-control-next-icon:after {
  content: "\f105";
}

.carousel-control-next-icon:hover,
.carousel-control-prev-icon:hover {
  background: #ffffff;
}

.carousel-indicators [data-mdb-target] {
  background-color: var(--primary-color);
  border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
}

.de-map-wrapper iframe {
  width: 100%;
  height: 450px;
  border: solid 1px #cccccc;
}

/* image effect */

img.anim-up-down {
  -webkit-animation: move-up-down 1s infinite alternate;
  animation: move-up-down 1s infinite alternate;
}

img.anim-up-down {
  -webkit-animation: move-up-down 1s infinite alternate;
  animation: move-up-down 1s infinite alternate;
}

@-webkit-keyframes move-up-down {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(-10px);
  }
}

@keyframes move-up-down {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(-10px);
  }
}

.slider-text-wrap {
  background: rgba(255, 255, 255, 0.75);
  padding: 30px;
  padding-top: 20px;
  overflow: hidden;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
}

.bubble {
  font-weight: bold;
  position: absolute;
  color: #ffffff;
  text-align: center;
  width: 100px;
  height: 100px;
  border-radius: 100%;
  padding-top: 35px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  background: var(--primary-color);
  z-index: 1;
}

.bubble-3 .bubble:nth-child(1) {
  position: absolute;
  top: 25%;
  left: 10%;
}

.bubble-3 .bubble:nth-child(2) {
  position: absolute;
  top: 35%;
  right: 10%;
}

.bubble-3 .bubble:nth-child(3) {
  position: absolute;
  bottom: 15%;
  left: 30%;
}

.d-grid-images {
  border-top: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
}

.d-grid-images .d-item {
  text-align: center;
  display: flex;
  width: 25%;
  height: 100px;
  float: left;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  justify-content: center;
  align-items: center;
}

/* price list */

.def-list-dots {
  padding-left: 30px;
  font-size: 18px;
}

.def-list-dots dl {
  display: table;
  width: 100%;
  margin: 3px 0;
  margin-bottom: 10px;
}
.def-list-dots dt {
  display: table-cell;
  width: 100%;
  max-width: 0;
  overflow: hidden;
  vertical-align: top;
  font-weight: 400;
}
.def-list-dots dt span:after {
  content: " ";
}
.def-list-dots dt:after {
  content: "..................................................................................................................................................................................................................";
  display: inline-block;
  width: 0;
  color: rgba(255, 255, 255, 0.5);
}
.def-list-dots .no-def-item dt:after {
  content: "";
}
.def-list-dots dd {
  display: table-cell;
  margin: 0;
  padding-left: 4px;
  vertical-align: bottom;
  white-space: nowrap;
  font-weight: 600;
  color: var(--primary-color);
}

.images-carousel-group img {
  height: 350px;
  width: auto;
}

.d-list-menu {
  margin: 0;
  padding: 0;
}
#search {
  float: left;
  width: 70%;
  margin-bottom: 0;
}

#btn-search {
  border: none;
  padding: 7px;
  background: #222;
  float: left;
  width: 30%;
  height: 42px;
}

#btn-search:before {
  font-family: FontAwesome;
  content: "\f002";
  font-size: 24px;
  color: #111;
}

#btn-search:hover {
  background: #fff;
}

/* dropdown */
/* ------------------------------ */
.dropdown {
  position: relative;
  z-index: 500;
  font-weight: 600;
  display: inline-block;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  text-align: left;
}

.dropdown a,
.dropdown a:hover {
  text-decoration: none;
  outline: none;
  display: inline-block;
}

.dropdown a,
.header-light .dropdown a:hover {
  color: #333;
}

.dark-scheme .dropdown a,
.dark-scheme .header-light .dropdown a:hover {
  color: #ffffff;
}

.dropdown > a {
  display: inline-block;
  padding: 7px 12px 7px 12px;
  min-width: 140px;
  border: solid 1px rgba(0, 0, 0, 0.2);
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  font-weight: bold;
}

.dark-scheme .dropdown > a {
  border: solid 1px rgba(255, 255, 255, 0.2);
}

.dropdown > a:after {
  font-family: "FontAwesome";
  font-size: 16px;
  content: "\f107";
  position: relative;
  float: right;
  margin-left: 10px;
}

.rtl .dropdown > a:after {
  margin-left: 0;
  float: left;
}

.dropdown ul,
.dropdown li {
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
}

.dropdown ul {
  background: #ffffff;
  padding: 10px;
  position: absolute;
  min-width: 140px;
  display: none;
  cursor: pointer;
  border: solid 1px rgba(0, 0, 0, 0.1);
}

.dropdown li span {
  background: #ffffff;
  display: block;
  padding: 5px 10px 5px 10px;
  border-top: none;
  width: 100%;
  font-weight: 400;
  font-size: 14px;
}

.dark-scheme .dropdown li span {
  background: var(--bg-dark-1);
  border: solid 1px rgba(255, 255, 255, 0.1);
}

.dark-scheme .dropdown li span:hover {
  background: var(--bg-color-even);
  color: #fff;
}

.dropdown li span:hover {
  color: #ffffff;
  background: #eeeeee;
}

.dropdown li.active {
  display: none;
}

.dropdown ul.d-col-3 {
  width: 600px !important;
}

.dropdown ul.d-col-3 li {
  width: 33.3%;
  float: left;
}

.dropdown ul.d-col-3 li span {
}

.text-light .dropdown {
  background: none;
  border: solid 1px rgba(255, 255, 255, 0.1);
}

.text-light .dropdown a {
  color: #ffffff;
}

.items_filter {
  font-size: 14px;
  margin-bottom: 30px;
}

.items_filter .dropdown {
  margin-right: 10px;
}

.dropdown.fullwidth,
.dropdown.fullwidth a,
.dropdown.fullwidth ul,
.dropdown.fullwidth li {
  width: 100%;
}

.dropdown.style-2,
.dropdown.style-2 a,
.dropdown.style-2 ul,
.dropdown.style-2 li {
  width: 100%;
}

.rtl .dropdown.style-2 {
  text-align: right;
}

.dropdown.style-2 h4 {
  font-size: 15px;
  font-weight: 500;
}

.dropdown.style-2 a {
  font-size: 20px;
  color: #ffffff;
  padding: 5px 0;
  border: none;
  border-top: solid 1px rgba(255, 255, 255, 0.3);
}

a.btn-search-big {
  text-align: center;
  display: inline-block;
  width: 100%;
  padding: 20px;
  font-weight: bold;
  color: #ffffff;
  font-size: 20px;
  border: solid 1px #ffffff;
}

a.btn-search-big:hover {
  background: #ffffff;
  color: #35404e;
}

.separator {
  line-height: 0.5;
  text-align: center;
  margin: 30px 0 30px 0;
}

.separator span {
  display: inline-block;
  position: relative;
}

.separator span:before,
.separator span:after {
  content: "";
  position: absolute;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  top: 5px;
  width: 50px;
}

.separator span:before {
  right: 100%;
  margin-right: 15px;
}

.separator span:after {
  left: 100%;
  margin-left: 15px;
}

.separator span i {
  font-size: 12px;
  padding: 0;
  margin: 0;
  float: none;
}

.de_light .separator span:before,
.de_light .separator span:after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.text-light .separator span:before,
.text-light .separator span:after {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.de-separator:after {
  background: none repeat scroll 0% 0% var(--primary-color);
  content: "";
  height: 10px;
  right: 0%;
  margin: -5px auto auto -5px;
  position: absolute;
  transform: rotate(-45deg);
  width: 10px;
}
.de-separator:before {
  background: none repeat scroll 0% 0% var(--primary-color);
  content: "";
  height: 10px;
  left: 0%;
  margin: -5px auto auto -5px;
  position: absolute;
  transform: rotate(-45deg);
  width: 10px;
}
.de-separator {
  position: relative;
  border-top: 1px solid var(--primary-color);
  width: 250px;
  clear: both;
  margin: 0 auto;
  margin-bottom: 40px;
}

/* --------------------------------------------------
* plugin
* --------------------------------------------------*/

/* ================================================== */

/* isotope */

/* ================================================== */

.isotope,
.isotope .isotope-item {
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
}

.isotope {
  -webkit-transition-property: height, width;
  -moz-transition-property: height, width;
  -ms-transition-property: height, width;
  -o-transition-property: height, width;
  transition-property: height, width;
}

.isotope .isotope-item {
  -webkit-transition-property: -webkit-transform, opacity;
  -moz-transition-property: -moz-transform, opacity;
  -ms-transition-property: -ms-transform, opacity;
  -o-transition-property: -o-transform, opacity;
  transition-property: transform, opacity;
}

/**** disabling Isotope CSS3 transitions ****/

.isotope.no-transition,
.isotope.no-transition .isotope-item,
.isotope .isotope-item.no-transition {
  -webkit-transition-duration: 0s;
  -moz-transition-duration: 0s;
  -ms-transition-duration: 0s;
  -o-transition-duration: 0s;
  transition-duration: 0s;
}

#filters {
  font-family: var(--body-font);
  padding: 0;
  margin: 0;
  margin-bottom: 20px;
  font-weight: 400;
}

#filters li {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 25px;
}

#filters a {
  outline: none;
  text-decoration: none;
  padding: 8px 20px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  font-weight: bold;
}

.text-light #filters a {
  color: rgba(255, 255, 255, 0.5);
}

#filters a:hover {
  background: rgba(255, 255, 255, 0.2);
}

#filters a.selected {
  color: #fff;
}

.text-light #filters a:hover {
  color: #fff;
}

#filters a.selected {
  color: #ffffff;
  background: var(--primary-color);
}

.isotope-item {
  z-index: 2;
}

.isotope-hidden.isotope-item {
  pointer-events: none;
  z-index: 1;
}

.project-carousel ul.slides,
.project-carousel-3-col ul.slides {
  margin-top: 10px;
  margin-bottom: 20px;
}

.logo-carousel .flex-direction-nav,
.project-carousel .flex-control-nav,
.project-carousel .flex-direction-nav,
.project-carousel-3-col .flex-control-nav,
.project-carousel-3-col .flex-direction-nav {
  display: none;
}

.logo-carousel.owl-carousel .owl-item img {
  width: auto;
}

/* .logo-carousel.no-control .flex-control-nav {
  display: none;
} */

.logo-carousel.s2 img {
  background: rgba(255, 255, 255, 0.25);
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  padding: 10px;
}

.owl-theme .owl-dots .owl-dot.active {
  background: var(--primary-color);
}
.owl-carousel.owl-center .owl-item.active.center {
  opacity: 1;
  position: relative;
  z-index: 101;
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0calc ());
  -moz-box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0calc ());
  box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0calc ());
}

.typed-strings p {
  position: absolute;
}

.social-icons-sm i {
  color: #fff;
  margin: 0 5px 0 5px;
  border: solid 1px #555;
  width: 32px;
  height: 32px;
  padding: 8px;
  text-align: center;
  border-radius: 30px;
}

.social-icons-sm i:hover {
  color: #ffffff;
}

.arrowup {
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-bottom: 30px solid #fff;
  margin: 0 auto;
  left: 0;
  right: 0;
  position: absolute;
  margin-top: -30px;
}

.arrowdown {
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #ffffff;
  margin: 0 auto;
  left: 0;
  right: 0;
  position: absolute;
}

.arrowright {
  width: 0;
  height: 0;
  border-top: 60px solid transparent;
  border-bottom: 60px solid transparent;
  border-left: 60px solid green;
}

.arrowleft {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 10px solid blue;
}

a,
img {
  outline: 0;
}

/* overwrite bootstrap */

.nav-pills .nav-link {
  font-weight: 500;
}

.de-preloader {
  width: 100%;
  height: 100%;
  top: 0;
  position: fixed;
  background: #ffffff;
  z-index: 5000;
}

.dark-scheme .de-preloader {
  background: var(--bg-color-even);
}

.dot-loader {
  width: 80px;
  height: 16.6666666667px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.dot-loader-dot {
  will-change: transform;
  height: 16.6666666667px;
  width: 16.6666666667px;
  border-radius: 50%;
  background-color: #ffffff;
  position: absolute;
  -webkit-animation: grow 0.5s ease-in-out infinite alternate;
  animation: grow 0.5s ease-in-out infinite alternate;
}

.dot-loader-dot.dot1 {
  left: 0;
  transform-origin: 100% 50%;
}

.dot-loader-dot.dot2 {
  left: 50%;
  transform: translateX(-50%) scale(1);
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

.dot-loader-dot.dot3 {
  right: 0;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

@-webkit-keyframes grow {
  to {
    transform: translateX(-50%) scale(0);
  }
}

@keyframes grow {
  to {
    transform: translateX(-50%) scale(0);
  }
}

/* -------------------------Line Preloader--------------------- */

.line-preloader {
  width: 100px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 80px;
  height: 16.6666666667px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.line-preloader .p-line {
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid rgba(0, 0, 0, 0);
}

.line-preloader .p-line:nth-child(1) {
  position: absolute;
  width: 25px;
  height: 25px;
  border-right: 2px solid gold;
  border-bottom: 2px solid gold;
  animation: anim4 600ms linear infinite;
}

.line-preloader .p-line:nth-child(2) {
  border-left: 2px solid gold;
  border-top: 2px solid gold;
  animation: anim4 1200ms linear infinite;
}

.line-preloader .p-line:nth-child(3) {
  position: absolute;
  width: 75px;
  height: 75px;
  border-right: 2px solid gold;
  border-top: 2px solid gold;
  animation: anim4 900ms linear infinite;
}

@keyframes anim4 {
  to {
    transform: rotate(360deg);
  }
}

.de-step-icon {
  width: 80px;
  height: 80px;
  background-color: var(--bg-dark-1);
  color: white;
  border-radius: var(--rounded-1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  margin: 0 auto 20px;
}

.de-step-icon i {
  font-size: 32px;
}

.de-step {
  text-align: center;
  position: relative;
  padding: 20px;
}

.de-step-arrow::after {
  content: "→";
  font-size: 24px;
  position: absolute;
  right: -25px;
  top: 50%;
  transform: translateY(-50%);
  color: #000;
}

.dark-scheme .de-step-arrow::after,
.text-light .de-step-arrow::after {
  color: #ffffff;
}

.rtl .de-step-arrow::after {
  display: none;
}

.rtl .de-step-arrow::before {
  content: "←";
  font-size: 24px;
  position: absolute;
  right: auto;
  left: -25px;
  top: 50%;
  transform: translateY(50%);
  color: #000;
}

.de-step:last-child .de-step-arrow::after {
  content: none;
}

@media (max-width: 767.98px) {
  .de-step-arrow::after {
    display: none;
  }
}

.d-tag {
  border: solid 1px rgba(0, 0, 0, 0.5);
  display: inline-block;
  padding: 0 10px;
  border-radius: var(--rounded-1);
  -moz-border-radius: var(--rounded-1);
  -webkit-border-radius: var(--rounded-1);
  margin-right: 5px;
}

/* demo */

#selector {
  width: 500px;
  position: fixed;
  right: 20px;
  bottom: 60px;
  padding: 5px;
  z-index: 1000;
}

#selector .opt {
  margin-top: 10px;
  margin-right: 5px;
  width: 20px;
  height: 20px;
  display: block;
  float: left;
  background: #ffffff;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  cursor: pointer;
  border: solid 1px rgba(255, 255, 255, 0.5);
}

#selector .opt:hover {
  border-color: #ffffff;
}

#selector .opt.tc1 {
  background: #4a81d3;
}

#selector .opt.tc2 {
  background: #dc2424;
}

#selector .opt.tc3 {
  background: #5c258d;
}

#selector .opt.tc4 {
  background: #4cbb17;
}

#selector .opt.tc5 {
  background: #0073cf;
}

#selector .opt.tc6 {
  background: #33c9bd;
}

#selector .opt.tc7 {
  background: #ae9749;
}

#selector .opt:after {
  position: relative;
  display: inline-block;
  content: "\f00c";
  font-family: "FontAwesome";
  top: -5px;
  opacity: 0;
  transform: scale(2);
}

#selector .opt.active:after {
  opacity: 1;
  transform: scale(1);
}

#selector #dark-mode,
#selector #related-items {
  font-weight: bold;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin-top: 50px;
  right: 15px;
  width: 40px;
  height: 39px;
  position: absolute;
  background: #222222;
  padding: 8px;
  padding-top: 0px;
  cursor: pointer;
  overflow: hidden;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  color: #fdd32a;
  font-size: 16px;
}

#selector #related-items {
  margin-top: 100px;
  background: #82b440;
  color: #ffffff;
}

#selector #dark-mode:hover,
#selector #related-items:hover {
  width: 190px;
}

#selector #dark-mode:before,
#selector #related-items:before {
  font-weight: normal;
  display: inline-block;
  content: "\f186";
  font-family: "FontAwesome";
  font-size: 20px;
  padding: 3px;
  padding-top: 6px;
  margin-right: 10px;
}

#selector #related-items:before {
  content: "\f05a";
}

#selector #dark-mode.active {
  background: #fdd32a;
  color: #222222;
}

.disable-dark #selector .dark-mode {
  display: none;
}

#selector .sc-opt {
  cursor: pointer;
  color: #fff;
  font-size: 14px;
  height: 38px;
  overflow: hidden;
  position: absolute;
  text-align: center;
  max-width: 45px;
  padding-right: 20px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  right: 10px;
  background: var(--bg-dark-3);
}

#selector .sc-opt:hover {
  max-width: 100%;
}

#selector .sc-opt .sc-icon {
  width: 45px;
  height: 38px;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  line-height: 14px;
  padding: 12px 10px;
  position: relative;
  float: left;
}

#selector .sc-mt {
  margin-top: 45px;
}

#selector .sc-val {
  display: inline-block;
  margin-top: 5px;
}

.page-item.active .page-link {
  background: var(--primary-color);
}

.line-through {
  text-decoration: line-through;
}

/* ================================================== */

/* media query */

/* ================================================== */

@media (min-width: 1000px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: var(--container-max-width);
  }
}

@media (min-width: 1200px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 1200px;
  }
}

@media (min-width: 1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 1304px;
  }
}

/* bootstrap cols 5 */
@media (min-width: 992px) {
  .col-md-1-5 {
    width: 20%;
  }
  .col-md-2-5 {
    width: 40%;
  }
  .col-md-3-5 {
    width: 60%;
  }
  .col-md-4-5 {
    width: 80%;
  }
  .col-md-5-5 {
    width: 100%;
  }
}

@media (min-width: 1200px) {
  .col-lg-1-5 {
    width: 20%;
  }
  .col-lg-2-5 {
    width: 40%;
  }
  .col-lg-3-5 {
    width: 60%;
  }
  .col-lg-4-5 {
    width: 80%;
  }
  .col-lg-5-5 {
    width: 100%;
  }
}
/* bootstrap cols 5 end */

@media (min-width: 980px) and (max-width: 1199px) {
  #mainmenu li a:after {
    margin-left: 15px;
  }

  .container,
  .container-lg,
  .container-md,
  .container-sm {
    min-width: 95%;
  }
}

/* -------------------------------------------------- 
    design for 768px
    /* ================================================== */

@media (min-width: 768px) and (max-width: 979px) {
  .slider_text {
    padding-top: 0px;
  }
}

@media only screen and (max-width: 992px) {
  .container {
    max-width: 100%;
  }

  /* #topbar{
    display: none;
  } */

  .de_table .tr .td:nth-child(4),
  .de_table .tr .td:nth-child(5),
  .de_table .tr .td:nth-child(6),
  .de_table .tr .td:nth-child(7) {
    display: none;
  }

  .col-right {
    position: absolute;
    top: -82px;
    right: 60px;
    width: 140px;
  }

  .countdown-s2 .countdown-show4 .countdown-section {
    width: 60px;
    padding: 5px;
    margin: 5px;
  }

  .countdown-s2 .countdown-period {
    font-size: 10px;
  }

  .countdown-s2 .countdown-amount {
    font-size: 20px;
  }

  .mb-sm-20 {
    margin-bottom: 20px;
  }

  .mb-sm-30 {
    margin-bottom: 30px;
  }

  .mt-sm-0 {
    margin-top: 0;
  }

  .sm-mt-0 {
    margin-top: 0;
  }

  .p-sm-30 {
    padding: 40px;
  }

  .pb-sm-0 {
    padding-bottom: 0;
  }

  .mb-sm-0 {
    margin-bottom: 0;
  }

  .sm-p-40 {
    padding: 40px;
  }

  header .header-col {
    position: absolute;
    top: 0;
  }

  header .header-col.mid {
    position: absolute;
    top: 70px;
    width: 100%;
    padding: 0 0 0 0;
  }

  .text-center-sm {
    text-align: center;
  }
  .sm-pt10 {
    padding-top: 10px;
    margin-right: 0 !important;
  }
  @media (max-width: 991px) {
    /* Force mobile menu panel to stick to left */

    header#header.showmenu,
    header#header.menu-open {
      left: 0 !important;
      right: auto !important;
      transform: none !important;
      margin: 0 !important;
    }

    /* Remove any internal centering */

    header#header.showmenu > .container,
    header#header.menu-open > .container {
      margin: 0 !important;
      padding: 0 !important;
      max-width: 100% !important;
      width: 100% !important;
    }

    /* Remove column spacing pushing menu inward */

    header#header.showmenu .col-md-12,
    header#header.menu-open .col-md-12 {
      padding-left: 0 !important;
      padding-right: 0 !important;
    }
    header#header.showmenu,
    header#header.menu-open {
      width: 80% !important;
      max-width: 80% !important;
    }
  }

  #menu-btn {
    display: block;
    float: right;
    z-index: 1000;
    top: 0;
    right: 0;
  }

  .inner-padding {
    padding: 40px;
  }

  .header-col-left,
  .header-col-right {
    padding-top: 16px;
  }

  .header-col-mid #mainmenu {
    position: absolute;
    top: 90px;
    width: 100%;
    padding: 0 0 0 0;
    left: 20px;
  }

  #mainmenu > li::before {
    display: none;
  }

  header {
    display: none;
  }

  header.header-bg {
    background: rgba(0, 0, 0, 1);
  }

  header,
  header.fixed {
    display: block;
    position: inherit;
    margin: 0;
    padding: 0;
    margin-top: 0;
    height: auto;
    background: var(--bg-dark-1);
  }

  header.autoshow {
    height: auto;
    top: 0;
  }

  header.autoshow #mainmenu li a {
    background: none;
  }

  header.header-mobile-sticky {
    position: fixed;
  }

  #subheader.s2 {
    padding: 40px 0 30px 0;
  }

  #subheader .crumb {
    margin-top: -5px;
    margin-bottom: 0;
  }

  #sidebar {
    padding-left: 10px;
  }

  .slider_text h1 {
    font-size: 32px;
  }

  .slider_text .description {
    display: none;
  }

  #logo,
  #logo .inner {
    vertical-align: middle;
    height: auto;
  }

  nav {
    height: 0;
  }

  #mainmenu {
    position: fixed;
    height: 100%;
    z-index: 200;
    width: 200px;
    margin: 0;
    margin-top: 10px;
    padding: 0;
    padding-top: 20px;
    padding-bottom: 100px !important;
    overflow-y: auto;
    top: 100px;
  }

  #mainmenu ul {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }

  #mainmenu a.menu-item {
    text-align: left;
    padding-left: 0;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  #mainmenu li.has-child:after {
    display: none;
  }

  #mainmenu li li a.menu-item,
  #mainmenu li li li a.menu-item {
    padding-left: 0;
  }

  #mainmenu a.menu-item:hover {
    background: #111;
  }

  #mainmenu a.menu-item:hover {
    background: #111;
  }

  #mainmenu li ul {
    display: block;
    position: inherit;
    margin: 0;
    width: 100%;
  }

  #mainmenu li {
    border-bottom: solid 1px var(--bg-dark-3);
    margin: 0;
    width: 100%;
    display: block;
  }

  #mainmenu li a.menu-item:after {
    display: none;
  }

  #mainmenu li:last-child {
    margin-bottom: 30px;
  }

  #mainmenu li ul {
    border-top: solid 1px #eee;
    top: auto;
    width: auto;
    height: auto;
    position: inherit;
    visibility: visible;
    opacity: 1;
  }

  #mainmenu > li.menu-item-has-children > a.menu-item {
    position: relative;
    padding-right: 15px;
  }

  #mainmenu > li.menu-item-has-children > a.menu-item:after {
    content: "\f107";
    font-family: "FontAwesome";
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
  }

  #mainmenu li ul a.menu-item {
    width: 100%;
    background: none;
    border: none;
  }

  #mainmenu li ul li {
    border: none;
    padding-left: 40px;
  }

  #mainmenu li ul li a.menu-item {
    display: block;
  }

  #mainmenu li ul li:last-child {
    border-bottom: none;
    margin: 0;
  }

  #mainmenu li ul li:last-child a.menu-item {
    border-bottom: none;
  }

  #mainmenu li a {
    color: #eceff3;
  }

  #mainmenu li li a.menu-item:hover {
    color: #fff;
  }

  #mainmenu ul:not(.mega) {
    border: none;
  }

  #mainmenu > li ul.mega .sb-menu {
    border: none;
  }

  #back-to-top {
    display: none;
  }

  header.header-mobile {
    overflow: hidden;
    position: relative;
  }

  header.header-mobile #mainmenu {
    width: 100%;
    padding-right: 30px;
    position: absolute;
  }

  header.header-mobile #mainmenu ul {
    background: none;
  }

  header.header-mobile #mainmenu a.menu-item {
    text-align: left;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  header.header-light.header-mobile #mainmenu a.menu-item {
    color: var(--heading-font-color);
  }

  header.header-mobile #mainmenu a.menu-item:hover {
    background: none;
  }

  header.header-mobile #mainmenu li ul {
    display: block;
    position: inherit;
    margin: 0;
    width: 100%;
  }

  header.header-mobile #mainmenu li {
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);
    margin: 0;
    width: 100%;
    display: block;
  }


  /* ============================================================
   ABOUT US & PLACEMENT — MOBILE FIX
   Only affects mobile, desktop unchanged
   ============================================================ */
@media (max-width: 767px) {

  /* ── Force image container full width ── */
  .half-fluid .col-lg-6.position-lg-absolute {
    position: relative !important;
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    height: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
  }

  /* ── The bgcustom image div — full width, keep original height ── */
  .half-fluid .col-lg-6.position-lg-absolute .image.bgcustom {
    width: 100% !important;
    min-height: 260px !important;
    background-size: cover !important;
    background-position: center !important;
  }

  /* ── Hide triangle decorations ── */
  .half-fluid .triangle-bottomright-dark,
  .half-fluid .triangle-bottomleft-dark {
    display: none !important;
  }

}

@media (max-width: 767px) {

  /* ── SUBHEADER HERO ── */
  #subheader {
    padding: 60px 0 40px !important;
    min-height: auto !important;
  }
  #subheader h1 {
    font-size: 32px !important;
  }
  #subheader .spacer-double {
    display: none !important;
  }

  /* ── OVERVIEW SECTION (CEO / Placement intro) ── */

  /* Stack columns properly */
  .row.g-4.gx-5.align-items-center {
    flex-direction: column !important;
  }

  /* Left text col */
  .col-lg-6 .ms-lg-4 {
    margin-left: 0 !important;
    text-align: center !important;
  }
  .col-lg-6 .ms-lg-4 .subtitle,
  .col-lg-6 .ms-lg-4 h2,
  .col-lg-6 .ms-lg-4 p,
  .col-lg-6 .ms-lg-4 h3 {
    text-align: left !important;
  }

  .col-lg-6 .ms-lg-4 p,
  .text-light p{
    font-size: 15px !important;
  }



  /* ── CENTERED BADGE (100+ / CEO) ── */
  /* Remove absolute positioning — stack it above images */
  .abs.abs-centered.rounded-1 {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 auto 16px !important;
    width: fit-content !important;
    max-width: 180px !important;
    z-index: auto !important;
  }

  /* Wrap the relative container so badge stacks above */
  .col-lg-6 .relative {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  /* ── IMAGE GRID ── */
  /* Two images side by side on mobile — equal height */
  .col-lg-6 .row.g-4 {
    width: 100% !important;
  }
  .col-lg-6 .row.g-4 .col-lg-6 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .col-lg-6 .row.g-4 .col-lg-6 img {
    height: 180px !important;
    object-fit: cover !important;
    width: 100% !important;
    border-radius: 8px !important;
  }

  /* ── VISION / MISSION SECTIONS ── */
  .half-fluid .container .row {
    flex-direction: column !important;
  }

  /* Hide the split image — show as background instead */
  .position-lg-absolute {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    height: 240px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    margin-bottom: 24px !important;
  }
  .position-lg-absolute .image {
    height: 240px !important;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 10px !important;
  }
  .position-lg-absolute .triangle-bottomright-dark {
    display: none !important;
  }

  /* Text side */
  .col-lg-6.offset-lg-6 {
    margin-left: 0 !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .col-lg-6.offset-lg-6 .ps-lg-5 {
    padding-left: 0 !important;
    text-align: left !important;
  }
  .col-lg-6.offset-lg-6 .text-end {
    text-align: left !important;
  }

  /* Padding inside vision/mission text block */
  .py-5.my-5,
  .py-5.my-5.me-lg-3 {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .me-lg-3 { margin-right: 0 !important; }

  /* ── MARQUEE SECTIONS ── */
  .de-marquee-list-2 .fs-32 {
    font-size: 22px !important;
  }

  /* ── PLACEMENT PAGE SPECIFIC ── */
  /* Placement stat badge */
  .fs-72 {
    font-size: 48px !important;
    line-height: 1.1 !important;
  }
  .fs-16.lh-1-5 {
    font-size: 14px !important;
  }

  /* Start For Free button — full width on mobile */
  .btn-main.fx-slide {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
  }

}

/* ── SMALL PHONES ── */
@media (max-width: 480px) {

  #subheader h1 { font-size: 28px !important; }

  .position-lg-absolute,
  .position-lg-absolute .image {
    height: 200px !important;
  }

  .col-lg-6 .row.g-4 .col-lg-6 img {
    height: 140px !important;
  }

  .py-5.my-5,
  .py-5.my-5.me-lg-3 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

}

  .dark-scheme header.header-mobile #mainmenu li {
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }

  header.header-mobile #mainmenu li ul.mega ul {
    height: auto;
  }

  header.header-mobile #mainmenu li ul.mega .menu-content {
    background: #fff;
  }

  header.header-light.header-mobile #mainmenu li,
  header.header-light.header-mobile #mainmenu li ul li a.menu-item {
    border-color: #eee;
  }

  header.header-dark.header-mobile {
    background: #222;
  }

  header.header-dark.header-mobile #mainmenu li {
    border-color: #333;
  }

  header.header-dark.header-mobile #mainmenu li a.menu-item {
    color: #fff;
  }

  header.header-mobile #mainmenu li a.menu-item:after {
    display: none;
  }

  header.header-mobile #mainmenu li:last-child {
    margin-bottom: 30px;
  }

  header.header-mobile #mainmenu li ul {
    border-top: none;
    top: auto;
  }

  header.header-mobile #mainmenu li ul a.menu-item {
    width: 100%;
    background: none;
    border: none;
  }

  header.header-mobile #mainmenu li ul li {
    border: none;
    padding-left: 40px;
  }

  header #mainmenu li ul li:first-child {
    border-top: solid 1px var(--bg-dark-3);
  }

  .dark-scheme header #mainmenu li ul li:first-child {
    border-top-color: rgba(255, 255, 255, 0.1);
  }

  header.header-mobile #mainmenu li ul li a.menu-item {
    display: block;
    border-bottom: solid 1px var(--bg-dark-3);
  }

  header.header-mobile #mainmenu li ul li:last-child {
    border-bottom: none;
    margin: 0;
  }

  header.header-mobile #mainmenu li ul li:last-child a.menu-item {
    border-bottom: none;
  }

  header.header-mobile #mainmenu li a {
    color: #ffffff;
    /* margin-top: 8px; */
  }

  .dark-scheme header.header-mobile #mainmenu li a.menu-item {
    color: #ffffff;
  }

  header.header-mobile #mainmenu li a.menu-item:hover {
    color: var(--primary-color);
  }

  .dark-scheme header.header-mobile #mainmenu li a.menu-item:hover {
    color: #fff;
  }

  header.header-mobile #mainmenu li ul {
    height: 0;
    overflow: hidden;
    position: relative;
    left: 0;
  }

  header.header-mobile #mainmenu li ul li ul {
    margin-bottom: 10px;
  }

  header.header-mobile #mainmenu > li > span {
    width: 36px;
    height: 36px;
    background: url(../images/ui/arrow-down-light.png) center no-repeat;
    position: absolute;
    right: 0;
    margin-top: 10px;
    z-index: 1000;
    cursor: poInter;
  }

  .dark-scheme header.header-mobile #mainmenu > li > span {
    background: url(../images/ui/arrow-down-light.png) center no-repeat;
  }

  header.header-mobile #mainmenu li span.active {
    background: url(../images/ui/arrow-up-light.png) center no-repeat;
  }

  .dark-scheme header.header-mobile #mainmenu li span.active {
    background: url(../images/ui/arrow-up-light.png) center no-repeat;
  }

  header.header-mobile #mainmenu li > ul > li > span {
    width: 36px;
    height: 36px;
    background: url(../images/ui/arrow-down.png) center no-repeat;
    position: absolute;
    right: 0;
    margin-top: -45px;
    z-index: 1000;
    cursor: poInter;
  }

  header.header-mobile #mainmenu > li > ul > li > span.active {
    background: url(../images/ui/arrow-up.png) center no-repeat;
  }

  header.header-mobile #mainmenu li ul li a.menu-item {
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);
  }

  .dark-scheme header.header-mobile #mainmenu li ul li a.menu-item {
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }

  header.header-mobile #mainmenu li ul li:last-child > a.menu-item {
    border-bottom: none;
  }

  header.header-light.header-mobile #mainmenu > li > span,
  header.header-light.header-mobile #mainmenu li > ul > li > span {
    background: url(../images/ui/arrow-down.png) center no-repeat;
  }

  header.header-light.header-mobile #mainmenu > li > span.active,
  header.header-light.header-mobile #mainmenu li > ul > li > span.active {
    background: url(../images/ui/arrow-up.png) center no-repeat;
  }

  #mainmenu li ul.mega {
    position: fixed;
    left: 0;
    width: 100%;
    margin-top: 30px;
    display: block;
  }

  #mainmenu li ul.mega > li {
    width: 100%;
  }

  #mainmenu li ul.mega > li ul {
    position: static;
    visibility: visible;
    opacity: 1;
    left: 0;
    float: none;
    width: 100%;
  }

  #mainmenu ul.mega > li ul li {
    margin: 0;
    padding: 0;
  }

  #mainmenu li ul.mega .menu-content {
    background: #202020;
    padding: 30px;
  }

  /* header light */
  .header-light #mainmenu ul li a.menu-item,
  .header-light #mainmenu ul li a.menu-item:hover {
    color: #333;
  }

  .de_tab.tab_methods .de_nav {
    text-align: center;
  }

  .de_tab.tab_methods .de_nav li {
    margin: 5px;
    padding: 0;
  }

  .de_tab.tab_methods .de_nav li span {
    margin: 0;
    display: inline-block;
  }

  .de_tab.tab_methods .de_nav li .v-border {
    border: none;
  }

  .hidden-phone {
    display: none;
  }

  .sm-hide {
    display: none;
  }

  .p-sm-relative {
    position: relative;
  }

  .d-btn-close {
    position: relative;
  }

  .de_tab.tab_style_4 .de_nav li {
    min-width: 100px;
  }

  #mainmenu a.menu-item span {
    display: none;
  }

  .de_tab.tab_methods.style-2 .de_nav li.active .arrow {
    margin-top: -40px;
    margin-bottom: 40px;
  }

  .table-custom-1 {
    position: relative;
    height: auto;
  }

  .timeline > li > .timeline-panel {
    width: 100%;
  }

  .timeline-badge {
    display: none;
  }

  .timeline:before {
    background: none;
  }

  .tp-caption {
    padding-left: 40px;
    padding-right: 40px;
  }

  .subfooter .de-flex,
  .subfooter .de-flex-col {
    display: block;
  }

  .subfooter .social-icons {
    margin-top: 20px;
  }

  .subfooter span.copy {
    margin-top: 20px;
    display: block;
  }

  .dropdown {
    display: inline-block;
    margin-bottom: 10px;
  }

  .sm-img-fluid {
    width: 100%;
  }

  section {
    padding: 60px 0;
  }

  #subheader h1:not(.cam-style) {
    margin-top: 69px;
    padding: 0;
    font-size: 32px;
  }

  #subheader {
    padding: 40px 0 80px 0 !important;
  }

  #testimonial-carousel .de_testi {
    margin: 0 20px;
  }

  .crumb {
    margin-bottom: 0;
  }

  section.bottom-rounded {
    overflow: hidden;
    border-radius: 0 0 0% 0%;
    -moz-border-radius: 0 0 0% 0%;
    -webkit-border-radius: 0 0 0% 0%;
    padding-bottom: 60px;
  }

  /* title tablet */

  h1,
  h1.ultra-big,
  h1.ultra-big .text-line,
  h1.ultra-big-2,
  .title-text,
  h1.slider-title {
    font-size: 60px;
  }

  h1.slider-title,
  h2.slider-title {
    margin-bottom: 0;
  }

  h2 {
    font-size: 40px;
  }

  .arrow-divider > [class*="col-"]:nth-child(n + 2):after {
    display: none;
  }

  .pos-sm-relative {
    position: relative !important;
  }

  /* padding top (px) */
  .pt-sm-10 {
    padding-top: 10px;
  }
  .pt-sm-20 {
    padding-top: 20px;
  }
  .pt-sm-30 {
    padding-top: 30px;
  }
  .pt-sm-40 {
    padding-top: 40px;
  }
  .pt-sm-50 {
    padding-top: 50px;
  }
  .pt-sm-60 {
    padding-top: 60px;
  }
  .pt-sm-70 {
    padding-top: 70px;
  }
  .pt-sm-80 {
    padding-top: 80px;
  }
  .pt-sm-90 {
    padding-top: 90px;
  }
  .pt-sm-100 {
    padding-top: 10px;
  }

  /* padding top (px) */
  .pb-sm-10 {
    padding-bottom: 10px;
  }
  .pb-sm-20 {
    padding-bottom: 20px;
  }
  .pb-sm-30 {
    padding-bottom: 30px;
  }
  .pb-sm-40 {
    padding-bottom: 40px;
  }
  .pb-sm-50 {
    padding-bottom: 50px;
  }
  .pb-sm-60 {
    padding-bottom: 60px;
  }
  .pb-sm-70 {
    padding-bottom: 70px;
  }
  .pb-sm-80 {
    padding-bottom: 80px;
  }
  .pb-sm-90 {
    padding-bottom: 90px;
  }
  .pb-sm-100 {
    padding-bottom: 10px;
  }

  /* margin top (px) */
  .mt-sm-10 {
    margin-top: 10px;
  }
  .mt-sm-20 {
    margin-top: 20px;
  }
  .mt-sm-30 {
    margin-top: 30px;
  }
  .mt-sm-40 {
    margin-top: 40px;
  }
  .mt-sm-50 {
    margin-top: 50px;
  }
  .mt-sm-60 {
    margin-top: 60px;
  }
  .mt-sm-70 {
    margin-top: 70px;
  }
  .mt-sm-80 {
    margin-top: 80px;
  }
  .mt-sm-90 {
    margin-top: 90px;
  }
  .mt-sm-100 {
    margin-top: 10px;
  }

  /* margin top (px) */
  .mb-sm-10 {
    margin-bottom: 10px;
  }
  .mb-sm-20 {
    margin-bottom: 20px;
  }
  .mb-sm-30 {
    margin-bottom: 30px;
  }
  .mb-sm-40 {
    margin-bottom: 40px;
  }
  .mb-sm-50 {
    margin-bottom: 50px;
  }
  .mb-sm-60 {
    margin-bottom: 60px;
  }
  .mb-sm-70 {
    margin-bottom: 70px;
  }
  .mb-sm-80 {
    margin-bottom: 80px;
  }
  .mb-sm-90 {
    margin-bottom: 90px;
  }
  .mb-sm-100 {
    margin-bottom: 10px;
  }

  .fs-sm-1vw {
    font-size: 1vw;
  }
  .fs-sm-2vw {
    font-size: 2vw;
  }
  .fs-sm-3vw {
    font-size: 3vw;
  }
  .fs-sm-4vw {
    font-size: 4vw;
  }
  .fs-sm-5vw {
    font-size: 5vw;
  }
  .fs-sm-6vw {
    font-size: 6vw;
  }
  .fs-sm-7vw {
    font-size: 7vw;
  }
  .fs-sm-8vw {
    font-size: 8vw;
  }
  .fs-sm-9vw {
    font-size: 9vw;
  }
  .fs-sm-10vw {
    font-size: 10vw;
  }
  .fs-sm-11vw {
    font-size: 11vw;
  }
  .fs-sm-12vw {
    font-size: 12vw;
  }
  .fs-sm-13vw {
    font-size: 13vw;
  }
  .fs-sm-14vw {
    font-size: 14vw;
  }
  .fs-sm-15vw {
    font-size: 15vw;
  }

  /* #content {
    margin-top: 50px;
  } */

  #btn-extra {
    display: none;
  }

  .sm-pt-0 {
    padding-top: 0;
  }

  .de-quick-search {
    display: none;
  }

  #extra-wrap {
    width: 100%;
    right: -100%;
  }
}

/* -------------------------------------------------- 
    custom for 320px & 480px 
    /* -------------------------------------------------- */

@media only screen and (max-width: 767px) {
  /* 
   header .logo-main {
    display: none;
  }

  header .logo-init {
    display: none;
  } */

  header .logo-mobile {
    display: block;
  }

  header .btn-main {
    display: none;
  }

  #topbar {
    display: none;
  }

  .menu_side_area {
    margin-left: 20px;
    width: 100%;
    position: relative;
    right: 0;
    text-align: right;
    z-index: 0;
    display: flex;
  }

  header .container {
    min-width: 100%;
  }

  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  #filters li.pull-right {
    float: none;
  }

  .text-item {
    font-size: 48px;
    line-height: 48px;
  }

  .text-item i {
    font-size: 36px;
  }

  .de_tab.tab_style_4 .de_nav {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
  }

  .de_tab.tab_style_4 .de_nav li {
    min-width: 33.3%;
    width: 33.3%;
    border: none;
  }

  .de_tab.tab_style_4 .de_nav li:first-child,
  .de_tab.tab_style_4 .de_nav li:last-child {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
  }

  .xs-hide {
    display: none;
  }

  header a.btn-main {
    display: none !important;
  }

  .scrollbar-v,
  .float-text {
    display: none;
  }

  .de-spot span {
    display: none;
  }

  .de-spot .de-circle-1,
  .de-spot .de-circle-2 {
    transform: scale(0.25);
  }

  section {
    padding: 40px 0;
  }

  #subheader {
    padding-top: 100px;
  }

  /* title phone */

  h1,
  h1.ultra-big,
  h1.ultra-big .text-line,
  h1.ultra-big-2,
  .title-text,
  h1.slider-title,
  h2.slider-title {
    font-size: 48px;
  }

  h2 {
    font-size: 21px;
  }

  .mt-xs-0 {
    margin-top: 0;
  }

  /* padding top (px) */
  .pt-xs-10 {
    padding-top: 10px;
  }
  .pt-xs-20 {
    padding-top: 20px;
  }
  .pt-xs-30 {
    padding-top: 30px;
  }
  .pt-xs-40 {
    padding-top: 40px;
  }
  .pt-xs-50 {
    padding-top: 50px;
  }
  .pt-xs-60 {
    padding-top: 60px;
  }
  .pt-xs-70 {
    padding-top: 70px;
  }
  .pt-xs-80 {
    padding-top: 80px;
  }
  .pt-xs-90 {
    padding-top: 90px;
  }
  .pt-xs-100 {
    padding-top: 10px;
  }

  /* padding top (px) */
  .pb-xs-10 {
    padding-bottom: 10px;
  }
  .pb-xs-20 {
    padding-bottom: 20px;
  }
  .pb-xs-30 {
    padding-bottom: 30px;
  }
  .pb-xs-40 {
    padding-bottom: 40px;
  }
  .pb-xs-50 {
    padding-bottom: 50px;
  }
  .pb-xs-60 {
    padding-bottom: 60px;
  }
  .pb-xs-70 {
    padding-bottom: 70px;
  }
  .pb-xs-80 {
    padding-bottom: 80px;
  }
  .pb-xs-90 {
    padding-bottom: 90px;
  }
  .pb-xs-100 {
    padding-bottom: 10px;
  }

  /* margin top (px) */
  .mt-xs-10 {
    margin-top: 10px;
  }
  .mt-xs-20 {
    margin-top: 20px;
  }
  .mt-xs-30 {
    margin-top: 30px;
  }
  .mt-xs-40 {
    margin-top: 40px;
  }
  .mt-xs-50 {
    margin-top: 50px;
  }
  .mt-xs-60 {
    margin-top: 60px;
  }
  .mt-xs-70 {
    margin-top: 70px;
  }
  .mt-xs-80 {
    margin-top: 80px;
  }
  .mt-xs-90 {
    margin-top: 90px;
  }
  .mt-xs-100 {
    margin-top: 10px;
  }

  /* margin top (px) */
  .mb-xs-10 {
    margin-bottom: 10px;
  }
  .mb-xs-20 {
    margin-bottom: 20px;
  }
  .mb-xs-30 {
    margin-bottom: 30px;
  }
  .mb-xs-40 {
    margin-bottom: 40px;
  }
  .mb-xs-50 {
    margin-bottom: 50px;
  }
  .mb-xs-60 {
    margin-bottom: 60px;
  }
  .mb-xs-70 {
    margin-bottom: 70px;
  }
  .mb-xs-80 {
    margin-bottom: 80px;
  }
  .mb-xs-90 {
    margin-bottom: 90px;
  }
  .mb-xs-100 {
    margin-bottom: 10px;
  }

  .ss-wrap {
    position: relative;
    width: 200%;
    margin-left: -50%;
  }

  .fs-xs-1vw {
    font-size: 1vw;
  }
  .fs-xs-2vw {
    font-size: 2vw;
  }
  .fs-xs-3vw {
    font-size: 3vw;
  }
  .fs-xs-4vw {
    font-size: 4vw;
  }
  .fs-xs-5vw {
    font-size: 5vw;
  }
  .fs-xs-6vw {
    font-size: 6vw;
  }
  .fs-xs-7vw {
    font-size: 7vw;
  }
  .fs-xs-8vw {
    font-size: 8vw;
  }
  .fs-xs-9vw {
    font-size: 9vw;
  }
  .fs-xs-10vw {
    font-size: 10vw;
  }
  .fs-xs-11vw {
    font-size: 11vw;
  }
  .fs-xs-12vw {
    font-size: 12vw;
  }
  .fs-xs-13vw {
    font-size: 13vw;
  }
  .fs-xs-14vw {
    font-size: 14vw;
  }
  .fs-xs-15vw {
    font-size: 15vw;
  }
}

/* -------------------------------------------------- 
    design for 480px
    /* -------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }

  .timeline-panel {
    margin-bottom: 30px;
  }

  .timeline-pic {
    height: 300px;
  }
}

/* -------------------------------------------------- 
    design for 320px
    /* -------------------------------------------------- */

@media only screen and (max-width: 480px) {
  .text-item {
    font-size: 32px;
    line-height: 32px;
  }

  .text-item i {
    font-size: 24px;
  }

  h4.s2 span {
    display: block;
    margin: 0;
    padding: 0;
  }

  .h-phone {
    display: none;
  }

  header a.btn-main i {
    display: inline-block;
  }

  .de__cart-item {
    display: block;
  }
}

@media only screen and (max-width: 360px) {
  #topbar {
    display: none;
  }
}

/* section control */
@media only screen and (min-device-width: 768) and (max-device-width: 1024) and (orientation: portrait) {
  section {
    -webkit-background-size: auto 100%;
    -moz-background-size: auto 100%;
    -o-background-size: auto 100%;
    background-size: auto 100%;
    background-attachment: scroll;
  }
}

@media only screen and (max-width: 992px) {
  #subheader {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-attachment: scroll;
  }

  section {
    -webkit-background-size: auto 100%;
    -moz-background-size: auto 100%;
    -o-background-size: auto 100%;
    background-size: auto 100%;
    background-attachment: scroll;
  }
}

/* new added */
.half-fluid .left-half,
.half-fluid .right-half {
  left: 50%;
  margin-left: -50vw;
  max-width: 100vw;
  position: relative;
  right: 50%;
  width: 100vw;
  padding: 0px;
}
.half-fluid .image {
  background-size: cover;
  background-position: center;
  min-height: 400px;
  height: 100%;
}

@media (min-width: 992px) {
  .half-fluid .left-half {
    padding-left: 0 !important;
    position: absolute;
    left: 0;
    right: 50%;
    margin-left: auto;
    width: auto;
  }
  .half-fluid .right-half {
    padding-right: 0 !important;
    position: absolute;
    right: 0;
    left: 50%;
    margin-left: auto;
    width: auto;
  }
}
/* ================= TOP BAR ================= */

/* #topbar{
background:#0c2a66;
color:#fff;
font-size:10px;
padding: 5px 0;
}

#topbar a{
color:#fff;
text-decoration:none;
}

.social-icons a{
margin-left:10px;
}


/* ================= HEADER ================= *

.header-light{
position:relative;
z-index:99999;
background:#fff;
}


/* ================= HEADER FLEX ================= 

.de-flex{
display:flex;
align-items:center;
justify-content:space-between;
min-height:70px;
position:relative;
}


/* ================= LOGO ================= *

#logo img{
height: 55px;
width:auto;
}


/* ================= MAIN MENU ================= *

#mainmenu{
display:flex;
list-style:none;
margin:0;
padding:0;
align-items:center;
}

#mainmenu li{
position:relative;
}

#mainmenu li a{
display:block;
padding: 10px 10px;
font-weight:500;
color:#222;
text-decoration:none;
font-size: 16px;
}

#mainmenu li.menu-item-has-children > ul{
position:absolute;
top:70px;
left:0;
width:260px;
background:#fff;
display:none;
box-shadow:0 15px 40px rgba(0,0,0,0.15);
z-index:9999;
}

#mainmenu li.menu-item-has-children:hover > ul{
display:block;
}

#mainmenu li.menu-item-has-children ul li.menu-item-has-children > ul{
top:0;
left:100%;
}

#menu-btn{
display:none;
position:absolute;
right:20px;
top:22px;
z-index:100000;
cursor:pointer;
font-size:28px;
} */

/* ================= NAVBAR ================= */

/* ============================================================
   TOPBAR
   ============================================================ */
/* ============================================================
   TOPBAR
   ============================================================ */
#topbar {
  background: #0c2a66;
  color: #fff;
  font-size: 13px;
  padding: 6px 0;
  position: relative;
  z-index: 10000;
}

.topbar-widget {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  white-space: nowrap;
}

.topbar-widget i {
  font-size: 14px;
  line-height: 1;
}

.social-icons a {
  color: #fff;
  font-size: 14px;
  transition: 0.3s;
}

.social-icons a:hover {
  opacity: 0.8;
}

@media (max-width: 991px) {
  #topbar {
    display: none;
  }
}

/* ============================================================
   EMERGENCY HERO FIX — overrides template inline styles
   ============================================================ */

.hero-section,
section.hero-section,
.hero-section.text-light {
  background-image: url("../images/background/hero.webp") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #081a4b !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
}

.hero-section::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(8, 26, 75, 0.55) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Fix template injecting background on container/wrapper */
.hero-section .container,
.hero-section .hero-wrapper,
.hero-section .row,
.hero-section .carousel-inner,
.hero-section .carousel-item {
  background-image: none !important;
  /* background-color: transparent !important; */
}

.hero-section .container {
  position: relative !important;
  z-index: 2 !important;
}

.hero-section .hero-wrapper {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

/* Carousel must be fully transparent */
#heroCarousel,
#heroCarousel .carousel-inner,
#heroCarousel .carousel-item {
  /* background: transparent !important;
  background-image: none !important; */
  width: 100% !important;
}

.carousel-item {
  display: flex !important;
  align-items: center !important;
  /* background: transparent !important;
  background-image: none !important; */
}


/* ============================================================
   HAMBURGER BUTTON FIX
   ============================================================ */

/* Template uses #menu-btn — make it look like a proper hamburger */
#menu-btn {
  display: none;
  cursor: pointer;
  padding: 8px;
  z-index: 10001;
  position: relative;
  /* background: transparent !important; */
  border: none !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3.5px;
  width: 40px;
  /* height: 40px; */
}

/* The inner span is the middle bar */
/* #menu-btn span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  background: #1a1a1a !important;
  border-radius: 2px !important;
  transition: opacity 0.3s !important;
  margin: 0 auto !important;
} */

/* Top and bottom bars via pseudo */
/* #menu-btn::before,
#menu-btn::after {
  content: '' !important;
  display: block !important;
  width: 0px !important;
  height: 0px !important;
  background: #1a1a1a !important;
  border-radius: 2px !important;
  transition: transform 0.3s !important;
  position: static !important;
  margin: 0 auto !important;
} */

@media (max-width: 991px) {
  #menu-btn {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* When menu is open — animate to X */
header.showmenu #menu-btn > span,
header.menu-open #menu-btn > span {
  opacity: 0 !important;
  transform: scaleX(0) !important;
}

header.showmenu #menu-btn::before,
header.menu-open #menu-btn::before {
  transform: rotate(45deg) translateY(6px) !important;
}

header.showmenu #menu-btn::after,
header.menu-open #menu-btn::after {
  transform: rotate(-45deg) translateY(-5px) !important;
}

/* ============================================================
   MOBILE MENU FIXES
   ============================================================ */
@media (max-width: 991px) {
  /* Header becomes the full-screen menu panel */
  header#header.showmenu,
  header#header.menu-open {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 80% !important;
    max-width: 300px !important;
    height: 100vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #ffffff !important;
    z-index: 99999 !important;
    box-shadow: 5px 0 25px rgba(0, 0, 0, 0.25) !important;
    display: block !important;
    padding-bottom: 60px !important;
  }

  /* Overlay behind open menu */
  header#header.showmenu::before,
  header#header.menu-open::before {
    content: "" !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.5) !important;
    z-index: -1 !important;
    pointer-events: none !important;
  }

  /* Topbar hidden inside open menu */
  header#header.showmenu #topbar,
  header#header.menu-open #topbar {
    display: none !important;
  }

  header#header.showmenu,
  header#header.menu-open {
    height: 100vh !important; /* full screen height */
    background: #fff !important;
  }

  header#header.showmenu .col-md-12,
  header#header.menu-open .col-md-12 {
    background: #fff !important;
    min-height: 100vh !important;
  }

  /* Logo area inside open menu */
  header#header.showmenu .de-flex,
  header#header.menu-open .de-flex {
    padding: 8px 16px !important;
    border-bottom: 1px solid #eee !important;
    position: sticky !important;
    top: 0 !important;
    background: #fff !important;
    z-index: 10 !important;
    text-align: left;
    /* height: 800px; */
    /* margin-right: 50px; */
  }

  /* mainmenu inside open header */
  header#header.showmenu #mainmenu,
  header#header.menu-open #mainmenu {
    display: block !important;
    position: static !important;
    width: 100% !important;
    background: #fff !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    height: auto !important;
    box-shadow: none !important;
  }

  /* When menu closed — mainmenu hidden */
  #mainmenu {
    display: none !important;
  }
  #mainmenu {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  /* ── li items ── */
  #mainmenu li {
    display: block !important;
    position: relative !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
  }

  header#header.showmenu .de-flex,
  header#header.menu-open .de-flex {
    padding-top: 20px !important; /* increase space from top */
  }

  /* ── Top level links ── */
  #mainmenu > li > a {
    display: block !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #222 !important;
    background: #fff !important;
    text-decoration: none !important;
    line-height: 1.5 !important;
    text-align: left !important;
  }

  #mainmenu > li > a:hover {
    color: #1aa6b7 !important;
    background: #f5fbfc !important;
  }

  #mainmenu > li.active > a {
    color: #1aa6b7 !important;
    background: #f0f8ff !important;
  }

  /* Kill ALL pseudo arrows */
  #mainmenu a::before,
  #mainmenu a::after {
    display: none !important;
    content: "" !important;
  }

  /* Hide all d-arrows — JS adds .has-sub-menu */
  #mainmenu .d-arrow {
    display: none !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 50px !important;
    height: 50px !important;
    cursor: pointer !important;
    z-index: 20 !important;
    font-size: 20px !important;
    color: #888 !important;
    background: transparent !important;
    border: none !important;
    transition:
      transform 0.3s,
      color 0.3s !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #mainmenu .d-arrow::before,
  #mainmenu .d-arrow::after {
    display: none !important;
    content: "" !important;
  }

  #mainmenu .d-arrow.has-sub-menu {
    display: flex !important;
  }

  #mainmenu li.active > .d-arrow.has-sub-menu {
    transform: rotate(-180deg) !important;
    color: #1aa6b7 !important;
  }

  /* ALL submenus hidden and static */
  #mainmenu ul {
    display: none !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    background: #f7faff !important;
    border: none !important;
    border-left: 3px solid #1aa6b7 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #mainmenu li.active > ul {
    display: block !important;
  }

  /* Submenu li */
  #mainmenu ul li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
  }

  /* Submenu links */
  #mainmenu ul li a {
    display: block !important;
    padding: 11px 50px 11px 57px !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    color: #333 !important;
    background: transparent !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
  }

  #mainmenu ul li a:hover {
    color: #1aa6b7 !important;
    background: #edf4ff !important;
  }

  #mainmenu ul li.active > a {
    color: #1aa6b7 !important;
  }

  /* Third level */
  #mainmenu ul ul {
    background: #edf4ff !important;
    border-left: 2px solid #1aa6b7 !important;
  }

  #mainmenu ul ul li a {
    font-size: 8px !important;
    color: #555 !important;
    /* padding-left: 24px !important; */
  }
}

/* ============================================================
   HERO CONTENT — MOBILE RESPONSIVE
   ============================================================ */
@media (max-width: 992px) {
  .hero-section {
    min-height: auto !important;
    padding: 80px 0 40px !important;
    width: 100% !important  ;
  }

  .hero-wrapper {
    padding-top: 20px !important;
    padding-bottom: 30px !important;
  }

  .carousel-item {
    padding: 30px 0 20px !important;
    text-align: center !important;
    min-height: auto !important;
    justify-content: center !important;
  }

  .hero-content {
    text-align: center !important;
    max-width: 100% !important;
    /* padding: 0 !important;
    margin: 0 auto !important; */
  }

  .hero-title {
    font-size: 32px !important;
    text-align: center !important;
  }

  .hero-desc {
    font-size: 15px !important;
    text-align: center !important;
    margin: 0 auto 20px !important;
    max-width: 88% !important;
  }

  .hero-content .btn-main {
    margin: 0 auto !important;
    display: inline-flex !important;
    font-size: 11px !important;
  }

  .hero-form {
    /* margin: 28px auto 40px !important; */
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 768px) {

  .hero-wrapper .row {
    display: flex;
    justify-content: center !important;
  }

  .hero-wrapper .col-lg-5 {
    flex: 0 0 356px !important;
    max-width: 360px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .hero-form {
    width: 100% !important;
    margin: 0 auto !important;
  }

}

@media (max-width: 576px) {
  .hero-section {
    padding: 70px 0 30px !important;
  }

  .hero-title {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }

  .hero-desc {
    font-size: 14px !important;
  }

  .hero-form {
    padding: 20px 14px !important;
    border-radius: 12px !important;
  }

  .hero-form h4 {
    font-size: 16px !important;
  }

  .hero-form input,
  .hero-form select,
  .hero-form textarea {
    height: 42px !important;
    font-size: 13px !important;
  }

  .hero-form textarea {
    height: 70px !important;
  }
  .hero-form button {
    height: 44px !important;
  }
}

@media (max-width: 375px) {
  .hero-title {
    font-size: 21px !important;
  }
  .hero-desc {
    font-size: 13px !important;
  }
  .hero-form {
    padding: 16px 12px !important;
  }
}

/* ============================================================
   TOPBAR — show on desktop, hide on mobile
   ============================================================ */
/* #topbar {
  display: none;
} */

/* @media (max-width: 991px){

/* remove address *

#topbar .topbar-widget:first-child{
display:none !important;
}


/* reduce topbar height *

#topbar{
padding:4px 0 !important;
line-height:1.2 !important;
}


/* stack content tightly *

#topbar .d-flex.justify-content-between{
flex-direction:column !important;
align-items:center !important;
gap:2px !important;
}


/* phone + email tight alignment *

#topbar .d-flex.justify-content-between > .d-flex{
flex-direction:column !important;
align-items:center !important;
gap:2px !important;
}


/* remove extra spacing from widgets *

#topbar .topbar-widget{
margin:0 !important;
padding:0 !important;
font-size:13px !important;
gap:5 px !important;
}


/* compact social icons *

#topbar .social-icons{
margin-top:0px !important;
gap:1px !important;
}


/* reduce icon size slightly *

#topbar .social-icons a{
font-size:4px !important;
}
#topbar .social-icons i{
  font-size: 12px;
  margin-bottom: 0;
  margin-right: 1px;
  padding: 8px 5px;
  margin-top: 0px;
}

.social-icons i {
  padding: 8px 5px;
  font-size: 12px;
  margin: 0 2px 0 2px;
}
} */

/* ============================================================
   HEADER — always white, never transparent
   ============================================================ */
header#header,
header#header.transparent,
header#header.header-light,
header#header.scroll-light,
header#header.header-light.transparent.scroll-light {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
}
/* ============================================================
   LOGO — force visible (normal header)
   ============================================================ */

#logo {
  display: flex !important;
  align-items: center !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#logo a {
  display: block !important;
}

#logo img,
#logo img.logo-main,
#logo .logo-main {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  filter: none !important;
  max-height: 65px !important;
  width: auto !important;
}

#logo .logo-scroll {
  display: none !important;
}

/* ============================================================
   MOBILE MENU DRAWER — FINAL WORKING VERSION
   ============================================================ */

@media (max-width: 991px) {
  #menu-btn.menu-open ~ #logo,
  header.menu-open #logo,
  header.showmenu #logo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }
  #menu-btn {
    display: block !important;
    position: fixed !important;
    top: 22px !important;
    right: 22px !important;
    width: 26px !important;
    height: 20px !important;
    z-index: 999999 !important;
  }
  header.menu-open #menu-btn,
  header.showmenu #menu-btn,
  #menu-btn.menu-open {
    right: 22px !important;
    top: 22px !important;
  }
  #menu-btn span {
    position: absolute !important;
    top: 9px !important;
    left: 0 !important;
    width: 26px !important;
    height: 2px !important;
    background: #222 !important;
    transition: 0.3s ease !important;
  }

  #menu-btn::before,
  #menu-btn::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    width: 26px !important;
    height: 2px !important;
    background: #222 !important;
    transition: 0.3s ease !important;
  }

  #menu-btn::before {
    top: 0 !important;
  }

  #menu-btn::after {
    bottom: 0 !important;
  }

  /* CROSS STATE FIX */

  #menu-btn.menu-open span {
    opacity: 0 !important;
  }

  #menu-btn.menu-open::before {
    transform: rotate(45deg) !important;
    top: -2px !important;
  }

  #menu-btn.menu-open::after {
    transform: rotate(-45deg) !important;
    top: 5px !important;
    bottom: auto !important;
  }
  #menu-btn,
  #menu-btn.menu-open {
    position: fixed !important;
    /* top: 93px !important; */
    right: 18px !important;
    left: auto !important;
    transform: none !important;
    z-index: 9999999 !important;
  }
  header.clone #menu-btn,
  header.clone #menu-btn.menu-open {
    position: fixed !important;
    right: 18px !important;
    /* top: 18px !important; */
  }
  #menu-btn,
  #menu-btn.menu-open {
    position: fixed !important;
    top: 18px !important;
    right: 18px !important;
    z-index: 999999999 !important;
  }

  /* Ensure drawer stays behind icon */
  #mainmenu {
    z-index: 9999 !important;
  }
  #menu-btn,
  #menu-btn.menu-open {
    position: fixed !important;
    /* top: 93px !important; */
    right: 18px !important;
    z-index: 999999999 !important;
  }

  /* Ensure drawer stays behind icon */
  #mainmenu {
    z-index: 9999 !important;
  }
}
/* ============================================================
   HERO SECTION — BASE
   ============================================================ */
.hero-section {
  background-image: url("../images/background/hero.webp") !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  color: #ffffff;
  position: relative;
  min-height: 600px !important;
  display: flex !important;
  align-items: center;
  overflow: hidden;
  z-index: 1;
}

/* Dark overlay */
.hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 26, 75, 0.52);
  z-index: 0;
  pointer-events: none;
}

.hero-section .container {
  position: relative;
  z-index: 1;
}

.hero-wrapper {
  min-height: 600px;
  align-items: center;
  width: 100%;
}

/* ── CAROUSEL ── */
#heroCarousel,
#heroCarousel .carousel-inner,
#heroCarousel .carousel-item {
  width: 100%;
}

.carousel-item {
  padding: 80px 0 70px;
  text-align: left !important;
  min-height: 500px;
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  transition: opacity 0.6s ease-in-out;
}

/* ── HERO CONTENT BOX ── */
.hero-content {
  max-width: 600px;
  width: 100%;
  text-align: left;
  padding-left: 15px;
  margin-top: 100px;
}

/* ── TITLE ── */
.hero-title {
  font-family: "Urbanist", sans-serif;
  font-size: 48px;
  font-weight: 700 !important;
  line-height: 1.2;
  margin-bottom: 18px;
  color: #ffffff;
  letter-spacing: 0.3px;
  align-items: center;
  justify-content: center;
}

/* ── DESCRIPTION ── */
.hero-desc {
  font-size: 17px;
  line-height: 1.65;
  color: #d9edf2;
  margin-bottom: 28px;
  align-items: center;
  justify-content: center;
  margin-left: 50px;
  margin-right: 0;
  max-width: 500px;
  /* text-align: left; */
}

/* ── BUTTON ── */
.hero-content .btn-main,
.hero-content a.btn-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #1aa6b7;
  border-radius: 8px;
  /* padding: 10px 10px; */
  font-size: 15px;
  font-weight: 500;
  transition: background 0.3s;
  color: #fff !important;
  text-decoration: none;
  margin-left: 0;
  margin-top: 0;
}

.hero-content .btn-main:hover,
.hero-content a.btn-main:hover {
  background: #138999;
  color: #fff !important;
}

/* ============================================================
   HERO FORM
   ============================================================ */
.hero-form {
  background: linear-gradient(180deg, #6f95d3 0%, #5a8fd8 100%);
  padding: 32px 28px;
  border-radius: 18px;
  max-width: 420px;
  margin-left: auto;
  margin-top: 60px;
  box-shadow: 0 18px 50px rgba(12, 26, 68, 0.25);
}

.hero-form h4 {
  font-size: 22px;
  font-weight: 600;
  color: #ffffff;
  text-align: center;
  margin-bottom: 4px;
}

.hero-form p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  margin-bottom: 22px;
}

.hero-form input,
.hero-form select,
.hero-form textarea {
  width: 100%;
  height: 46px;
  border-radius: 8px;
  border: none;
  outline: none;
  padding: 0 14px;
  margin-bottom: 14px;
  font-size: 14px;
  font-family: "Poppins", sans-serif;
  background: #17335c;
  color: #ffffff;
  transition: all 0.25s ease;
}

.hero-form textarea {
  height: 90px;
  padding-top: 12px;
  resize: none;
}

.hero-form select {
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='white' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 16px;
  padding-right: 40px;
  cursor: pointer;
}

.hero-form input::placeholder,
.hero-form textarea::placeholder {
  color: rgba(255, 255, 255, 0.65);
}

.hero-form input:focus,
.hero-form select:focus,
.hero-form textarea:focus {
  background: #1d3f6f;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.15);
}

.hero-form button {
  width: 100%;
  height: 46px;
  border-radius: 8px;
  border: none;
  font-size: 15px;
  font-weight: 600;
  background: #0c1a44;
  color: #ffffff;
  cursor: pointer;
  transition: all 0.3s ease;
}

.hero-form button:hover {
  background: #08122d;
}

/* ============================================================
   HERO — LARGE SCREENS  ≥ 1200px
   ============================================================ */
@media (min-width: 1200px) {
  .hero-title {
    font-size: 52px;
  }
  .hero-desc {
    font-size: 18px;
  }
}

/* ============================================================
   HERO — TABLET  ≤ 992px
   ============================================================ */
@media (max-width: 992px) {
  .hero-section {
    min-height: auto !important;
  }

  .hero-wrapper {
    min-height: auto;
    padding: 20px 0 40px;
  }

  .carousel-item {
    padding: 60px 15px 40px;
    text-align: center;
    min-height: auto;
    justify-content: center;
  }

  .hero-content {
    max-width: 100%;
    text-align: center;
  }

  .hero-title {
    font-size: 36px;
  }

  .hero-desc {
    font-size: 15px;
    margin: 0 auto 24px;
    max-width: 90%;
  }

  .hero-buttons {
    justify-content: center;
  }

  .hero-form {
    /* margin: 30px 20px 40px; */
    max-width: 480px;
    width: 100%;
    /* margin-left: 8px; */
  }
}

/* ============================================================
   HERO — TABLET PORTRAIT  ≤ 768px
   ============================================================ */
@media (max-width: 768px) {
  .hero-title {
    font-size: 32px;
  }
  .hero-desc {
    font-size: 14px;
  }

  .hero-form {
    max-width: 100%;
    padding: 24px 20px;
  }
}

/* ============================================================
   HERO — MOBILE  ≤ 576px
   ============================================================ */
@media (max-width: 576px) {
  .hero-section {
    min-height: auto !important;
  }

  .carousel-item {
    padding: 50px 12px 30px;
    min-height: auto;
  }

  .hero-title {
    font-size: 26px;
    line-height: 1.3;
  }

  .hero-desc {
    font-size: 14px;
  }

  .hero-buttons {
    flex-direction: column;
    gap: 14px;
  }

  .hero-buttons .btn-main {
    width: 100%;
    text-align: center;
  }

  .hero-form {
    width: 100%;
    max-width: 100%;
    border-radius: 14px;
    padding: 22px 16px;
    margin-top: 20px;
    margin-bottom: 30px;
    /* margin-left: 13px; */
  }

  .hero-form h4 {
    font-size: 17px;
  }

  .hero-form input,
  .hero-form select,
  .hero-form textarea {
    font-size: 13px;
    height: 42px;
  }

  .hero-form textarea {
    height: 72px;
  }

  .hero-form button {
    height: 44px;
    font-size: 14px;
  }
}

/* ============================================================
   HERO — VERY SMALL  ≤ 375px
   ============================================================ */
@media (max-width: 375px) {
  .hero-title {
    font-size: 22px;
  }
  .hero-desc {
    font-size: 13px;
  }
  .hero-form {
    padding: 18px 14px;
  }
}

/* Trusted Partners */

/* ================================================
   TRUSTED PARTNERS MARQUEE CSS — FIXED
   1. Single row (no duplicate vertical track)
   2. Logos always in original color (no greyscale)
   Paste at the bottom of your style.css
   ================================================ */

/* ── SECTION WRAPPER ── */
.trusted-partners-section {
  background: #0c1a44;
  border-top: 1px solid rgba(90, 143, 216, 0.15);
  border-bottom: 1px solid rgba(90, 143, 216, 0.15);
  padding: 0 0 28px 0;
  position: relative;
  overflow: hidden;
}

/* subtle teal glow top edge */
.trusted-partners-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(
    90deg,
    transparent,
    #5a8fd8 40%,
    #1aa6b7 60%,
    transparent
  );
}

/* ── HEADER LABEL ── */
.tp-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 22px 24px 18px;
}
.tp-label-text {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  white-space: nowrap;
}
.tp-label-line {
  flex: 1;
  max-width: 120px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(90, 143, 216, 0.35));
}
.tp-label-line:last-child {
  background: linear-gradient(270deg, transparent, rgba(90, 143, 216, 0.35));
}

/* ── TRACK WRAPPER — fade edges ── */
.tp-track-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.tp-track-wrapper::before,
.tp-track-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none;
}
.tp-track-wrapper::before {
  left: 0;
  background: linear-gradient(90deg, #0c1a44 0%, transparent 100%);
}
.tp-track-wrapper::after {
  right: 0;
  background: linear-gradient(270deg, #0c1a44 0%, transparent 100%);
}

/* ── SCROLLING TRACK ──
   KEY FIX: display:flex + flex-wrap:nowrap keeps everything in ONE row.
   The de-marquee-list-2 class from Designesia may add its own duplicated
   row via ::after pseudo — we override it here.
── */
.trusted-partners-section .de-marquee-list-2,
.trusted-partners-section .tp-track {
  display: flex !important;
  flex-wrap: nowrap !important;
  flex-direction: row !important;
  align-items: center !important;
  width: max-content !important;
  gap: 0;
  padding-bottom: 0 !important;
}

/* Kill any Designesia pseudo-element that clones the row */
.trusted-partners-section .de-marquee-list-2::after,
.trusted-partners-section .de-marquee-list-2::before {
  display: none !important;
  content: none !important;
}

.trusted-partners-section .de-marquee-list-2:hover,
.trusted-partners-section .tp-track:hover {
  animation-play-state: paused;
}

@keyframes tpScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ── LOGO ITEMS ──
── */
.partner-logo {
  height: 72px !important;
  width: auto !important;
  max-width: 150px;
  margin: 0 40px;
  object-fit: contain;
  vertical-align: middle;

  /* ALWAYS original color — no greyscale */
/* Force all logos to white */
filter: brightness(0) invert(1) !important;
opacity: 0.85;

  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
  flex-shrink: 0;
}
.partner-logo:hover {
  opacity: 1;
  transform: scale(1.08);
}

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
  .partner-logo {
    height: 52px !important;
    margin: 0 24px;
  }
  .tp-label-text {
    font-size: 10px;
  }
  .tp-track-wrapper::before,
  .tp-track-wrapper::after {
    width: 60px;
  }
}

:root {
  --site-teal: #5a8fd8;
  --site-teal-lt: #7aa6ea;
  --site-teal-dim: rgba(90, 143, 216, 0.12);
  --site-border-t: rgba(90, 143, 216, 0.25);
}

/* Certification */
/* ── CERTIFICATIONS — mobile slider ── */
@media (max-width: 767px) {

  #cert-cards-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    gap: 10px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    --bs-gutter-x: 0 !important;
  }

  #cert-cards-row::-webkit-scrollbar {
    display: none !important;
  }

  #cert-cards-row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    min-width: 100% !important;

    scroll-snap-align: center !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .cert-card img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  #cert-cards-row img {
    height: 260px !important;
    object-fit: cover !important;
    width: 100% !important;
  }

}

/* ── GALLERY FILTER TABS ── */
/* ── GALLERY FILTER BUTTONS ── */
.gallery-filters {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 8px 0;
}

.gf-btn {
  display: inline-block;
  padding: 10px 26px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: #475569;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: inherit;
}

.gf-btn:hover {
  background: #0c1a44;
  color: #fff;
  border-color: #0c1a44;
}

.gf-btn.active {
  background: #1aa6b7;
  color: #fff;
  border-color: #1aa6b7;
}


/* Gallery */
/* ── GALLERY — mobile slider ── */
@media (max-width: 767px) {

  #gallery-cards-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    gap: 12px !important;
    padding: 4px 2px 20px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #gallery-cards-row::-webkit-scrollbar {
    display: none !important;
  }

  #gallery-cards-row > [class*="col-"] {
    flex: 0 0 78vw !important;
    max-width: 78vw !important;
    min-width: 220px !important;
    width: 78vw !important;
    scroll-snap-align: start !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Consistent image height across all cards */
  #gallery-cards-row .gallery-card {
    height: 220px !important;
    overflow: hidden !important;
    border-radius: 8px !important;
  }
  #gallery-cards-row .gallery-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }
}

/* Stats Section */
/* ===== Statistics Section ===== */

.stats-section {
  background: #ffffff;
  padding: 0 !important;
}

.stats-section .container {
  padding: 0 !important;
  max-width: 100% !important;
}

.stats-section .row {
  margin: 0 !important;
  --bs-gutter-x: 0 !important;
  --bs-gutter-y: 0 !important;
}

/* Mobile 2x2 grid */
@media (max-width: 767px) {

  .stats-section [class*="col-"] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
    padding: 0 !important;
  }

  /* Divider lines */
  .stats-section [class*="col-"]:nth-child(odd) {
    border-right: 1px solid #e5e7eb;
  }

  .stats-section [class*="col-"]:nth-child(1),
  .stats-section [class*="col-"]:nth-child(2) {
    border-bottom: 1px solid #e5e7eb;
  }

  .de_count {
    padding: 36px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .de_count i {
    width: 64px;
    height: 64px;
    font-size: 26px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
  }

  .de_count h3 {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #1d2b3a !important;
    margin-bottom: 6px !important;
    line-height: 1 !important;
  }

  .de_count {
    color: #6b7280;
    font-size: 13px;
    font-weight: 500;
  }
}

/* Desktop — 4 columns in a row */
@media (min-width: 768px) {
  .stats-section {
    padding: 60px 0 !important;
  }

  .stats-section .container {
    max-width: 1200px !important;
    padding: 0 15px !important;
  }

  .stats-section .row {
    --bs-gutter-x: 1.5rem !important;
  }
}

/* ── SECTION SHELL ── */
.sit-section {
  position: relative;
  padding: 80px 0 100px;
  overflow: hidden;
  background:
    radial-gradient(
      ellipse 65% 50% at 90% 5%,
      rgba(0, 194, 184, 0.13) 0%,
      transparent 60%
    ),
    radial-gradient(
      ellipse 50% 40% at 5% 95%,
      rgba(0, 194, 184, 0.09) 0%,
      transparent 60%
    ),
    linear-gradient(175deg, #06101f 0%, #0a1635 55%, #071225 100%);
}

/* Subtle grid texture */
.sit-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black, transparent);
  pointer-events: none;
}

/* ── EYEBROW ── */
.sit-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 32px;
}

.eyebrow-pill {
  background: linear-gradient(
    90deg,
    rgba(0, 194, 184, 0.18),
    rgba(0, 194, 184, 0.08)
  );
  border: 1px solid var(--site-border-t);
  color: var(--site-teal-lt);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 16px 5px 8px;
  border-radius: 100px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.eyebrow-pill .ep-dot {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--site-teal);
  color: var(--site-navy-deep);
  display: grid;
  place-items: center;
  font-size: 11px;
}

.eyebrow-year {
  font-size: 13px;
  font-weight: 600;
  color: var(--site-muted);
  letter-spacing: 0.06em;
}

/* ── BANNER IMAGE ── */
.sit-banner {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 56px;
  box-shadow:
    0 0 0 1px var(--site-border-t),
    0 32px 80px rgba(0, 0, 0, 0.55);
}

.sit-banner img {
  width: 100%;
  display: block;
  border-radius: 20px;
  object-fit: cover;
  max-height: 420px;
}

.sit-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(6, 16, 31, 0.05) 0%,
    rgba(6, 16, 31, 0.65) 100%
  );
  border-radius: 20px;
}

.banner-overlay-text {
  position: absolute;
  bottom: 28px;
  left: 0;
  right: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  padding: 0 24px;
}

.bow-chip {
  background: rgba(6, 16, 43, 0.78);
  backdrop-filter: blur(12px);
  border: 1px solid var(--site-border-t);
  border-radius: 100px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--site-white);
}

.bow-chip i {
  color: var(--site-teal);
  font-size: 12px;
}

/* ── HEADLINE ── */
.sit-headline {
  font-size: clamp(28px, 4vw, 50px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.01em;
  /* color: var(--site-white); */
  color: #fff;
  margin-bottom: 20px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.sit-headline .hl-orange {
  /* site uses teal, not orange — mapping accordingly */
  background: linear-gradient(90deg, var(--site-teal), var(--site-teal-lt));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.sit-headline .hl-teal {
  color: var(--site-teal-lt);
}

/* ── DESCRIPTION ── */
.sit-desc {
  font-size: 15.5px;
  line-height: 1.78;
  color: var(--site-muted);
  max-width: 800px;
  margin: 0 auto 40px;
}

/* ── FEATURE TAGS ── */
.sit-tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 44px;
}

.sit-tag {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 18px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 600;
  border: 1px solid var(--site-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--site-white);
  transition:
    border-color 0.2s,
    background 0.2s,
    transform 0.2s;
  cursor: default;
}

.sit-tag:hover {
  transform: translateY(-2px);
  border-color: var(--site-border-t);
  background: var(--site-teal-dim);
}

.sit-tag i {
  font-size: 11px;
}

/* All colored tags now use teal family to match site */
.sit-tag.t-orange {
  border-color: rgba(0, 194, 184, 0.3);
  color: var(--site-teal-lt);
}
.sit-tag.t-teal {
  border-color: rgba(0, 194, 184, 0.3);
  color: var(--site-teal-lt);
}
.sit-tag.t-green {
  border-color: rgba(0, 194, 184, 0.25);
  color: #5eddd7;
}
.sit-tag.t-yellow {
  border-color: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.8);
}
.sit-tag.t-blue {
  border-color: rgba(100, 160, 255, 0.25);
  color: #84b4ff;
}

/* ── CTA BUTTON ── */
.sit-cta-wrap {
  margin-bottom: 64px;
}

.sit-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: var(--site-teal);
  /* color: var(--site-navy-deep); */
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  padding: 15px 32px;
  border-radius: 14px;
  text-decoration: none;
  box-shadow: 0 10px 36px rgba(90, 143, 216, 0.35);
  transition:
    transform 0.25s,
    box-shadow 0.25s,
    background 0.25s;
  letter-spacing: 0.01em;
}

.sit-btn:hover {
  transform: translateY(-3px) scale(1.02);
  background: var(--site-teal-lt);
  box-shadow: 0 18px 48px rgba(0, 194, 184, 0.45);
  color: #fff;
}

.sit-btn .btn-arrow {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(6, 16, 43, 0.25);
  display: grid;
  place-items: center;
  font-size: 13px;
  transition: transform 0.25s;
}

.sit-btn:hover .btn-arrow {
  transform: translateX(3px);
}

.sit-note {
  margin-top: 12px;
  font-size: 12.5px;
  color: var(--site-muted);
}

.sit-note i {
  color: var(--site-teal);
  margin-right: 5px;
}

/* ── STATS GRID ── */
.sit-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 16px;
}

.stat-card {
  background: var(--site-navy-card);
  border: 1px solid var(--site-border);
  border-radius: 18px;
  padding: 24px 20px;
  text-align: center;
  transition:
    border-color 0.25s,
    transform 0.25s,
    background 0.25s;
}

.stat-card:hover {
  transform: translateY(-4px);
  border-color: var(--site-border-t);
  background: rgba(0, 194, 184, 0.06);
}

.stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--site-teal-dim);
  border: 1px solid var(--site-border-t);
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  font-size: 18px;
  color: var(--site-teal-lt);
}

/* All stat card variants use teal to match brand */
.stat-card.s-teal .stat-icon,
.stat-card.s-green .stat-icon,
.stat-card.s-yellow .stat-icon {
  background: var(--site-teal-dim);
  border-color: var(--site-border-t);
  color: var(--site-teal-lt);
}

.stat-num {
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 6px;
  color: var(--site-white);
}

.stat-label {
  font-size: 12.5px;
  color: var(--site-muted);
  font-weight: 500;
}

/* ── BOTTOM ROW ── */
.sit-bottom {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 48px;
  padding-top: 36px;
  border-top: 1px solid var(--site-border);
}

.rating-block {
  display: flex;
  align-items: center;
  gap: 12px;
}

.g-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 900;
  color: #4285f4;
  flex-shrink: 0;
}

.rating-score-line {
  display: flex;
  align-items: center;
  gap: 8px;
}

.rating-num {
  font-size: 22px;
  font-weight: 700;
  color: var(--site-white);
}

.stars {
  display: flex;
  gap: 3px;
  color: var(--site-teal); /* teal stars to match site, not yellow */
  font-size: 13px;
}

.rating-sub {
  font-size: 11.5px;
  color: var(--site-muted);
  margin-top: 2px;
}

.rating-sep {
  width: 1px;
  height: 40px;
  background: var(--site-border);
}

.batch-chip {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--site-teal-dim);
  border: 1px solid var(--site-border-t);
  border-radius: 12px;
  padding: 10px 18px;
  font-size: 13px;
  color: var(--site-white);
}

.batch-chip i {
  color: var(--site-teal);
}
.batch-chip strong {
  color: var(--site-teal-lt);
}

/* ── RESPONSIVE ── */
@media (max-width: 640px) {
  .sit-section {
    padding: 60px 0 72px;
  }
  .banner-overlay-text {
    gap: 8px;
  }
  .sit-stats {
    grid-template-columns: 1fr 1fr;
  }
  .rating-sep {
    display: none;
  }
}



/* Popup */

/* POPUP BOX */

#cy-popup {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 260px;
  z-index: 99999;
  transform: translateY(120%);
  opacity: 0;
  transition: 0.4s ease;
  pointer-events: none;
}

#cy-popup.show {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* CARD */

.cy-popup-card {
  background: #0c1a44;
  border: 1px solid rgba(90, 143, 216, 0.35);
  border-radius: 14px;
  padding: 14px;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.5);
  position: relative;
}

/* CLOSE BUTTON */

.cy-close {
  position: absolute;
  top: 8px;
  right: 10px;
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
}

/* HEADER */

.cy-popup-head {
  display: flex;
  gap: 8px;
  margin-bottom: 6px;
}

.cy-sun-icon {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: rgba(90, 143, 216, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5a8fd8;
}

/* TEXT */

.cy-popup-title {
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}

.cy-popup-sub {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.6);
}

.cy-start-date {
  margin: 8px 0 12px;
  font-size: 11px;
  color: #5a8fd8;
}

/* BUTTON */

.cy-apply-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  width: 100%;
  background: linear-gradient(90deg, #3f6fd1, #5a8fd8);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 9px;
  border-radius: 8px;
  text-decoration: none;
}
.cy-apply-btn:hover {
  color: #fff;
}

/* FLOATING TAB */

#cy-tab {
  position: fixed;
  bottom: 24px;
  right: 24px;
  background: linear-gradient(90deg, #3f6fd1, #5a8fd8);
  color: #fff;
  border: none;
  font-size: 12px;
  padding: 8px 14px;
  border-radius: 30px;
  cursor: pointer;
  display: none;
  z-index: 99998;
}


/* ══════════════════════════════
   MOBILE — compact popup
══════════════════════════════ */

@media (max-width: 767px) {

  /* Fixed small size — bottom right, doesn't block content */
  #cy-popup {
    width: 220px !important;
    bottom: 16px !important;
    right: 12px !important;
    left: auto !important;
  }

  .cy-popup-card {
    padding: 3px 12px !important;
    border-radius: 10px !important;
  }

  /* Tighter header row */
  .cy-popup-head {
    gap: 8px;
    margin-bottom: 5px;
    align-items: center;
  }

  .cy-sun-icon {
    width: 26px !important;
    height: 26px !important;
    border-radius: 6px !important;
    font-size: 11px !important;
  }

  .cy-popup-title {
    font-size: 11.5px !important;
    font-weight: 500 !important;
  }

  .cy-popup-sub {
    font-size: 9.5px !important;
  }

  .cy-start-date {
    font-size: 10px !important;
    margin: 5px 0 8px !important;
  }

  .cy-apply-btn {
    font-size: 10px !important;
    padding: 0px  !important;
    border-radius: 6px !important;
    gap: 5px !important;
  }

  /* Close button — easier tap target */
  .cy-close {
    top: 7px !important;
    right: 8px !important;
    font-size: 12px !important;
  }

  /* Tab button positioning on mobile */
  #cy-tab {
    bottom: 16px !important;
    right: 12px !important;
    font-size: 11px !important;
    padding: 7px 12px !important;
  }

}
/* Marquee */
.cy-marquee-section {
  position: relative;
  width: 100%;
  padding: 0;
  overflow: hidden;
  background: linear-gradient(90deg, #041528 0%, #062040 50%, #041528 100%);
  border-top: 1px solid rgba(0, 194, 184, 0.2);
  border-bottom: 1px solid rgba(0, 194, 184, 0.2);
}

/* Teal glow fade on left and right edges */
.cy-marquee-glow {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none;
}
.cy-marquee-glow--left {
  left: 0;
  background: linear-gradient(90deg, #041528 0%, transparent 100%);
}
.cy-marquee-glow--right {
  right: 0;
  background: linear-gradient(270deg, #041528 0%, transparent 100%);
}

.cy-marquee-track {
  display: flex;
  width: 100%;
  overflow: hidden;
  padding: 14px 0;
}

.cy-marquee-inner {
  display: flex;
  align-items: center;
  gap: 0;
  white-space: nowrap;
  animation: cyMarqueeScroll 30s linear infinite;
  will-change: transform;
}

.cy-marquee-inner:hover {
  animation-play-state: paused;
}

@keyframes cyMarqueeScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.cy-mq-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
  padding: 6px 20px;
  white-space: nowrap;
  letter-spacing: 0.02em;
  transition: color 0.2s;
}

.cy-mq-item i {
  font-size: 12px;
  color: #00c2b8;
}

.cy-mq-item:hover {
  color: #ffffff;
}

/* Highlighted items — teal pill style */
.cy-mq-item--highlight {
  color: #00c2b8;
  background: rgba(0, 194, 184, 0.08);
  border: 1px solid rgba(0, 194, 184, 0.2);
  border-radius: 100px;
  padding: 5px 16px;
  font-weight: 700;
}

.cy-mq-item--highlight i {
  color: #33d4cb;
}

/* Badge style item */
.cy-mq-item--badge {
  background: rgba(0, 194, 184, 0.1);
  border: 1px solid rgba(0, 194, 184, 0.15);
  border-radius: 100px;
  padding: 5px 16px;
  font-weight: 700;
  color: #ffffff;
}

/* Separator diamond */
.cy-mq-sep {
  color: rgba(0, 194, 184, 0.4);
  font-size: 10px;
  padding: 0 6px;
  flex-shrink: 0;
}

/* ============================================================
   batches-table.css — Upcoming Batches Table
   Paste at the bottom of your style.css or link separately
   ============================================================ */

/* ── TAB ROW ── */
.bt-tab-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 28px;
}
.bt-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 24px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.15);
  background: transparent;
  color: rgba(255, 255, 255, 0.65);
  font-size: 13.5px;
  font-weight: 500;
  cursor: pointer;
  transition:
    background 0.22s,
    border-color 0.22s,
    color 0.22s;
}
.bt-tab i {
  font-size: 13px;
}
.bt-tab:hover {
  border-color: #5a8fd8;
  color: #7aaee8;
  background: rgba(90, 143, 216, 0.08);
}
.bt-tab.active {
  background: #5a8fd8;
  border-color: #5a8fd8;
  color: #fff;
  box-shadow: 0 6px 20px rgba(90, 143, 216, 0.3);
}

/* ── DESKTOP TABLE WRAPPER ── */
.bt-table-wrap {
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.3);
}
.bt-table-scroll {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.bt-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
  white-space: nowrap;
}
.bt-table thead tr {
  background: linear-gradient(90deg, #0c1a44, #162354);
  border-bottom: 2px solid #5a8fd8;
}
.bt-table thead th {
  padding: 14px 18px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7aaee8;
  text-align: left;
  white-space: nowrap;
}
.bt-table tbody tr {
  background: rgba(255, 255, 255, 0.02);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  transition: background 0.2s;
}
.bt-table tbody tr:hover {
  background: rgba(90, 143, 216, 0.07);
}
.bt-table tbody tr.bt-featured {
  background: rgba(90, 143, 216, 0.08);
}
.bt-table tbody td {
  padding: 14px 18px;
  vertical-align: middle;
  color: rgba(255, 255, 255, 0.82);
}
.bt-num {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.35) !important;
  width: 40px;
}
.bt-course-name {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-weight: 500;
  color: #fff;
}
.bt-course-name i {
  color: #5a8fd8;
  font-size: 13px;
}
.bt-date {
  font-size: 13px;
  font-weight: 500;
  color: #fff;
}
.bt-time {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.75);
}
.bt-time i {
  color: #5a8fd8;
  font-size: 11px;
}
.bt-dur {
  display: inline-block;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 100px;
  padding: 3px 12px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
}
.bt-mode {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 500;
  padding: 4px 12px;
  border-radius: 100px;
}
.bt-both {
  background: rgba(90, 143, 216, 0.15);
  border: 1px solid rgba(90, 143, 216, 0.25);
  color: #7aaee8;
}
.bt-mode i {
  font-size: 11px;
}
.bt-book-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 18px;
  background: #5a8fd8;
  color: #fff;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background 0.22s,
    transform 0.22s;
  box-shadow: 0 4px 14px rgba(90, 143, 216, 0.25);
}
.bt-book-btn:hover {
  background: #3a6fb8;
  transform: translateY(-1px);
  color: #fff;
}

/* ── MOBILE CARDS — hidden on desktop ── */
.bt-mobile-cards {
  display: none;
}

/* ════════════════════════════════════════════
   MOBILE  ≤ 767px
   Table hides. Cards scroll horizontally.
   Dots stay fixed (not scroll)
   ════════════════════════════════════════════ */
@media (max-width: 767px) {
  .bt-table-wrap {
    display: none !important;
  }

  /* Wrapper should NOT scroll */
  .bt-mobile-cards {
    display: block !important;
    position: relative;
    overflow: hidden; /* important fix */
    padding-bottom: 22px; /* space for dots */
  }

  /* Only track scrolls */
  .bt-slider-track {
    display: flex;
    flex-direction: row;
    gap: 14px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 4px 2px 10px;
  }

  .bt-slider-track::-webkit-scrollbar {
    display: none;
  }

  /* Cards */
  .bt-mob-card {
    scroll-snap-align: start;
    flex-shrink: 0;
    width: 80vw;
    max-width: 320px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(90, 143, 216, 0.2);
    border-radius: 14px;
    padding: 18px 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  }

  .bt-mob-card {
    border-color: #5a8fd8;
    background: rgba(90, 143, 216, 0.08);
  }

  /* FIXED DOTS (main fix) */
  .bt-slider-dots {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
  }

  .bt-slider-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    transition:
      background 0.2s,
      width 0.2s;
  }

  .bt-slider-dot.active {
    background: #5a8fd8;
    width: 18px;
  }

  /* Remaining styles unchanged */
  .bt-mob-head {
    margin-bottom: 14px;
  }

  .bt-mob-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    line-height: 1.35;
  }

  .bt-mob-title i {
    color: #5a8fd8;
    font-size: 15px;
    flex-shrink: 0;
  }

  .bt-mob-rows {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
    padding: 5px 0px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.05);
  }

  .bt-mob-row {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
  }

  .bt-mob-row i {
    color: #5a8fd8;
    font-size: 13px;
    width: 18px;
    text-align: center;
  }

  .bt-mob-row strong {
    color: #fff;
    font-weight: 500;
  }

  .bt-mob-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 12px;
    background: #5a8fd8;
    color: #fff;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(90, 143, 216, 0.3);
  }

  .bt-mob-btn:hover {
    background: #3a6fb8;
  }

  .bt-tab {
    padding: 9px 18px;
    font-size: 13px;
  }

  .bt-tab-row {
    gap: 10px;
  }
}
/* Summer Training Landing page */

/* ============================================================
   placement.css — Placement Slider
   Changes: equal speed both rows, slows on hover (JS-free pause)
   ============================================================ */

/* CONTAINER */
.placement-slider {
  overflow: hidden;
  width: 100%;
}

/* TRACKS — both use same animation duration */
.placement-track {
  display: flex;
  gap: 20px;
  width: max-content;
  animation: scrollLeft 50s linear infinite; /* was 35s — slower */
}
.placement-track-right {
  display: flex;
  gap: 20px;
  width: max-content;
  animation: scrollRight 50s linear infinite; /* same 50s */
}

/* SLOW DOWN on hover over the entire slider container */
.placement-slider:hover .placement-track,
.placement-slider:hover .placement-track-right {
  animation-play-state: paused;
  /* instead of full pause, use a slower speed via CSS trick */
}

/* CARDS */
.placement-card {
  background: #ffffff;
  padding: 25px 20px;
  border-radius: 14px;
  text-align: center;
  min-width: 220px;
  max-width: 220px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 0 4px 20px rgba(12, 26, 68, 0.08);
  border: 1px solid #e2e8f4;
  transition:
    box-shadow 0.25s,
    transform 0.25s;
}
.placement-card:hover {
  box-shadow: 0 10px 32px rgba(12, 26, 68, 0.14);
  transform: translateY(-3px);
}

/* IMAGE */
.placement-img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: 10px;
  margin-bottom: 12px;
  border: 2px solid #e2e8f4;
}

/* TEXT */
.placement-card h5 {
  font-size: 14px;
  font-weight: 600;
  color: #0c1a44;
  margin-bottom: 3px;
}
.placement-card p {
  font-size: 12.5px;
  color: #64748b;
  margin-bottom: 4px;
  line-height: 1.4;
}
.placement-card .text-primary {
  font-size: 12.5px;
  font-weight: 700;
  color: #5a8fd8 !important;
  display: block;
  margin-bottom: 4px;
}

/* SECTION 2 */
.placement2 {
  margin-top: 48px;
}
.placement-heading {
  text-align: center;
  margin-bottom: 28px;
}
.placement-heading h2 {
  font-weight: 700;
  font-size: 32px;
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
  color: #0c1a44;
}
.placement-heading h2::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 4px;
  background: #1aa6b7;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 2px;
}

/* KEYFRAMES */
@keyframes scrollLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes scrollRight {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}

/* ================= TESTIMONIAL CARD ================= */

/* .testimonial-card{
background:#ffffff;
padding:25px;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
transition:0.3s;
position:relative;
}

.testimonial-card:hover{
transform:translateY(-6px);
box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

.testimonial-card p{
font-size:15px;
line-height:1.6;
color:#555;
margin-top:10px;
}

/* ================= GOOGLE ICON ================= *

.google-icon{
width:28px;
opacity:0.8;
}

/* ================= STARS ================= *

.d-stars i{
color:#f4b400;
margin-right:2px;
font-size:14px;
}

/* ================= SECTION SPACING ================= *

.pt-80{
padding-top:40px !important;
}

.pb-80{
padding-bottom:40px !important;
}

#testimonial{
padding:60px 0;
}

/* ================= OWL CAROUSEL ================= *

.owl-carousel{
display:block;
margin-bottom:0 !important;
}

.owl-carousel .item{
padding:8px;
height:auto;
}

.owl-stage-outer{
overflow:hidden;
padding-bottom:0 !important;
height:auto !important;
}

.owl-stage{
display:flex;
align-items:flex-start;
}

.owl-item{
height:auto !important;
display:flex;
}


.owl-dots{
display:none !important;
}

/* ================= SLIDER ARROWS ================= *

.owl-nav{
position:absolute;
top:45%;
left:0;
width:100%;
display:flex !important;
justify-content:space-between;
transform:translateY(-50%);
pointer-events:none;
}

.owl-nav button{
pointer-events:auto;
width:45px;
height:45px;
border-radius:50%;
border:none;
background:#1AA6B7 !important;
color:#ffffff !important;
font-size:18px;
display:flex;
align-items:center;
justify-content:center;
transition:0.3s;
}

.owl-nav button:hover{
background:#0d6efd !important;
transform:scale(1.05);
}


.owl-carousel,
.owl-carousel .owl-stage-outer,
.owl-carousel .owl-stage,
.owl-carousel .owl-item{
height:auto !important;
min-height:auto !important;
}


section{
height:auto !important;
min-height:auto !important;
}

/* prevent cards from stretching *

.testimonial-card{
height:auto !important;
}

/* fix owl flex behaviour *

.owl-stage{
display:flex;
align-items:flex-start !important;
}

/* reduce section spacing *

section.bg-light{
padding-top:60px !important;
padding-bottom:40px !important;
}

.testimonial-text{
max-height:120px;
overflow-y:auto;
padding-right:5px;
}

.testimonial-text::-webkit-scrollbar{
width:4px;
}

.testimonial-text::-webkit-scrollbar-thumb{
background:#1AA6B7;
border-radius:10px;
}

.testimonial-card{
min-height:220px;
display:flex;
flex-direction:column;
} */

/* ================================================
   REVIEWS / TESTIMONIALS SECTION CSS
   ================================================ */

/* ── SECTION ── */
section.bg-light.pt-60.pb-40 {
  padding-top: 80px !important;
  padding-bottom: 60px !important;
  background: #f4f7fc !important;
}

/* ── HEADING AREA ── */
.testimonial-heading-area {
  text-align: center;
  margin-bottom: 48px;
}
.testimonial-heading-area .subtitle {
  color: #1aa6b7;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 13px;
  margin-bottom: 10px;
  display: block;
}
.testimonial-heading-area h2 {
  font-size: clamp(26px, 4vw, 38px);
  font-weight: 500;
  color: #0c1a44;
  margin-bottom: 12px;
}
.testimonial-heading-area p {
  color: #6b7280;
  max-width: 560px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 1.65;
}

/* ── TESTIMONIAL CARD ── */
.testimonial-card {
  background: #ffffff;
  padding: 28px 26px 24px;
  border-radius: 16px;
  box-shadow:
    0 2px 12px rgba(12, 26, 68, 0.06),
    0 8px 32px rgba(12, 26, 68, 0.04);
  border: 1px solid rgba(12, 26, 68, 0.06);
  position: relative;
  transition:
    transform 0.28s ease,
    box-shadow 0.28s ease,
    border-color 0.28s ease;
  overflow: visible;

  /* FULLY OPEN — no max-height, no scroll */
  height: auto !important;
  min-height: auto !important;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.testimonial-card:hover {
  transform: translateY(-5px);
  box-shadow:
    0 8px 32px rgba(12, 26, 68, 0.1),
    0 20px 48px rgba(12, 26, 68, 0.07);
  border-color: rgba(26, 166, 183, 0.25);
}

/* top accent line on hover */
.testimonial-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  border-radius: 16px 16px 0 0;
  background: linear-gradient(90deg, #1aa6b7, #5a8fd8);
  opacity: 0;
  transition: opacity 0.28s ease;
}
.testimonial-card:hover::before {
  opacity: 1;
}

/* large quote watermark */
.testimonial-card::after {
  content: "\201C";
  position: absolute;
  top: 12px;
  right: 18px;
  font-size: 72px;
  line-height: 1;
  color: rgba(26, 166, 183, 0.08);
  font-family: Georgia, serif;
  pointer-events: none;
}

/* ── CARD TOP ROW ── */
.testimonial-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

/* ── STARS ── */
.d-stars {
  display: flex;
  align-items: center;
  gap: 2px;
}
.d-stars i {
  color: #f4b400;
  font-size: 13px;
}

/* ── GOOGLE ICON ── */
.google-icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
  opacity: 0.85;
}

/* ── REVIEW TEXT — FULLY OPEN ── */
.testimonial-text {
  font-size: 14.5px;
  line-height: 1.7;
  color: #4b5563;
  margin: 0 0 18px 0;

  /* Remove all scroll constraints */
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
}

/* remove scrollbar if any lingered */
.testimonial-text::-webkit-scrollbar {
  display: none;
}

/* ── REVIEWER NAME + DIVIDER ── */
.testimonial-divider {
  height: 1px;
  background: rgba(12, 26, 68, 0.07);
  margin: 0 0 14px 0;
  border: none;
}
.testimonial-reviewer {
  display: flex;
  align-items: center;
  gap: 10px;
}
.reviewer-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1aa6b7, #5a8fd8);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  flex-shrink: 0;
  text-transform: uppercase;
}
.reviewer-info .reviewer-name {
  font-size: 13.5px;
  font-weight: 600;
  color: #0c1a44;
  line-height: 1.2;
}
.reviewer-info .reviewer-tag {
  font-size: 11.5px;
  color: #9ca3af;
  margin-top: 2px;
}

/* ── OWL CAROUSEL — no dots on ALL devices ── */
.owl-dots,
.owl-dot,
.owl-dots.disabled {
  display: none !important;
}

/* ── OWL NAV ── */
.owl-nav {
  display: flex !important;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
  position: static !important;
  transform: none !important;
  pointer-events: auto;
  width: auto;
  left: auto;
}
.owl-nav button {
  pointer-events: auto;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1.5px solid rgba(26, 166, 183, 0.35) !important;
  background: #fff !important;
  color: #1aa6b7 !important;
  font-size: 16px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  transition:
    background 0.22s,
    border-color 0.22s,
    color 0.22s;
  box-shadow: 0 2px 10px rgba(12, 26, 68, 0.08);
}
.owl-nav button:hover {
  background: #1aa6b7 !important;
  border-color: #1aa6b7 !important;
  color: #fff !important;
  transform: none;
}

/* ── OWL STAGE ── */
.owl-carousel {
  display: block;
  margin-bottom: 0 !important;
}
.owl-carousel .item {
  padding: 8px 27px;
  height: auto;
}
.owl-stage-outer {
  overflow: hidden;
  padding-bottom: 0 !important;
  height: auto !important;
}
.owl-stage {
  display: flex;
  align-items: flex-start;
}
.owl-item {
  height: auto !important;
  display: flex;
}

/* ── PREVENT SECTION STRETCH ── */
section {
  height: auto !important;
  min-height: auto !important;
}
.testimonial-card {
  height: auto !important;
}
.owl-carousel,
.owl-carousel .owl-stage-outer,
.owl-carousel .owl-stage,
.owl-carousel .owl-item {
  height: auto !important;
  min-height: auto !important;
}

/* ── SPACING FIX ── */
.pt-80 {
  padding-top: 40px !important;
}
.pb-80 {
  padding-bottom: 40px !important;
}
#testimonial {
  padding: 60px 0;
}

/* ── RESPONSIVE ── */
@media (max-width: 767px) {
  .testimonial-card {
    padding: 22px 18px 20px;
  }
  .testimonial-text {
    font-size: 14px;
  }
  .owl-nav button {
    width: 40px;
    height: 40px;
    font-size: 14px;
  }
}
.gallery-card {
  overflow: hidden;
  border-radius: 15px;
  position: relative;
}

.gallery-card img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  transition: 0.4s;
}

/* Hover zoom */
.gallery-card:hover img {
  transform: scale(1.08);
}

/* Dark overlay effect */
.gallery-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  opacity: 0;
  transition: 0.3s;
}

.gallery-card:hover::after {
  opacity: 1;
}

/* GALLERY */

.gallery-hero {
  background:
    linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)),
    url("../images/background/G24.webp") no-repeat center center;
  background-size: cover;
  height: 350px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* TEXT FIX */
.hero-content {
  text-align: center;
  color: #fff; /* white text */
}

.hero-content h2 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #fff;
}

.hero-content p {
  font-size: 16px;
  color: #ddd;
}

.hero-content h2,
.hero-content p {
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

/* responsive */
@media (max-width: 768px) {
  .gallery-hero {
    height: 250px;
  }

  .hero-content h2 {
    font-size: 26px;
  }
}

/* spacing */
#gallery .item {
  padding: 6px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

/* image styling */
#gallery .item img {
  width: 100%;
  aspect-ratio: 1/1;
  height: auto;
  object-fit: cover;
  border-radius: 12px;
  display: block;
  transition: transform 0.3s ease;
}

/* hover zoom */
#gallery .item:hover img {
  transform: scale(1.05);
}

/* overlay text */
#gallery .item::after {
  content: "View";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  padding: 8px 16px;
  border-radius: 20px;
  opacity: 0;
  transition: 0.3s ease;
  font-size: 14px;
}

#gallery .item:hover::after {
  opacity: 1;
}

/* ===============================
   FILTER BUTTONS STYLE
================================= */

#filters {
  list-style: none;
  padding: 0;
  margin: 0;
}

#filters li {
  display: inline-block;
  margin: 5px;
}

#filters a {
  display: inline-block;
  padding: 8px 18px;
  border-radius: 8px;
  background: #f1f1f1;
  color: #333;
  text-decoration: none;
  font-weight: 500;
  transition: 0.3s;
}

#filters a:hover {
  background: #007bff;
  color: #fff;
}

/* active button */
#filters a.selected {
  background: #007bff;
  color: #fff;
}

/* ===============================
   RESPONSIVE 
================================= */

@media (max-width: 992px) {
  #gallery .item img {
    height: 220px;
  }
}

@media (max-width: 768px) {
  #gallery .item img {
    height: 200px;
  }
}

@media (max-width: 480px) {
  #gallery .item img {
    height: 180px;
  }
}

/* BLOG CARD STYLE */

.blog-card {
  background: #111;
  border-radius: 12px;
  overflow: hidden;
  height: auto;
}

.blog-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

.blog-content {
  padding: 20px;
}

.blog-content h4 {
  font-size: 18px;
  margin-bottom: 10px;
  color: #fff;
}

.blog-content a {
  color: #1aa6b7;
  text-decoration: none;
  font-weight: 600;
}

.blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
}

.blog-slider .owl-dots {
  display: none;
}

/* SLIDER ARROWS */

.blog-slider .owl-nav {
  position: absolute;
  top: 45%;
  left: 0;
  width: 100%;
  display: flex !important;
  justify-content: space-between;
  transform: translateY(-50%);
  pointer-events: none;
}

.blog-slider .owl-nav button {
  pointer-events: auto;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  border: none;
  background: #1aa6b7 !important;
  color: #fff !important;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}

.blog-slider .owl-nav button:hover {
  background: #0d6efd !important;
  transform: scale(1.05);
}

/* Footer */

/* ══════════════════════════════════════════
   FOOTER  (fix #5 — new structure, SEO friendly)
══════════════════════════════════════════ */
.cy-footer {
  background: #0a1128;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  padding: 64px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.cy-footer .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 28px;
}

/* top nav grid */
.cy-footer-top {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  margin-bottom: 52px;
}
.cy-footer-col h5 {
  font-family: "Poppins", sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 18px;
}
.cy-footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.cy-footer-col ul li a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  font-size: 13.5px;
  transition:
    color 0.2s,
    padding-left 0.2s;
}
.cy-footer-col ul li a:hover {
  color: var(--blue-lt);
  padding-left: 4px;
}

/* trending / SEO section */
.cy-footer-seo {
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  padding: 32px 0;
}
.cy-footer-seo h6 {
  font-family: "Poppins", sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  margin-bottom: 10px;
}
.cy-footer-seo p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 22px;
  line-height: 1.75;
}
.cy-footer-seo p a {
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  transition: color 0.2s;
}
.cy-footer-seo p a:hover {
  color: var(--blue-lt);
}

/* bottom bar */
.cy-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  padding: 24px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
}
.cy-footer-address {
  font-size: 12.5px;
  color: rgba(255, 255, 255, 0.45);
  line-height: 1.65;
}
.cy-footer-legal {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}
.cy-footer-legal a {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  transition: color 0.2s;
}
.cy-footer-legal a:hover {
  color: var(--blue-lt);
}
.cy-footer-copy {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.3);
  text-align: right;
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 1024px) {
  .cy-footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
  .cy-locations-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 900px) {
  .why-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .batch-grid {
    grid-template-columns: 1fr 1fr;
  }
  .stats-bar .container {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .section-dark,
  .section-white,
  .section-offwhite,
  .section-navy-deep {
    /* padding: 56px 50px;  */
  }
  .batch-grid {
    grid-template-columns: 1fr;
  }
  .combo-banner {
    padding: 32px 20px;
  }
  .combo-price-row {
    gap: 16px;
  }
  .cy-footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .cy-locations-grid {
    grid-template-columns: 1fr;
  }
  .cy-footer-bottom {
    flex-direction: column;
    text-align: center;
  }
  .cy-footer-copy {
    text-align: center;
  }
  .countdown-row {
    gap: 8px;
  }
  .cd-unit {
    min-width: 60px;
    padding: 10px 12px;
  }
  .price-block {
    flex-direction: column;
    gap: 12px;
  }
}
/* ==================

/* DIPLOMA PROGRAM */

.diploma-program-section {
  background: linear-gradient(180deg, #071738 0%, #0a2258 100%);
  padding: 140px 0;
  position: relative;
  text-align: center;
}

/* CENTER CONTENT WIDTH */

.diploma-program-section .container {
  max-width: 1200px;
  margin: auto;
  position: relative;
  z-index: 2;
}

/* SUBTITLE */

.diploma-program-section .subtitle {
  font-size: 14px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #4c6fff;
  margin-bottom: 20px;
  font-weight: 600;
}

/* MAIN HEADING */

.diploma-heading {
  font-size: 64px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.2;
  margin-bottom: 25px;
}

/* UNDERLINE ACCENT */

.diploma-heading::after {
  content: "";
  display: block;
  width: 70px;
  height: 3px;
  background: #00c2ff;
  margin: 18px auto 0;
  border-radius: 3px;
}

/* PARAGRAPH TEXT */

.diploma-desc {
  font-size: 19px;
  line-height: 1.95;
  color: #c9d6ff;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* KEYWORD HIGHLIGHTS */

.diploma-desc strong {
  color: #00d4ff;
  font-weight: 600;
}

/* ADD SOFT PANEL DEPTH (VERY SUBTLE) */

.diploma-program-section::before {
  content: "";
  position: absolute;
  top: 80px;
  left: 50%;
  transform: translateX(-50%);
  width: 95%;
  height: 85%;
  background: linear-gradient(180deg, #6a7fb3 0%, #5c6fa6 100%);
  opacity: 0.08;
  border-radius: 40px;
  z-index: 0;
}

/* KEEP CONTENT ABOVE PANEL */

.diploma-program-section .container {
  position: relative;
  z-index: 2;
}

/* RESPONSIVE */

/* 1200px */
@media (max-width: 1200px) {
  .diploma-heading {
    font-size: 52px;
  }
}

/* 991px */
@media (max-width: 991px) {
  .diploma-heading {
    font-size: 38px;
  }

  .diploma-desc {
    font-size: 16px;
  }
}

/* ===== RESPONSIVE: Diploma Program Overview Section ===== */

@media (max-width: 768px) {
  .cy-float-btn,
  .float-cta,
  .sticky-cta {
    position: fixed !important;
    bottom: 0 !important;
    right: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 999;
    margin: 0 12px 12px 0;
  }
}

/* 768px */
@media (max-width: 768px) {
  .diploma-program-section {
    padding: 60px 0 !important;
  }

  .diploma-heading {
    font-size: 26px;
    line-height: 1.35;
    margin-bottom: 16px;
  }

  .diploma-desc {
    font-size: 15px;
    line-height: 1.75;
    text-align: left;
  }

  .diploma-program-section .subtitle {
    font-size: 13px;
  }
}

/* 576px */
@media (max-width: 576px) {
  .diploma-program-section {
    padding: 44px 0 !important;
    overflow: hidden;
  }

  .diploma-program-section .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .diploma-program-section .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .diploma-program-section .col-lg-12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .diploma-program-section .subtitle {
    font-size: 11px;
    letter-spacing: 1px !important;
    padding: 5px 14px;
    margin-bottom: 10px;
  }

  .diploma-heading {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 10px;
    text-align: left;
  }

  .diploma-content-wrap {
    text-align: left !important;
  }

  .diploma-desc {
    font-size: 14px;
    line-height: 1.75;
    text-align: left;
    margin-bottom: 14px;
  }
}

/* MAIN BOX */

.highlight-box {
  /* background:#0c2a66; */
  /* background: ghostwhite; */
  background: linear-gradient(to right, #5f75bb, #6179be);
  border-radius: 15px;
  padding: 40px;
  box-shadow: 0 0 25px rgba(0, 194, 255, 0.08);
}

/* who shoul join section */
/* SECTION */

.who-can-join-section {
  background: #ffffff;
  padding: 90px 0;
}

/* HEADING */

.section-heading {
  font-size: 34px;
  font-weight: 700;
  color: #1d2b3a;
  line-height: 1.4;
  margin-bottom: 10px;
}

.section-heading span {
  color: #2563eb;
}

/* SUBHEADING */

.section-subheading {
  font-size: 18px;
  font-weight: 600;
  color: #444;
  margin-bottom: 25px;
}

/* LIST */

.custom-list {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0;
}

.custom-list li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 18px;
  font-size: 16px;
  color: #555;
  line-height: 1.7;
}

/* BULLET DOT */

.custom-list li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: #2563eb;
  font-size: 18px;
}

/* NOTE TEXT */

.note-text {
  display: block;
  font-size: 14px;
  color: #777;
  margin-top: 5px;
  font-style: italic;
}

/* DOWNLOAD BUTTON */

.download-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(90deg, #2563eb, #4f46e5);
  color: #fff;
  padding: 14px 28px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: 0.3s;
}

.download-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
}

/* INFO BOX */

.info-box {
  margin-top: 25px;
  background: linear-gradient(90deg, #eef2ff, #f5f3ff);
  padding: 22px 25px;
  border-radius: 14px;
}

.info-box h5 {
  font-weight: 700;
  color: #1d2b3a;
  margin-bottom: 6px;
}

.info-box p {
  margin: 0;
  color: #555;
  font-size: 15px;
}

/* ===== RESPONSIVE: Who Should Join Section ===== */

@media (max-width: 991px) {
  .who-can-join-section {
    padding: 60px 0;
  }

  .section-heading {
    font-size: 26px;
    line-height: 1.35;
  }

  /* Add spacing between the two columns when they stack */
  .who-can-join-section .col-lg-6:first-child {
    margin-bottom: 48px;
  }

  /* Remove the <br> effect on tablet — heading flows naturally */
  .section-heading br {
    display: none;
  }
}

@media (max-width: 576px) {
  .who-can-join-section {
    padding: 44px 0;
  }

  .section-heading {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 8px;
  }

  .section-subheading {
    font-size: 15px;
    margin-bottom: 18px;
  }

  .custom-list li {
    font-size: 14px;
    margin-bottom: 14px;
    line-height: 1.65;
  }

  .custom-list li::before {
    font-size: 16px;
  }

  .note-text {
    font-size: 13px;
  }

  /* Full-width button on mobile */
  .download-btn {
    width: 100%;
    justify-content: center;
    padding: 13px 20px;
    font-size: 15px;
    border-radius: 10px;
  }

  /* Gap between the two columns */
  .who-can-join-section .col-lg-6:first-child {
    margin-bottom: 40px;
  }

  /* Divider line between the two sections */
  .who-can-join-section .col-lg-6:last-child {
    padding-top: 40px;
    border-top: 1px solid #e5e7eb;
  }

  .info-box {
    padding: 18px 18px;
    border-radius: 10px;
    margin-top: 20px;
  }

  .info-box h5 {
    font-size: 15px;
    margin-bottom: 5px;
  }

  .info-box p {
    font-size: 14px;
  }
}

/* FEATURE ITEM CARD STYLE */

.highlight-item {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  align-items: flex-start;
  background: #112e63;
  padding: 20px 22px;
  border-radius: 12px;
  transition: 0.3s ease;
}

/* OPTIONAL HOVER EFFECT (cyberyaan style glow) */

.highlight-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(0, 194, 255, 0.15);
}

/* ICON STYLE */

.icon-box {
  min-width: 50px;
  height: 50px;
  background: linear-gradient(135deg, #00c2ff, #007bff);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-size: 18px;
}

.icon-box.purple {
  background: linear-gradient(135deg, #7b61ff, #5f3bff);
}

.icon-box.pink {
  background: linear-gradient(135deg, #ff4fd8, #c400ff);
}

/* TEXT */

.highlight-content h4 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #00c2ff;
}

.highlight-content p {
  font-size: 14px;
  color: #cfd8ff;
  line-height: 1.7;
}

/* CTA STRIP */

.highlight-cta {
  margin-top: 25px;
  padding: 25px 30px;
  border-radius: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: linear-gradient(90deg, #0066ff, #a100ff);
  flex-wrap: wrap;
  gap: 15px;
}

/* CTA TEXT */

.highlight-cta h5 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}

.highlight-cta p {
  margin: 0;
  font-size: 13px;
  opacity: 0.9;
}

/* BUTTON */

.cta-btn {
  background: #fff;
  color: #0c2a66;
  padding: 10px 22px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: 0.3s;
}

.cta-btn:hover {
  background: #071a3c;
  color: #fff;
}

.curriculum-btn{
  display:inline-block;
  background:var(--primary-color);
  color:#fff;
  padding:14px 32px;
  border-radius:6px;
  font-weight:600;
  text-decoration:none;
  transition:0.3s ease;
}

.curriculum-btn:hover{
  background:linear-gradient(90deg, #2563eb, #4f46e5);
  color:#fff;
}

/* ===============================
SMALL DEVICES (≤576px)
=============================== */

@media (max-width:576px){

  .curriculum-btn{
    display:block;
    width:100%;
    max-width:200px;
    margin:0 auto;
    padding:12px 20px;
    font-size:13px;
    text-align:center;
    border-radius:5px;
  }

}
/* SECTION BACKGROUND */

.faq-section {
  background: #071a3c;
  padding: 90px 0;
}

/* TITLE */

.faq-title h2 {
  color: #00c2ff;
  font-size: 38px;
  font-weight: 700;
}

.faq-line {
  width: 80px;
  height: 3px;
  background: #00c2ff;
  margin: 15px auto 50px;
}

/* GRID LAYOUT */

.faq-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

/* FAQ ITEM CARD */

.faq-item {
  background: #112e63;
  border-radius: 12px;
  margin-bottom: 15px;
  overflow: hidden;
  border: 1px solid rgba(0, 194, 255, 0.08);
  transition: 0.3s ease;
}

.faq-item:hover {
  box-shadow: 0 8px 30px rgba(0, 194, 255, 0.15);
}

/* QUESTION BUTTON */

.faq-question {
  width: 100%;
  background: none;
  border: none;
  color: #ffffff;
  padding: 18px 22px;
  font-size: 16px;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  text-align: left;
}

/* PLUS ICON */

.faq-question span {
  font-size: 20px;
  color: #00c2ff;
}

/* ANSWER */

.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 22px;
  color: #c9d8ff;
  font-size: 14px;
  line-height: 1.6;
  transition:
    max-height 0.4s ease,
    padding 0.3s ease;
}

/* ACTIVE STATE */

.faq-item.active .faq-answer {
  max-height: 200px;
  padding: 0 22px 18px;
}

.faq-item.active span {
  transform: rotate(45deg);
}

/* Interview Section */

/* SECTION */

.cyber-pdmi-section {
  background: #ffffff;
  padding: 90px 0;
  text-align: center;
}

/* LABEL */

.cyber-pdmi-label {
  display: inline-block;
  background: #e8f1ff;
  color: #2563eb;
  padding: 6px 16px;
  font-size: 14px;
  border-radius: 20px;
  margin-bottom: 15px;
}

/* HEADING */

.cyber-pdmi-heading {
  font-size: 36px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 10px;
}

/* SUBTEXT */

.cyber-pdmi-subtext {
  color: #6b7280;
  max-width: 700px;
  margin: 0 auto 50px;
  font-size: 16px;
}

/* FEATURE GRID */

.cyber-pdmi-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  margin-bottom: 50px;
}

/* FEATURE CARD */

.cyber-pdmi-feature-card {
  background: #f8fafc;
  padding: 25px;
  border-radius: 14px;
  display: flex;
  gap: 15px;
  text-align: left;
  align-items: flex-start;
  transition: 0.3s ease;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
}

.cyber-pdmi-feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
}

/* ICON STYLE */

.cyber-pdmi-icon {
  width: 45px;
  height: 45px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 18px;
}

.cyber-pdmi-icon.blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.cyber-pdmi-icon.green {
  background: linear-gradient(135deg, #22c55e, #16a34a);
}

.cyber-pdmi-icon.purple {
  background: linear-gradient(135deg, #a855f7, #7e22ce);
}

/* FEATURE TEXT */

.cyber-pdmi-feature-card h4 {
  font-size: 18px;
  margin-bottom: 6px;
  color: #1e293b;
}

.cyber-pdmi-feature-card p {
  font-size: 14px;
  color: #64748b;
  margin: 0;
}

/* IMAGE GRID */

.cyber-pdmi-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}

/* IMAGE CARD */

.cyber-pdmi-gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
}

.cyber-pdmi-gallery-item img {
  width: 100%;
  height: 230px;
  object-fit: cover;
  transition: 0.4s ease;
}

/* OVERLAY TEXT */

.cyber-pdmi-gallery-item span {
  position: absolute;
  bottom: 15px;
  left: 15px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  z-index: 2;
}

.cyber-pdmi-gallery-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.65), transparent);
}

/* HOVER EFFECT */

.cyber-pdmi-gallery-item:hover img {
  transform: scale(1.06);
}


/* ===== RESPONSIVE: Mock Interviews / PD Section ===== */

@media (max-width: 768px) {
  .cyber-pdmi-section {
    padding: 60px 0;
  }

  .cyber-pdmi-heading {
    font-size: 26px;
    line-height: 1.35;
  }

  .cyber-pdmi-subtext {
    font-size: 15px;
  }

  .cyber-pdmi-features {
    gap: 16px;
  }
}

@media (max-width: 576px) {
  .cyber-pdmi-section {
    padding: 44px 0;
  }

  .cyber-pdmi-label {
    font-size: 12px;
    padding: 5px 14px;
  }

  .cyber-pdmi-heading {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 12px;
  }

  .cyber-pdmi-subtext {
    font-size: 14px;
    line-height: 1.7;
    text-align: left;
  }

  /* Stack cards vertically, switch to horizontal icon+text layout */
  .cyber-pdmi-features {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .cyber-pdmi-feature-card {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 16px;
    border-radius: 10px;
  }

  /* Icon stays fixed size on the left */
  .cyber-pdmi-icon {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
  }

  /* Text block fills remaining width */
  .cyber-pdmi-feature-card > div:last-child {
    flex: 1;
    min-width: 0;
  }

  .cyber-pdmi-feature-card h4 {
    font-size: 15px;
    margin-bottom: 5px;
    margin-top: 0;
  }

  .cyber-pdmi-feature-card p {
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
  }
}
/* Networking */

/* SECTION BACKGROUND */
/* Why Choose Us  */

.cyber-course-why-section {
  background: linear-gradient(180deg, #071738 0%, #0b2258 100%);
  padding: 90px 0;
}


/* HEADING */

.cyber-course-why-heading {
  color: #ffffff;
  font-size: 38px;
  font-weight: 700;
  margin-bottom: 50px;
}

/* LIST */

.cyber-course-why-list {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* CARD DESIGN */

.cyber-course-why-card {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: 26px 28px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.04);
  border-left: 4px solid #00c2ff;
  transition: 0.3s ease;
}

/* ICON STYLE */

.cyber-course-why-card .icon {
  font-size: 22px;
  margin-top: 3px;
}

/* TEXT */

.cyber-course-why-card h4 {
  color: #ffffff;
  font-size: 20px;
  margin-bottom: 6px;
}

.cyber-course-why-card p {
  color: #c7d2fe;
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
}

/* HOVER EFFECT */

.cyber-course-why-card:hover {
  background: rgba(255, 255, 255, 0.07);
  transform: translateX(6px);
  border-left-color: #4c6fff;
}
.diploma-highlight-section{
  background: #071c3a;
}

.section-title h2 span {
        color: #00bfff;
    }

 .section-title h2 {
        color: #ffffff;
        }
/* RESPONSIVE */

@media (max-width: 768px) {
  .cyber-course-why-heading {
    font-size: 25px;
  }

  .cyber-course-why-card {
    padding: 22px;
  }
}

/* ========================= */
/* TABLET RESPONSIVE */
/* ========================= */

@media (max-width: 991px) {
  .section-title h2 {
    font-size: 30px;
  }

  .highlight-box {
    padding: 30px;
  }

  .highlight-item {
    gap: 15px;
  }

  .highlight-content h4 {
    font-size: 18px;
  }

  .faq-wrapper {
    grid-template-columns: 1fr;
  }

  .faq-title h2 {
    font-size: 30px;
  }
  .section-heading {
    font-size: 28px;
  }

  .who-can-join-section {
    padding: 70px 20px;
  }
  .cyber-pdmi-features {
    grid-template-columns: 1fr;
  }

  .cyber-pdmi-gallery-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* Key highlights */
/* SECTION */

.cyber-highlights-section {
  background: #ffffff;
  padding: 90px 0;
}

/* TITLE */

.cyber-highlights-title h2 {
  font-size: 36px;
  font-weight: 700;
  color: #1d2b3a;
  margin-bottom: 10px;
}

.cyber-highlights-title span {
  color: #2563eb;
}

.cyber-highlights-title p {
  color: #6b7280;
  font-size: 16px;
  margin-bottom: 50px;
}

/* GRID */

.cyber-highlights-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* COLLAPSED STATE (SHOW ONLY 6 ITEMS) */

.cyber-highlights-grid.collapsed .cyber-highlight-card:nth-child(n + 7) {
  display: none;
}

/* CARD */

.cyber-highlight-card {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 16px 20px;
  font-size: 15px;
  color: #374151;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: 0.3s ease;
}

/* ICON */

.cyber-highlight-card i {
  color: #2563eb;
  font-size: 18px;
}

/* HOVER EFFECT */

.cyber-highlight-card:hover {
  background: #ffffff;
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(37, 99, 235, 0.15);
}

/* BUTTON */

.cyber-highlights-btn {
  margin-top: 40px;
}

.cyber-view-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(90deg, #2563eb, #4f46e5);
  color: #fff;
  padding: 12px 28px;
  border-radius: 10px;
  font-weight: 600;
  text-decoration: none;
  transition: 0.3s ease;
}

.cyber-view-toggle:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(37, 99, 235, 0.25);
}


/* ===== RESPONSIVE: Key Highlights Section ===== */

@media (max-width: 768px) {
  .cyber-highlights-section {
    padding: 60px 0;
  }

  .cyber-highlights-title h2 {
    font-size: 26px;
    line-height: 1.35;
  }

  .cyber-highlights-title p {
    font-size: 15px;
    margin-bottom: 32px;
  }

  .cyber-highlights-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .cyber-highlight-card {
    padding: 14px 14px;
    font-size: 13.5px;
    gap: 10px;
    border-radius: 10px;
  }

  .cyber-highlight-card i {
    font-size: 16px;
    flex-shrink: 0;
  }
}

@media (max-width: 480px) {
  .cyber-highlights-section {
    padding: 44px 0;
  }

  .cyber-highlights-title h2 {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 12px;
  }

  .cyber-highlights-title p {
    font-size: 14px;
    margin-bottom: 24px;
    text-align: left;
  }

  /* Single column on very small screens */
  .cyber-highlights-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .cyber-highlight-card {
    padding: 13px 14px;
    font-size: 13px;
    gap: 10px;
    border-radius: 8px;
    align-items: flex-start;
  }

  .cyber-highlight-card i {
    font-size: 15px;
    flex-shrink: 0;
    margin-top: 2px;
  }

  /* Collapsed: show only 4 on mobile instead of 6 */
  .cyber-highlights-grid.collapsed .cyber-highlight-card:nth-child(n + 5) {
    display: none;
  }

  .cyber-highlights-btn {
    margin-top: 24px;
  }

  .cyber-view-toggle {
    padding: 11px 24px;
    font-size: 14px;
    width: 100%;
    justify-content: center;
  }
}
/* ========================= */
/* MOBILE RESPONSIVE */
/* ========================= */

@media (max-width: 767px) {

  /* ── SECTION ── */
  .diploma-highlight-section {
    padding: 40px 0px 40px;
    background: var(--bg-dark-2) !important;
  }

 /* SECTION BACKGROUND (if not already dark) */
.section-title {
  background: #071c3a; /* dark navy */
  padding: 60px 20px;
  background: #071c3a;
}

/* HEADING STYLE */
.section-title h2 {
  color: #ffffff;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 18px;
}

/* BLUE HIGHLIGHT TEXT */
.section-title h2 span {
  color: #00bfff; /* cyan highlight */
}

/* UNDERLINE */
.title-line {
  width: 90px;
  height: 4px;
  background: #00bfff;
  margin: 0 auto;
  border-radius: 4px;
}

  /* ── HIGHLIGHT BOX ── */
  .highlight-box {
    padding: 20px 16px !important;
    gap: 14px !important;
  }

  /* ── EACH ITEM ── */
  .highlight-item {
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding: 16px !important;
  }

  /* ── ICON — smaller, doesn't shrink ── */
  .icon-box {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    font-size: 16px !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
  }

  /* ── CONTENT ── */
  .highlight-content {
    flex: 1 !important;
    min-width: 0 !important;
  }
  .highlight-content h4 {
    font-size: 14px !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    line-height: 1.4 !important;
  }

  /* ── TRUNCATED PARAGRAPH ── */
  .highlight-content p {
    font-size: 13px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
  }
  .highlight-content p.expanded {
    display: block !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
  }

  /* ── READ MORE TOGGLE ── */
  .hl-read-more {
    display: inline-block;
    margin-top: 5px;
    font-size: 12px;
    color: #1aa6b7;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 0.3px;
    background: none;
    border: none;
    padding: 0;
  }

  /* ── CTA BOX ── */
  .highlight-cta {
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 16px !important;
    margin-top: 4px !important;
  }
  .cta-text {
    flex: 1 !important;
    min-width: 0 !important;
  }
  .cta-text h5 {
    font-size: 14px !important;
    font-weight: 700 !important;
    margin-bottom: 3px !important;
    line-height: 1.3 !important;
  }
  .cta-text p {
    font-size: 11px !important;
    margin: 0 !important;
    opacity: 0.8 !important;
    color: white !important;
  }
  .cta-btn {
    width: auto !important;
    white-space: nowrap !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    flex-shrink: 0 !important;
  }
}
/* After 10th and 12th Section */
.after-10th-section,
.after-12th-section {
  background: linear-gradient(180deg, #0b1226 0%, #121a3a 100%);
  color: #ffffff;
}
.after-10th-section,
.after-12th-section {
  background: linear-gradient(180deg, #0b1226 0%, #121a3a 100%);
  color: #ffffff;
}

/* Badge */
.after-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.08);
  padding: 8px 22px;
  border-radius: 30px;
  font-size: 16px;
  color: #4da3ff;
}

/* Heading FIX */
.after-heading {
  color: #ffffff !important;
  font-size: 42px;
  font-weight: 600;
}

/* Paragraph FIX */
.after-desc {
  color: #cbd5e1 !important;
  max-width: 900px;
  margin: auto;
  font-size: 17px;
  line-height: 1.8;
}

/* Feature cards */
.feature-box {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(8px);
  border-radius: 8px;
  padding: 40px 20px;
  transition: 0.3s ease;
}

/* Card hover effect */
.feature-box:hover {
  transform: translateY(-6px);
  background: rgba(255, 255, 255, 0.12);
}

/* Card titles */
.feature-box h4 {
  color: #4da3ff;
}

/* Card description */
.feature-box p {
  color: #d1d5db;
}

/* Bottom highlight line */
.highlight-text {
  color: #e2e8f0;
}

/* ===== RESPONSIVE: After 10th & 12th Sections ===== */

/* Reduce heading size on tablets */
@media (max-width: 768px) {
  .after-heading {
    font-size: 28px;
    line-height: 1.3;
  }

  .after-desc {
    font-size: 15px;
    line-height: 1.7;
    padding: 0 8px;
  }

  .after-badge {
    font-size: 13px;
    padding: 6px 16px;
  }

  .feature-box {
    padding: 28px 20px;
    margin-bottom: 16px;
  }

  .highlight-text {
    font-size: 15px;
    padding: 0 8px;
  }
}

/* Mobile phones */
@media (max-width: 576px) {
  .after-heading {
    font-size: 22px;
    line-height: 1.35;
  }

  .after-desc {
    font-size: 14px;
    text-align: left;
    padding: 0 4px;
  }

  .after-badge {
    font-size: 12px;
    padding: 5px 14px;
  }

  /* Stack cards vertically with proper spacing */
  .after-10th-section .row,
  .after-12th-section .row {
    margin-left: 0;
    margin-right: 0;
  }

  .after-10th-section .col-md-4,
  .after-12th-section .col-md-4 {
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 12px;
  }

  /* Full-width cards on mobile */
  .feature-box {
    padding: 24px 18px;
    /* text-align: left; */
    display: block;
    align-items: flex-start;
    gap: 16px;
    border-radius: 10px;
  }

  /* Icon stays on the left, text on the right */
  .feature-icon {
    font-size: 22px;
    flex-shrink: 0;
    margin-top: 2px;
  }

  .feature-box h4 {
    font-size: 15px;
    margin-bottom: 6px;
  }

  .feature-box p {
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
  }

  /* Feature box text wrapper needed for flex layout */
  .feature-box > *:not(.feature-icon) {
    flex: 1;
  }

  .highlight-text {
    font-size: 14px;
    text-align: left;
    line-height: 1.7;
    padding: 0 4px;
  }

  /* Reduce top/bottom padding on mobile */
  .pt-100 {
    padding-top: 50px !important;
  }

  .pb-100 {
    padding-bottom: 50px !important;
  }
}

/* Individual Diploma Modules */
/* Networking */
.module-card {
  background: rgba(255, 255, 255, 0.04);
  padding: 28px;
  border-radius: 10px;
  transition: 0.3s ease;
  height: 100%;
}

.module-card:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-6px);
}

.module-card h4 {
  color: #4da3ff;
  font-size: 20px;
  margin-bottom: 12px;
}

.module-card p {
  color: #cbd5e1;
  font-size: 15px;
  line-height: 1.7;
}

/* MOBILE SLIDER WITH ARROWS */
@media (max-width: 768px) {

  .networking-curriculum .container {
    position: relative;
  }

  .networking-curriculum .row {
    display: flex;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    gap: 16px;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    padding-bottom: 10px;
  }

  .networking-curriculum .row::-webkit-scrollbar {
    display: none;
  }

  .networking-curriculum .col-lg-6 {
    flex: 0 0 85% !important;
    max-width: 85% !important;
    scroll-snap-align: center;
  }

  /* arrows */
  .module-arrow {
    position: absolute;
    top: 67%;
    transform: translateY(-50%);
    background: #2865a6;
    color: white;
    border: none;
    width: 32px;
    height: 38px;
    /* border-radius: 50%; */
    font-size: 18px;
    cursor: pointer;
    z-index: 5;
  }

  .module-arrow.left {
    left: -5px;
  }

  .module-arrow.right {
    right: -5px;
  }


}

@media (max-width: 768px) {

  /* make parent horizontal scroll container */
  .cyber-course-why-section .cyber-course-why-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 16px !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 10px;
    width: 100%;
  }

  /* hide scrollbar */
  .cyber-course-why-section .cyber-course-why-list::-webkit-scrollbar {
    display: none;
  }

  /* make cards slide items */
  .cyber-course-why-section .cyber-course-why-card {
    min-width: 85% !important;
    max-width: 85% !important;
    flex: 0 0 85% !important;
    scroll-snap-align: center !important;
  }

}



/* Career scope section */
.career-scope-section {
  background: #ffffff;
}

.career-heading {
  font-size: 28px;
  font-weight: 600;
  color: #0b1226;
}

.career-subtext {
  color: #6b7280;
  max-width: 700px;
  margin: auto;
}

.career-card {
  background: #f8fafc;
  padding: 35px 25px;
  border-radius: 12px;
  text-align: center;
  height: 100%;
  transition: 0.3s ease;
  border: 1px solid #e5e7eb;
}

.career-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

.career-icon {
  font-size: 36px;
  margin-bottom: 12px;
}

.career-card h5 {
  color: #1a2cff;
  margin-bottom: 10px;
}

.career-card p {
  font-size: 15px;
  color: #4b5563;
}

/* CAREER SCOPE MOBILE SLIDER WITH ARROWS */
@media (max-width: 768px) {

  .career-scope-section .container {
    position: relative;
  }

  .career-scope-section .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 16px;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding-bottom: 10px;
  }

  .career-scope-section .row::-webkit-scrollbar {
    display: none;
  }

  .career-scope-section .col-lg-3 {
    flex: 0 0 85% !important;
    max-width: 85% !important;
    scroll-snap-align: center;
  }

  /* arrows */
  .career-arrow {
 position: absolute;
    top: 71%;
    transform: translateY(-50%);
    background: #2865a6;
    color: white;
    border: none;
    width: 32px;
    height: 38px;
    /* border-radius: 50%; */
    font-size: 18px;
    cursor: pointer;
    z-index: 5;
  }

  .career-arrow.left {
    left: -5px;
  }

  .career-arrow.right {
    right: -5px;
  }

}

@media (min-width: 769px) {

  .career-arrow,
  .module-arrow,
  .why-arrow {
    display: none !important;
  }

}

/* ============================================================
   CYBERYAAN — COURSE CARDS SLIDER  |  course-slider.css
   Works on both home page and diploma page
   ============================================================ */

/* ── SLIDER WRAPPER ── */
.course-slider-wrap {
  position: relative;
  width: 100%;
}

/* ── SCROLLABLE ROW ── */
#course-cards-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  gap: 20px !important;
  padding: 8px 4px 20px !important;
  align-items: stretch !important;
  /* Remove Bootstrap row negative margins */
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#course-cards-row::-webkit-scrollbar {
  display: none !important;
}

/* ── EACH CARD COLUMN ── */
#course-cards-row > [class*="col-"] {
  flex: 0 0 calc(33.333% - 14px) !important;
  max-width: calc(33.333% - 14px) !important;
  min-width: 280px !important;
  width: calc(33.333% - 14px) !important;
  scroll-snap-align: start !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* ── INNER CARD — equal height ── */
#course-cards-row .bg-dark-gradient {
  height: 100% !important;
  min-height: 360px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  box-sizing: border-box !important;
}

/* ── ARROWS ── */
.course-arrow-btn {
  position: absolute;
  top: calc(50% - 20px);
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: transparent;
  color: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.3);
  font-size: 14px;
  cursor: pointer;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  line-height: 1;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.course-arrow-btn:hover {
  border-color: #1aa6b7;
  color: #1aa6b7;
}
.course-arrow-btn.prev {
  left: -18px;
}
.course-arrow-btn.next {
  right: -18px;
}
.course-arrow-btn:disabled,
.course-arrow-btn[data-end="true"] {
  opacity: 0.25;
  cursor: default;
}

/* ── DOTS ── */
.course-slider-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 18px;
}
.course-slider-dots span {
  height: 6px;
  border-radius: 100px;
  display: inline-block;
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.2);
  width: 6px;
}
.course-slider-dots span.active {
  width: 20px;
  background: rgba(255, 255, 255, 0.8);
}

/* ── RESPONSIVE CARD SIZES ── */

/* TABLET — 2 cards visible */
@media (max-width: 991px) {
  #course-cards-row > [class*="col-"] {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    min-width: 240px !important;
    width: calc(50% - 10px) !important;
  }
}

/* MOBILE — 1 card, full width feel */
@media (max-width: 600px) {
  #course-cards-row {
    gap: 14px !important;
    padding: 8px 2px 16px !important;
  }
  #course-cards-row > [class*="col-"] {
    flex: 0 0 85vw !important;
    max-width: 85vw !important;
    min-width: 240px !important;
    width: 85vw !important;
  }
  #course-cards-row .bg-dark-gradient {
    min-height: 320px !important;
  }
  .course-arrow-btn {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }
  .course-arrow-btn.prev {
    left: -4px;
  }
  .course-arrow-btn.next {
    right: -4px;
  }
}



/* ============================================================
   D-ARROW FIX — Complete rewrite
   ============================================================ */
@media (max-width: 991px) {
  /* Step 1: Hide ALL d-arrows by default */
  #mainmenu span.d-arrow {
    display: none !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
  }

  /* Step 2: Show ONLY arrows that have submenus */
  #mainmenu span.d-arrow.has-sub-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 50px !important;
    height: 50px !important;
    font-size: 20px !important;
    color: #888 !important;
    cursor: pointer !important;
    z-index: 9999999 !important;
    background: transparent !important;
    border: none !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  /* Step 3: Rotate when submenu open */
  #mainmenu li.active > span.d-arrow.has-sub-menu {
    transform: rotate(180deg) !important;
    color: #1aa6b7 !important;
  }

  /* Step 4: Show submenu when active */
  #mainmenu li.active > ul {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: all !important;
  }


  /* When open — rotate arrow down */
  #mainmenu li.active > span.d-arrow.has-sub-menu::before {
    transform: rotate(270deg) !important;
    color: #1aa6b7 !important;
  }

  /* Make sure the span itself doesn't rotate (only the ::before does) */
  #mainmenu li.active > span.d-arrow.has-sub-menu {
    transform: none !important;
  }
}

/* Why choose Us(diploma) */
/* ── WHY CHOOSE US — mobile slider ── */
@media (max-width: 767px) {

  #why-cards-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    gap: 14px !important;
    padding: 4px 2px 20px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #why-cards-row::-webkit-scrollbar {
    display: none !important;
  }

  #why-cards-row > [class*="col-"] {
    flex: 0 0 88vw !important;
    max-width: 88vw !important;
    min-width: 260px !important;
    width: 88vw !important;
    scroll-snap-align: start !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Stack the image below text on mobile */
  #why-cards-row .row.g-0 {
    flex-direction: column !important;
  }
  #why-cards-row .row.g-0 .col-sm-6 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  #why-cards-row .row.g-0 .col-sm-6 img {
    height: 180px !important;
    object-fit: cover !important;
    width: 100% !important;
  }

    #why-cards-row .p-40 h3{
      font-size: 25px;
    }

      #why-cards-row .p-40 p{
      font-size: 15px;
    }
}



/* ============================================================
   D-ARROW — No JS dependency, uses menu-item-has-children
   ============================================================ */
@media (max-width: 991px) {
  /* Position the li so arrow can be absolute inside it */
  #mainmenu li.menu-item-has-children {
    position: relative !important;
  }

  /* Hide the empty span — we don't need it */
  #mainmenu span.d-arrow {
    display: none !important;
  }

  /* Draw arrow using ::after on the anchor tag */
  #mainmenu li.menu-item-has-children > a::after {
    content: "›" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 50px !important;
    height: 100% !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    color: #888 !important;
    transform: rotate(90deg) !important;
    transition:
      transform 0.3s ease,
      color 0.3s ease !important;
    pointer-events: none !important;
  }

  /* When submenu is open — point arrow downward */
  #mainmenu li.menu-item-has-children.active > a::after {
    transform: rotate(270deg) !important;
    color: #1aa6b7 !important;
  }
}

/* ===== MOBILE MENU LOGO FINAL ALIGNMENT ===== */

@media (max-width: 991px) {
  /* Make top header row horizontal */

  .de-flex.sm-pt10 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    /* padding: 14px 20px !important; */
    background: #fff;
    border-bottom: 1px solid #eee;
  }

  header.header-mobile #mainmenu {
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid #eee;
  }

  /* Move logo to top-left */

  .logo {
    display: block !important;
    order: 1;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Keep close icon top-right */

  #menu-btn {
    order: 2;
    margin-left: auto !important;
    float: none !important;
    width: auto !important;
  }

  /* Fix logo size */

  .logo img {
    height: 63px !important;
    width: auto !important;
    display: block !important;
  }

  /* Remove spacing above menu */

  #mainmenu {
    margin: 0 !important;
    padding-top: 6px !important;
  }

  /* Align menu items left */

  #mainmenu > li > a {
    padding: 6px 22px !important;
    text-align: left !important;
    font-size: 14px !important;
    margin-left: 20px !important;
  }

  .de-flex.sm-pt10 {
    border-bottom: none !important;
  }

  .mobile-contact-item {
    border-top: 1px solid #eee;
  }

  .mobile-contact-item a {
    font-size: 14px !important;
    color: #444 !important;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .mobile-contact-item i {
    color: #5a8fd8;
  }
}
@media (max-width: 991px) {
  /* Override template's white background on col-md-12 */
  header#header.showmenu .col-md-12,
  header#header.menu-open .col-md-12,
  header#header.showmenu .container,
  header#header.menu-open .container,
  header#header.showmenu .row,
  header#header.menu-open .row {
    background: #0c1a44 !important;
    background-color: #0c1a44 !important;
  }

  /* Menu panel itself */
  header#header.showmenu,
  header#header.menu-open {
    background: #0c1a44 !important;
    background-color: #0c1a44 !important;
  }

  /* mainmenu */
  header#header.showmenu #mainmenu,
  header#header.menu-open #mainmenu,
  #mainmenu {
    background: #0c1a44 !important;
    background-color: #0c1a44 !important;
  }

  /* Top level items */
  #mainmenu > li {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  }

  #mainmenu > li > a {
    color: #e8edf8 !important;
    background: transparent !important;
  }

  #mainmenu > li > a:hover {
    color: #1aa6b7 !important;
    background: rgba(26, 166, 183, 0.1) !important;
  }

  #mainmenu > li.active > a {
    color: #1aa6b7 !important;
    background: rgba(26, 166, 183, 0.12) !important;
    border-left: 3px solid #1aa6b7 !important;
  }

  /* Submenu */
  #mainmenu ul,
  #mainmenu li > ul,
  #mainmenu li ul {
    background: #0a1840 !important;
    background-color: #0a1840 !important;
    border-left: 3px solid #1aa6b7 !important;
  }

  #mainmenu ul li {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  }

  #mainmenu ul li a {
    color: #c8d4ee !important;
    background: transparent !important;
  }

  #mainmenu ul li a:hover {
    color: #1aa6b7 !important;
    background: rgba(26, 166, 183, 0.1) !important;
  }

  /* Third level */
  #mainmenu ul ul {
    background: #081536 !important;
    background-color: #081536 !important;
    border-left: 2px solid #5a8fd8 !important;
  }

  #mainmenu ul ul li a {
    color: #a8b8d8 !important;
    background: transparent !important;
  }

  #mainmenu ul ul li a:hover {
    color: #1aa6b7 !important;
    background: rgba(26, 166, 183, 0.08) !important;
  }

  /* Contact items */
  .mobile-contact-item {
    background: #0a1840 !important;
    background-color: #0a1840 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
  }

  .mobile-contact-item a {
    color: #c8d4ee !important;
    background: transparent !important;
  }

  .mobile-contact-item a:hover {
    color: #1aa6b7 !important;
    background: rgba(26, 166, 183, 0.1) !important;
  }

  .mobile-contact-item i {
    color: #5a8fd8 !important;
  }

  /* Logo area sticky bar */
  header#header.showmenu .de-flex,
  header#header.menu-open .de-flex {
    /* background: #0c1a44 !important; */
    /* background-color: #0c1a44 !important; */
    border-bottom: 2px solid #1aa6b7 !important;
  }

  /* Hamburger bars white on dark bg */
  /* Hamburger bars — visible on both light and dark bg */
  #menu-btn span,
  #menu-btn::before,
  #menu-btn::after {
    background: #1aa6b7 !important;
  }

  /* When menu is closed — on white header bg */
  header#header:not(.showmenu):not(.menu-open) #menu-btn span,
  header#header:not(.showmenu):not(.menu-open) #menu-btn::before,
  header#header:not(.showmenu):not(.menu-open) #menu-btn::after {
    background: #0c1a44 !important;
  }

  /* When menu is open — on dark navy bg */
  header#header.showmenu #menu-btn span,
  header#header.menu-open #menu-btn span,
  header#header.showmenu #menu-btn::before,
  header#header.menu-open #menu-btn::before,
  header#header.showmenu #menu-btn::after,
  header#header.menu-open #menu-btn::after {
    background: #1aa6b7 !important;
  }
  /* d-arrow */
  #mainmenu .d-arrow.has-sub-menu {
    color: #1aa6b7 !important;
  }

  #mainmenu li.active > .d-arrow.has-sub-menu {
    color: #1aa6b7 !important;
    transform: rotate(-180deg) !important;
  }
  #mainmenu {
    padding-top: 12px !important;
  }

  /* Or if you want more space */
  #mainmenu > li:first-child {
    margin-top: 25px !important;
  }
}

/* ===== FIX DESKTOP NAVBAR ALIGNMENT ===== */

@media (min-width: 992px) {
  /* Make header column flex container */
  header .row > .col-md-12 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* Keep logo left */
  .logo {
    flex: 0 0 auto;
  }

  /* Move menu right */
  #mainmenu {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    margin-left: auto !important;
    width: auto !important;
  }

  @media (min-width: 992px) {
    header #mainmenu .mobile-contact-item,
    #header #mainmenu .mobile-contact-item,
    #mainmenu > .mobile-contact-item {
      display: none !important;
      height: 0 !important;
      overflow: hidden !important;
      padding: 0 !important;
      margin: 0 !important;
      border: 0 !important;
    }
  }
  /* ============================================================
   NUCLEAR CONTACT ITEMS FIX
   ============================================================ */
  /* Mobile sidebar contact section styling */
  /* Mobile sidebar contact styling */
  /* MOBILE CONTACT BLOCK */

  /* MOBILE CONTACT BLOCK */

  @media (max-width: 991px) {
    #mainmenu li.mobile-contact-item a {
      display: flex !important;
      align-items: flex-start !important;
      gap: 12px;

      padding: 14px 22px !important;

      background: #0a1840 !important;
      border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;

      color: #c8d4ee !important;
      font-size: 13px !important;
      line-height: 1.6 !important;
      white-space: normal !important;
    }

    #mainmenu li.mobile-contact-item i {
      color: #1aa6b7 !important;
      margin-top: 3px;
    }

    #mainmenu li.mobile-contact-item.contact-separator a {
      border-top: 2px solid rgba(255, 255, 255, 0.15);
      margin-top: 8px;
    }
  }

  /* hide on desktop */

  /* ================= HIDE MOBILE MENU ITEMS ON DESKTOP ================= */

  @media (min-width: 992px) {
    #mainmenu li.mobile-contact-item,
    #mainmenu li.mobile-social-icons {
      display: none !important;
    }
  }

  @media (max-width: 991px) {
    /* make wrapper horizontal */
    #mainmenu .mobile-social-row {
      display: flex !important;
      flex-direction: row !important;
      align-items: center !important;
      gap: 20px !important;
    }

    /* override template anchor behavior */
    #mainmenu .mobile-social-row a {
      display: inline-flex !important;
      width: auto !important;
      padding: 0 !important;
      margin: 0 !important;
      background: none !important;
      border: none !important;
    }

    /* icon styling */
    #mainmenu .mobile-social-row i {
      font-size: 20px;
      color: #1aa6b7;
    }

    #mainmenu .mobile-social-row i:hover {
      color: #ffffff;
    }
  }

  /* @media (max-width: 991px){

#mainmenu .mobile-social-row{
display:flex !important;
gap:22px;
align-items:center;
padding:14px 22px;
}

#mainmenu .mobile-social-row a{
display:inline-flex !important;
width:auto !important;
margin:0 !important;
padding:0 !important;
}

#mainmenu .mobile-social-row i{
font-size:22px;
color:#1AA6B7;
}

#mainmenu .mobile-social-row i:hover{
color:#ffffff;
}

#mainmenu > li > a {
  margin-left: 20px !important;
}

} 

@media (max-width: 991px){

/* Reset template margin pushing icons outside */
  #mainmenu li.mobile-social-icons a {
    margin-left: 0 !important;
  }

  /* Keep icons inside drawer */
  #mainmenu li.mobile-social-icons {
    padding: 15px 22px !important;
    overflow: hidden !important;
  }

  /* Proper horizontal layout */
  #mainmenu .mobile-social-row {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    flex-wrap: nowrap !important;
  }

  /* Prevent icon shrinking or overflow */
  #mainmenu .mobile-social-row a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
  }
}

@media (max-width: 767px) {
  #course-cards-row::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }

  #course-slider-dots {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  #course-cards-row::-webkit-scrollbar {
    display: none !important;
  }
}
@media (max-width: 767px) {
  #course-cards-row::-webkit-scrollbar {
    display: none !important;
  }

  /* Equal height for all cards */
  #course-cards-row > [class*="col-"] {
    display: flex !important;
    flex-direction: column !important;
  }

  #course-cards-row > [class*="col-"] > .bg-dark-gradient {
    flex: 1 !important;
    height: 100% !important;
    min-height: 380px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
  }
}






/* Popup Form */

/* ============================================================
   CYBERYAAN — DEMO BOOKING POPUP  |  form.css
   All rules use #cyPopup scope to override template CSS
   ============================================================ */

/* ── FLOATING TRIGGER BUTTON ── */
/* ── OPTGROUP label — fix white bg hiding text ── */
#cyPopup .cy-modal select optgroup {
  background: #0c1a44 !important;
  color: rgba(255, 255, 255, 0.45) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}

/* ── Options inside optgroup ── */
#cyPopup .cy-modal select option {
  background: #0c1a44 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  padding: 6px 0 !important;
}

/* ── Fix heading visibility — cy-title ── */
#cyPopup .cy-title {
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  margin: 0 0 5px !important;
  line-height: 1.3 !important;
}

/* ── Badge ── */
#cyPopup .cy-badge {
  display: inline-block !important;
  background: rgba(26, 166, 183, 0.15) !important;
  color: #1aa6b7 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  margin-bottom: 10px !important;
}

/* ── Sub text ── */
#cyPopup .cy-sub {
  font-size: 13px !important;
  color: rgba(255, 255, 255, 0.45) !important;
  margin: 0 0 16px !important;
}
#cyPopup .cy-sub span {
  color: #1aa6b7 !important;
  font-weight: 500 !important;
}




#cy-demo-btn {
  position: fixed;
  bottom: 230px !important;
  right: 24px;
  z-index: 9997;
  padding: 10px 18px;
  background: #1aa6b7;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(26, 166, 183, 0.35);
  transition: background 0.2s, transform 0.2s;
  line-height: 1.4;
}
#cy-demo-btn:hover {
  background: #158a99;
  transform: translateY(-2px);
}

/* ── OVERLAY ── */
#cyPopup.cy-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(4, 8, 20, 0.88) !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  z-index: 99999 !important;
  padding: 20px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
#cyPopup.cy-overlay.open {
  display: flex !important;
}

/* ── MODAL WRAP ── */
#cyPopup .cy-modal-wrap {
  position: relative !important;
  width: 100% !important;
  max-width: 500px !important;
  margin: auto !important;
}

/* ── MODAL CARD ── */
#cyPopup .cy-modal {
  background: #0c1a44 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: 90vh !important;
  width: 100% !important;
  scrollbar-width: none !important;
  position: relative !important;
  box-sizing: border-box !important;
}
#cyPopup .cy-modal::-webkit-scrollbar {
  display: none !important;
}

/* ── CLOSE BUTTON ── */
#cyPopup .cy-close-btn {
  position: absolute !important;
  top: -13px !important;
  right: -13px !important;
  width: 30px !important;
  height: 30px !important;
  min-width: unset !important;
  min-height: unset !important;
  border-radius: 50% !important;
  background: #1aa6b7 !important;
  border: none !important;
  color: #fff !important;
  font-size: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 100 !important;
  padding: 0 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  transition: background 0.2s !important;
}
#cyPopup .cy-close-btn:hover {
  background: #158a99 !important;
}

/* ── HEADER ── */
#cyPopup .cy-modal-header {
  padding: 22px 26px 0 !important;
  background: transparent !important;
}
#cyPopup .cy-badge {
  display: inline-block !important;
  background: rgba(26, 166, 183, 0.15) !important;
  color: #1aa6b7 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  margin-bottom: 10px !important;
}
#cyPopup .cy-title {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 5px !important;
  line-height: 1.3 !important;
}
#cyPopup .cy-sub {
  font-size: 13px !important;
  color: rgba(255, 255, 255, 0.45) !important;
  margin: 0 0 16px !important;
  line-height: 1 !important;
}
#cyPopup .cy-sub span {
  color: #1aa6b7 !important;
  font-weight: 500 !important;
}
#cyPopup .cy-divider {
  height: 1px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  margin: 0 !important;
}

/* ── BODY ── */
#cyPopup .cy-modal-body {
  padding: 18px 26px 26px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  background: transparent !important;
}

/* ── TWO-COLUMN ROW (desktop + tablet) ── */
#cyPopup .cy-field-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 13px !important;
}

/* ── FIELD GROUP ── */
#cyPopup .cy-field-group {
  display: flex !important;
  flex-direction: column !important;
  /* gap: 5px !important; */
  background: transparent !important;
  background-image: none !important;
}

/* ── LABELS ── */
#cyPopup .cy-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: rgba(255, 255, 255, 0.4) !important;
  margin: 0 !important;
  display: block !important;
}
#cyPopup .cy-optional {
  font-size: 10px !important;
  color: rgba(255, 255, 255, 0.25) !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ── ALL INPUTS ── */
#cyPopup .cy-modal input,
#cyPopup .cy-modal select,
#cyPopup .cy-modal textarea {
  width: 100% !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 8px !important;
  padding: 0 13px !important;
  font-size: 13px !important;
  color: #fff !important;
  outline: none !important;
  box-shadow: none !important;
  font-family: inherit !important;
  transition: border-color 0.2s, background 0.2s !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  position: static !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}
#cyPopup .cy-modal input,
#cyPopup .cy-modal select {
  height: 34px !important;
  line-height: 34px !important;
}
#cyPopup .cy-modal textarea {
  height: 54px !important;
  resize: none !important;
  line-height: 1 !important;
  padding: 11px 18px !important;
}
#cyPopup .cy-modal input::placeholder,
#cyPopup .cy-modal textarea::placeholder {
  color: rgba(255, 255, 255, 0.28) !important;
}
#cyPopup .cy-modal select {
  color: rgba(255, 255, 255, 0.6) !important;
  cursor: pointer !important;
}
#cyPopup .cy-modal select option {
  background: #0c1a44 !important;
  color: #fff !important;
}
#cyPopup .cy-modal input:focus,
#cyPopup .cy-modal select:focus,
#cyPopup .cy-modal textarea:focus {
  border-color: #1aa6b7 !important;
  background: rgba(26, 166, 183, 0.07) !important;
}

/* ── SUBMIT BUTTON ── */
#cyPopup .cy-submit-btn {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  padding: 13px 20px !important;
  background: #1aa6b7 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  letter-spacing: 0.3px !important;
  transition: background 0.2s !important;
  font-family: inherit !important;
  text-align: center !important;
  position: static !important;
  margin: 4px 0 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
  line-height: 1.4 !important;
}
#cyPopup .cy-submit-btn:hover {
  background: #158a99 !important;
}

/* ── SUCCESS STATE ── */
#cyPopup .cy-success {
  display: none;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 44px 26px !important;
  gap: 12px !important;
}
#cyPopup .cy-success.show {
  display: flex !important;
}
#cyPopup .cy-success-icon {
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: rgba(26, 166, 183, 0.15) !important;
  border: 2px solid #1aa6b7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
  color: #1aa6b7 !important;
}
#cyPopup .cy-success h3 {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
#cyPopup .cy-success p {
  color: rgba(255, 255, 255, 0.5) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* ============================================================
   RESPONSIVE BREAKPOINTS
   ============================================================ */

/* LARGE TABLET */
@media (max-width: 860px) {
  #cyPopup .cy-modal-wrap {
    max-width: 460px !important;
  }
}

/* TABLET — 2 columns still */
@media (max-width: 700px) {
  #cyPopup.cy-overlay {
    padding: 16px !important;
  }
  #cyPopup .cy-modal-wrap {
    max-width: 100% !important;
  }
  #cyPopup .cy-modal {
    max-height: 88vh !important;
  }
  #cyPopup .cy-modal-header {
    padding: 18px 20px 0 !important;
  }
  #cyPopup .cy-modal-body {
    padding: 16px 20px 22px !important;
    gap: 11px !important;
  }
}

/* MOBILE — stack to 1 col, slide up from bottom */
@media (max-width: 520px) {
  #cyPopup.cy-overlay {
    padding: 0 !important;
    align-items: flex-end !important;
  }
  #cyPopup .cy-modal-wrap {
    max-width: 100% !important;
    width: 100% !important;
  }
  #cyPopup .cy-modal {
    border-radius: 16px 16px 0 0 !important;
    max-height: 91vh !important;
  }
  #cyPopup .cy-field-row {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  #cyPopup .cy-modal-header {
    padding: 3px 18px 0 !important;
  }
  #cyPopup .cy-modal-body {
    padding: 2px 18px 24px !important;
    gap: 1px !important;
  }
  #cyPopup .cy-title {
    font-size: 18px !important;
  }
  #cyPopup .cy-modal input,
  #cyPopup .cy-modal select {
    height: 32px !important;
  }
  #cyPopup .cy-modal textarea {
    height: 60px !important;
  }
  #cyPopup .cy-close-btn {
    top: 12px !important;
    right: 14px !important;
  }
#cy-demo-btn {
        bottom: 193px !important;
        right: 14px !important;
        font-size: 11px !important;
        padding: 6px 8px !important;
    }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  #cyPopup .cy-modal {
    max-height: 100vh !important;
  }
  #cyPopup .cy-title {
    font-size: 16px !important;
  }
  #cyPopup .cy-modal-header {
    padding: 5px 16px 0 !important;
  }
  #cyPopup .cy-modal-body {
    padding: 0px 17px 17px !important;
    gap: 2px !important;
  }
  #cyPopup .cy-submit-btn {
    padding: 11px 16px !important;
    font-size: 13px !important;
  }
}

/* Wp */
.wa-float {
    position: fixed;
    bottom: 24px;
    left: 24px;
    z-index: 9999;
  }
  .wa-float a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #25D366;
    text-decoration: none;
    transition: transform 0.2s;
  }
  .wa-float a:hover {
    transform: scale(1.08);
    background: #1ebe5d;
  }
  .wa-float svg {
    width: 32px;
    height: 32px;
    fill: #fff;
  }

  @media (max-width: 520px) {
  .wa-float a {
    width: 42px;
    height: 43px;
  }

  .wa-float svg {
    height: 29px
  }

  }