/*

TemplateMo 569 Edu Meeting

https://templatemo.com/tm-569-edu-meeting

*/

/* ---------------------------------------------
Table of contents
------------------------------------------------
01. font & reset css
02. reset
03. global styles
04. header
05. banner
06. features
07. testimonials
08. contact
09. footer
10. preloader
11. search
12. portfolio

--------------------------------------------- */
/* 
---------------------------------------------
Imperial Emerald Palette
--------------------------------------------- 
*/
:root {
  --emerald-deep: #085D36;
  --emerald-royal: #004B3B;
  --emerald-main: #097969;
  --emerald-light: #50C878;
  --emerald-accent: #187C19;
  --olive-drab: #6B8E23;
  --royal-crimson: #940128;
  --rich-gold: #D4AF37;

  --primary-color: var(--emerald-main);
  --secondary-color: var(--emerald-light);
  --accent-color: var(--royal-crimson);
  --bg-dark: #021a11;
  --bg-darker: #01100a;
  --text-white: #f0fff4;

  /* Gradients */
  --grad-emerald: linear-gradient(135deg, var(--emerald-deep), var(--emerald-royal));
  --grad-pine: linear-gradient(135deg, var(--emerald-main), var(--emerald-royal));
  --grad-royal: linear-gradient(135deg, var(--emerald-royal), var(--emerald-accent));
  --grad-crimson: linear-gradient(135deg, var(--royal-crimson), #b00130);
  --grad-royal-emerald: linear-gradient(135deg, var(--emerald-main), var(--royal-crimson));
}

/* 
---------------------------------------------
font & reset css
--------------------------------------------- 
*/
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap");

@font-face {
  font-family: 'Fonarto';
  src: url('../fonts/Fonarto.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Isidora';
  src: url('../fonts/Isidora.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Gibed';
  src: url('../fonts/gibed.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Quizlo';
  src: url('../fonts/Quizlo.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

/* Font Variables */
:root {
  --font-nature: 'Isidora', sans-serif;
  /* Body Text (Replaces Manrope/Nature) */
  --font-gibed: 'Gibed', sans-serif;
  /* Headings */
  --font-quizlo: 'Quizlo', sans-serif;
  /* UI Elements */
  --font-fonarto: 'Fonarto', sans-serif;
  /* Accents/Subtitles */
}

/* 
---------------------------------------------
reset
--------------------------------------------- 
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
div pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
figure,
header,
nav,
section,
article,
aside,
footer,
figcaption {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

ul,
li {
  padding: 0;
  margin: 0;
  list-style: none;
}

header,
nav,
section,
article,
aside,
footer,
hgroup {
  display: block;
}

* {
  box-sizing: border-box;
}

html,
body {
  font-family: 'Poppins', sans-serif;
  font-weight: 400;
  background-color: var(--bg-dark);
  color: var(--text-white);
  font-size: 16px;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  text-decoration: none !important;
  color: var(--primary-color);
}

a:hover {
  color: var(--secondary-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0px;
  margin-bottom: 0px;
}

ul {
  margin-bottom: 0px;
}

p {
  font-size: 14px;
  line-height: 25px;
  color: #2a2a2a;
}

img {
  width: 100%;
  overflow: hidden;
}

/* 
---------------------------------------------
global styles
--------------------------------------------- 
*/
html,
body {
  background: var(--bg-dark);
  font-family: var(--font-nature);
}

::selection {
  background: var(--primary-color);
  color: var(--text-white);
}

::-moz-selection {
  background: var(--primary-color);
  color: var(--text-white);
}

@media (max-width: 991px) {

  html,
  body {
    overflow-x: hidden;
  }

  .mobile-top-fix {
    margin-top: 30px;
    margin-bottom: 0px;
  }

  .mobile-bottom-fix {
    margin-bottom: 30px;
  }

  .mobile-bottom-fix-big {
    margin-bottom: 60px;
  }
}

.main-button-red a {
  font-size: 13px;
  color: var(--text-white);
  background: var(--grad-crimson);
  padding: 12px 30px;
  display: inline-block;
  border-radius: 22px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all .3s;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.main-button-red a:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
  opacity: 1;
}

.main-button-yellow a {
  font-size: 13px;
  color: var(--text-white);
  background: var(--grad-pine);
  padding: 12px 30px;
  display: inline-block;
  border-radius: 22px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all .3s;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.main-button-yellow a:hover {
  background: var(--grad-pine);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
  opacity: 1;
}

.section-heading h2 {
  line-height: 40px;
  margin-top: 0px;
  margin-bottom: 50px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(250, 250, 250, 0.15);
  font-size: 22px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
}


/* 
---------------------------------------------
header
--------------------------------------------- 
*/

.sub-header {
  background-color: #1f272b;
  position: relative;
  z-index: 1111;
}

.sub-header .left-content p {
  color: #fff;
  padding: 8px 0px;
  font-size: 13px;
}

.sub-header .right-icons {
  text-align: right;
  padding: 8px 0px;
}

.sub-header .right-icons ul li {
  display: inline-block;
  margin-left: 15px;
}

.sub-header .right-icons ul li a {
  color: #fff;
  font-size: 14px;
  transition: all .3s;
}

.sub-header .right-icons ul li a:hover {
  color: var(--royal-crimson);
}

.sub-header .left-content p em {
  font-style: normal;
  color: var(--royal-crimson);
}

.background-header {
  background-color: rgba(2, 26, 17, 0.5) !important;
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
  height: 80px !important;
  position: fixed !important;
  top: 0 !important;
  left: 0;
  right: 0;
  box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.3) !important;
}

.background-header .main-nav .nav li a {
  color: #1e1e1e !important;
  text-shadow: none !important;
}

.background-header .logo .title,
.background-header .logo .tagline,
.background-header .main-nav .nav li a {
  color: var(--text-white) !important;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5) !important;
}

.background-header .main-nav .nav li:hover a {
  color: var(--royal-crimson) !important;
}

.background-header .nav li a.active {
  color: var(--royal-crimson) !important;
}

.header-area {
  background-color: rgba(2, 26, 17, 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  z-index: 100;
  -webkit-transition: all .5s ease 0s;
  -moz-transition: all .5s ease 0s;
  -o-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
}

.header-area .main-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 80px;
  background: transparent;
}

.header-area .main-nav .logo {
  display: flex;
  align-items: center;
  color: #fff;
  float: left;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.header-area .main-nav .logo img {
  width: 39px;
  height: auto;
  margin-right: 15px;
}

.header-area .main-nav .logo .logo-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.header-area .main-nav .logo .logo-text .title {
  font-size: 24px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 1;
  text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.6), 0 0 10px rgba(0, 0, 0, 0.2);
}

.header-area .main-nav .logo .logo-text .tagline {
  font-size: 11px;
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0.5px;
  line-height: 1.2;
  margin-top: 2px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.background-header .main-nav .logo {
  line-height: 80px;
}

.background-header .nav {
  margin-top: 0px !important;
}

.header-area .main-nav .nav {
  display: flex;
  margin-top: 0px;
  margin-right: 0px;
  background-color: transparent;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  position: relative;
  z-index: 999;
}

.header-area .main-nav .nav li {
  padding-left: 15px;
  padding-right: 15px;
}

.header-area .main-nav .nav li:last-child {
  padding-right: 0px;
}

.header-area .main-nav .nav li a {
  display: block;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  color: #fff;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  height: 40px;
  line-height: 40px;
  border: transparent;
  letter-spacing: 1.2px;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5), 0 0 8px rgba(0, 0, 0, 0.2);
}

.header-area .main-nav .nav li:hover a,
.header-area .main-nav .nav li a.active {
  color: var(--royal-crimson) !important;
  text-shadow: 2px 2px 8px rgba(148, 1, 40, 0.5), 0 0 12px rgba(0, 0, 0, 0.3);
}

.background-header .main-nav .nav li:hover a,
.background-header .main-nav .nav li a.active {
  color: var(--royal-crimson) !important;
  text-shadow: 1px 1px 4px rgba(148, 1, 40, 0.3);
  opacity: 1;
}

.header-area .main-nav .nav li.has-sub {
  position: relative;
  padding-right: 15px;
}


.header-area .main-nav .nav li.has-sub:after {
  font-family: FontAwesome;
  content: "\f107";
  font-size: 12px;
  color: #fff !important;
  position: absolute;
  right: 5px;
  top: 10px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.background-header .main-nav .nav li.has-sub:after {
  color: #1e1e1e !important;
  text-shadow: none !important;
}

.header-area .main-nav .nav li.has-sub ul.sub-menu {
  position: absolute;
  width: 200px;
  box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.06);
  overflow: hidden;
  top: 40px;
  opacity: 0;
  transition: all .3s;
  transform: translateY(+2em);
  visibility: hidden;
  z-index: -1;
}

.header-area .main-nav .nav li.has-sub ul.sub-menu li {
  margin-left: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.header-area .main-nav .nav li.has-sub ul.sub-menu li a {
  opacity: 1;
  display: block;
  background: var(--bg-darker);
  color: var(--text-white) !important;
  padding-left: 20px;
  height: 40px;
  line-height: 40px;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  position: relative;
  font-size: 13px;
  font-weight: 400;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.header-area .main-nav .nav li.has-sub ul li a:hover {
  background: var(--emerald-royal);
  color: var(--text-white) !important;
  padding-left: 25px;
}

.header-area .main-nav .nav li.has-sub ul li a:hover:before {
  width: 3px;
}

.header-area .main-nav .nav li.has-sub:hover ul.sub-menu {
  visibility: visible;
  opacity: 1;
  z-index: 1;
  transform: translateY(0%);
  transition-delay: 0s, 0s, 0.3s;
}

.header-area .main-nav .menu-trigger {
  cursor: pointer;
  display: block;
  position: absolute;
  top: 20px;
  width: 32px;
  height: 40px;
  text-indent: -9999em;
  z-index: 99;
  right: 40px;
  display: none;
}

.background-header .main-nav .menu-trigger {
  top: 20px;
}

.header-area .main-nav .menu-trigger span,
.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #1e1e1e;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
}

.background-header .main-nav .menu-trigger span,
.background-header .main-nav .menu-trigger span:before,
.background-header .main-nav .menu-trigger span:after {
  background-color: #1e1e1e;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #1e1e1e;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
  width: 75%;
}

.background-header .main-nav .menu-trigger span:before,
.background-header .main-nav .menu-trigger span:after {
  background-color: #1e1e1e;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  content: "";
}

.header-area .main-nav .menu-trigger span {
  top: 16px;
}

.header-area .main-nav .menu-trigger span:before {
  -moz-transform-origin: 33% 100%;
  -ms-transform-origin: 33% 100%;
  -webkit-transform-origin: 33% 100%;
  transform-origin: 33% 100%;
  top: -10px;
  z-index: 10;
}

.header-area .main-nav .menu-trigger span:after {
  -moz-transform-origin: 33% 0;
  -ms-transform-origin: 33% 0;
  -webkit-transform-origin: 33% 0;
  transform-origin: 33% 0;
  top: 10px;
}

.header-area .main-nav .menu-trigger.active span,
.header-area .main-nav .menu-trigger.active span:before,
.header-area .main-nav .menu-trigger.active span:after {
  background-color: transparent;
  outline: none;
  font-family: var(--font-quizlo);
}

.header-area .main-nav .menu-trigger.active span:before {
  -moz-transform: translateY(6px) translateX(1px) rotate(45deg);
  -ms-transform: translateY(6px) translateX(1px) rotate(45deg);
  -webkit-transform: translateY(6px) translateX(1px) rotate(45deg);
  transform: translateY(6px) translateX(1px) rotate(45deg);
  background-color: #1e1e1e;
}

.background-header .main-nav .menu-trigger.active span:before {
  background-color: #1e1e1e;
}

.header-area .main-nav .menu-trigger.active span:after {
  -moz-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -ms-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -webkit-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  transform: translateY(-6px) translateX(1px) rotate(-45deg);
  background-color: #1e1e1e;
}

.background-header .main-nav .menu-trigger.active span:after {
  background-color: #1e1e1e;
}

.header-area.header-sticky {
  min-height: 40px;
}

.header-area .nav {
  margin-top: 0px;
}

.header-area.header-sticky .nav li a.active {
  color: var(--royal-crimson);
}

@media (max-width: 1200px) {
  .header-area .main-nav .nav li {
    padding-left: 7px;
    padding-right: 7px;
  }

  .header-area .main-nav:before {
    display: none;
  }
}

@media (max-width: 1150px) {
  .header-area .main-nav .logo {
    color: #1e1e1e;
  }

  .header-area.header-sticky .nav li a:hover,
  .header-area.header-sticky .nav li a.active {
    color: var(--royal-crimson) !important;
    opacity: 1;
  }

  .header-area.header-sticky .nav li.search-icon a {
    width: 100%;
  }

  .header-area {
    background-color: #f7f7f7;
    padding: 0px 15px;
    height: 100px;
    box-shadow: none;
    text-align: center;
  }

  .header-area .container {
    padding: 0px;
  }

  .header-area .logo {
    margin-left: 30px;
  }

  .header-area .menu-trigger {
    display: block !important;
  }

  .header-area .main-nav {
    overflow: hidden;
  }

  .header-area .main-nav .nav {
    float: none;
    width: 100%;
    display: none;
    -webkit-transition: all 0s ease 0s;
    -moz-transition: all 0s ease 0s;
    -o-transition: all 0s ease 0s;
    transition: all 0s ease 0s;
    margin-left: 0px;
  }

  .header-area .main-nav .nav li:first-child {
    border-top: 1px solid #eee;
  }

  .header-area.header-sticky .nav {
    margin-top: 100px !important;
  }

  .header-area .main-nav .nav li {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #eee;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .header-area .main-nav .nav li a {
    height: 50px !important;
    line-height: 50px !important;
    padding: 0px !important;
    border: none !important;
    background: #f7f7f7 !important;
    color: #191a20 !important;
  }

  .header-area .main-nav .nav li a:hover {
    background: #eee !important;
    color: var(--royal-crimson) !important;
  }

  .header-area .main-nav .nav li.has-sub ul.sub-menu {
    position: relative;
    visibility: inherit;
    opacity: 1;
    z-index: 1;
    transform: translateY(0%);
    top: 0px;
    width: 100%;
    box-shadow: none;
    height: 0px;
    transition: all 0s;
  }

  .header-area .main-nav .nav li.submenu ul li a {
    font-size: 12px;
    font-weight: 400;
  }

  .header-area .main-nav .nav li.submenu ul li a:hover:before {
    width: 0px;
  }

  .header-area .main-nav .nav li.has-sub ul.sub-menu {
    height: auto;
  }

  .header-area .main-nav .nav li.has-sub:after {
    color: #3B566E;
    right: 30px;
    font-size: 14px;
    top: 15px;
  }

  .header-area .main-nav .nav li.submenu:hover ul,
  .header-area .main-nav .nav li.submenu:focus ul {
    height: 0px;
  }
}

@media (min-width: 1150px) {
  .header-area .main-nav .nav {
    display: flex !important;
  }
}


/* 
---------------------------------------------
banner
--------------------------------------------- 
*/

.main-banner {
  position: relative;
  max-height: 100%;
  overflow: hidden;
  margin-bottom: -7px;
}

#bg-video {
  min-width: 100%;
  min-height: 100vh;
  max-width: 100%;
  max-height: 100vh;
  object-fit: cover;
  z-index: -1;
}

#bg-video::-webkit-media-controls {
  display: none !important;
}

.video-overlay {
  position: absolute;
  background-color: rgba(31, 39, 43, 0.75);
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}

.main-banner .caption {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.main-banner .caption h6 {
  margin-top: 0px;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  color: #fff;
  letter-spacing: 1px;
}

.main-banner .caption h2 {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 36px;
  text-transform: uppercase;
  font-weight: 800;
  color: #fff;
  letter-spacing: 1px;
}

.main-banner .caption h2 em {
  font-style: normal;
  color: var(--primary-color);
  font-weight: 900;
}

.main-banner .caption p {
  color: #fff;
  font-size: 14px;
  max-width: 570px;
  text-align: justify;
}

.main-banner .caption .main-button-red {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {

  .main-banner .caption h6 {
    font-weight: 500;
  }

  .main-banner .caption h2 {
    font-size: 36px;
  }

}


/*
---------------------------------------------
services
---------------------------------------------
*/

.services {
  margin-top: -135px;
  position: absolute;
  width: 100%;
}

.services .item {
  background-image: none;
  /* Removed background image for solid colors */
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  border-radius: 20px;
  text-align: center;
  color: #fff;
  padding: 40px;
  height: 100%;
}

.item-pink {
  background: var(--grad-emerald) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.item-dark-green {
  background: var(--grad-emerald) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.item-bright-green {
  background: var(--grad-pine) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.services .item .icon {
  max-width: 60px;
  margin: 0 auto;
}

.services .item h4 {
  margin-top: 25px;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 600;
}

.services .item p {
  color: #fff;
  font-size: 13px;
}

.services .owl-nav {
  display: inline-block !important;
  text-align: center;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-25px);
}

.services .owl-nav .owl-prev {
  margin-right: 10px;
  outline: none;
  position: absolute;
  left: -80px;
}

.services .owl-nav .owl-prev span,
.services .owl-nav .owl-next span {
  opacity: 0;
}

.services .owl-nav .owl-prev:before {
  display: inline-block;
  font-family: 'FontAwesome';
  color: #1e1e1e;
  font-size: 25px;
  font-weight: 700;
  content: '\f104';
  background-color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
}

.services .owl-nav .owl-prev {
  opacity: 1;
  transition: all .5s;
}

.services .owl-nav .owl-prev:hover {
  opacity: 0.9;
}

.services .owl-nav .owl-next {
  opacity: 1;
  transition: all .5s;
}

.services .owl-nav .owl-next:hover {
  opacity: 0.9;
}

.services .owl-nav .owl-next {
  margin-left: 10px;
  outline: none;
  position: absolute;
  right: -85px;
}

.services .owl-nav .owl-next:before {
  display: inline-block;
  font-family: 'FontAwesome';
  color: #1e1e1e;
  font-size: 25px;
  font-weight: 700;
  content: '\f105';
  background-color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
}


/*
---------------------------------------------
upcoming meetings
---------------------------------------------
*/

section.upcoming-meetings {
  background-image: url(../images/meetings-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 230px;
  padding-bottom: 110px;
}

section.upcoming-meetings .section-heading {
  text-align: center;
}

section.upcoming-meetings .categories {
  background-color: var(--bg-darker);
  border-radius: 20px;
  padding: 40px;
  margin-right: 45px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

section.upcoming-meetings .categories h4 {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-white);
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

section.upcoming-meetings .categories ul li {
  display: inline-block;
  margin-bottom: 15px;
}

section.upcoming-meetings .categories ul li a {
  font-size: 15px;
  color: var(--text-white);
  font-weight: 500;
  transition: all .3s;
}

section.upcoming-meetings .categories ul li a:hover {
  color: var(--primary-color);
}

section.upcoming-meetings .categories .main-button-red {
  border-top: 1px solid #eee;
  padding-top: 30px;
  margin-top: 15px;
}

section.upcoming-meetings .categories .main-button-red a {
  width: 100%;
  text-align: center;
}

.meeting-item {
  margin-bottom: 30px;
}

.meeting-item .thumb {
  position: relative;
}

.meeting-item .thumb img {
  border-top-right-radius: 20px;
  border-top-left-radius: 20px;
}

.meeting-item .thumb .price {
  position: absolute;
  left: 20px;
  top: 20px;
}

.meeting-item .thumb .price span {
  font-size: 16px;
  color: #1f272b;
  font-weight: 600;
  background-color: rgba(250, 250, 250, 0.9);
  padding: 7px 12px;
  border-radius: 10px;
}

.meeting-item .down-content {
  background-color: var(--bg-darker);
  padding: 30px;
  border-bottom-right-radius: 20px;
  border-bottom-left-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-top: none;
}

.meeting-item .down-content .date {
  float: left;
  text-align: center;
  display: inline-block;
  margin-right: 20px;
}

.meeting-item .down-content .date h6 {
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--primary-color);
}

.meeting-item .down-content .date span {
  display: block;
  color: var(--text-white);
  font-size: 22px;
  margin-top: 7px;
}

.meeting-item .down-content h4 {
  font-size: 18px;
  color: var(--text-white);
  font-weight: 600;
  display: block;
  margin-bottom: 10px;
  text-align: center;
}

.meeting-item .down-content p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 14px;
  text-align: center;
  margin-left: 0;
}



/*
---------------------------------------------
apply now
---------------------------------------------
*/

section.apply-now {
  background-image: url(../images/apply-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 140px 0px;
}

section.apply-now .item {
  background-color: rgba(250, 250, 250, 0.15);
  padding: 40px;
  margin-bottom: 30px;
}

section.apply-now .item h3 {
  color: #fff;
  text-transform: uppercase;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
}

section.apply-now .item p {
  color: #fff;
  margin-bottom: 20px;
}

.accordions {
  border-radius: 20px;
  padding: 40px;
  background-color: #fff;
  margin-left: 45px;
}

.accordions .accordion {
  border-bottom: 1px solid #eee;
}

.accordions .last-accordion {
  border-bottom: none;
}

.accordion-head {
  padding: 20px;
  font-size: 18px;
  font-weight: 700;
  color: #1f272b;
  cursor: pointer;
  transition: color 200ms ease-in-out;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 768px) {
  .accordion-head {
    padding: 1rem;
    font-size: 1.2rem;
  }
}

.accordion-head .icon {
  float: right;
  transition: transform 200ms ease-in-out;
}

.accordion-head.is-open {
  color: var(--primary-color);
  border-bottom: none;
}

.accordion-head.is-open .icon {
  transform: rotate(45deg);
}

.accordion-body {
  overflow: hidden;
  height: 0;
  transition: height 300ms ease-in-out;
  border-bottom: 1px solid #fff;
}

.accordion-body>.content {
  padding: 20px;
  padding-top: 0;
}


/* 
---------------------------------------------
our-clients
--------------------------------------------- 
*/

section.our-clients {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #ececec;
}

section.our-clients .section-heading {
  text-align: center;
  margin-bottom: 30px;
}

section.our-clients .section-heading h2 {
  color: #1f272b;
}

/* Logo items with alternating backgrounds and original logo colors */
.owl-clients-item .item {
  text-align: center;
  padding: 20px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  margin: 5px;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.05);
  transition: all 0.3s;
}

/* Alternating background colors */
.owl-clients-item .owl-item:nth-child(odd) .item {
  background: var(--grad-pine);
}

.owl-clients-item .owl-item:nth-child(even) .item {
  background: var(--grad-emerald);
}

.owl-clients-item .item img {
  max-width: 100% !important;
  height: auto;
  max-height: 80px;
  width: auto !important;
  display: inline-block !important;
  /* Original colors maintained */
  filter: none;
  opacity: 1;
  transition: all 0.3s;
}

.owl-clients-item .item:hover {
  transform: translateY(-5px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.1);
}

/* 
---------------------------------------------
courses
--------------------------------------------- 
*/

section.our-courses {
  background-image: url(../images/meetings-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 60px;
  padding-bottom: 80px;
}

section.our-courses .section-heading {
  text-align: center;
  margin-bottom: 40px;
}

.coming-soon-container {
  text-align: center;
  padding: 60px 20px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.coming-soon-container h3 {
  color: #fff;
  font-size: 32px;
  margin-top: 25px;
  font-weight: 700;
}

.coming-soon-container p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 18px;
  margin-top: 10px;
}

.loader {
  width: 60px;
  height: 60px;
  border: 5px solid rgba(255, 255, 255, 0.1);
  border-bottom-color: var(--primary-color);
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.our-courses .item .down-content {
  background-color: var(--bg-darker);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.our-courses .item .down-content h4 {
  padding: 25px;
  font-size: 18px;
  color: var(--text-white);
  text-align: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.our-courses .item .down-content .info {
  padding: 25px;
}

.our-courses .item .down-content .info ul li {
  display: inline-block;
  margin-right: 1px;
}

.our-courses .item .down-content .info ul li i {
  color: var(--primary-color);
  font-size: 14px;
}

.our-courses .item .down-content .info span {
  color: var(--secondary-color);
  font-size: 15px;
  font-weight: 600;
  text-align: right;
  display: inline-block;
  width: 100%;
}

.our-courses .owl-nav {
  text-align: center;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-45px);
}

.our-courses .owl-dots {
  display: inline-block;
  text-align: center;
  width: 100%;
  margin-top: 40px;
}

.our-courses .owl-dots .owl-dot {
  transition: all .5s;
  width: 7px;
  height: 7px;
  background-color: #fff;
  margin: 0px 5px;
  border-radius: 50%;
  outline: none;
}

.our-courses .owl-dots .active {
  width: 24px;
  height: 8px;
  border-radius: 4px;
}

.our-courses .owl-nav .owl-prev {
  margin-right: 10px;
  outline: none;
  position: absolute;
  left: -80px;
}

.our-courses .owl-nav .owl-prev span,
.our-courses .owl-nav .owl-next span {
  opacity: 0;
}

.our-courses .owl-nav .owl-prev:before {
  display: inline-block;
  font-family: 'FontAwesome';
  color: #1e1e1e;
  font-size: 25px;
  font-weight: 700;
  content: '\f104';
  background-color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
}

.our-courses .owl-nav .owl-prev {
  opacity: 1;
  transition: all .5s;
}

.our-courses .owl-nav .owl-prev:hover {
  opacity: 0.9;
}

.our-courses .owl-nav .owl-next {
  opacity: 1;
  transition: all .5s;
}

.our-courses .owl-nav .owl-next:hover {
  opacity: 0.9;
}

.our-courses .owl-nav .owl-next {
  margin-left: 10px;
  outline: none;
  position: absolute;
  right: -85px;
}

.our-courses .owl-nav .owl-next:before {
  display: inline-block;
  font-family: 'FontAwesome';
  color: #1e1e1e;
  font-size: 25px;
  font-weight: 700;
  content: '\f105';
  background-color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
}


/*
---------------------------------------------
our facts
---------------------------------------------
*/

section.our-facts {
  background-image: url(../images/facts-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 100px 0px 100px 0px;
}

section.our-facts .section-heading h2 {
  color: #fff;
  margin-bottom: 50px;
  text-align: center;
}

.review-item {
  background-color: rgba(250, 250, 250, 0.1);
  border-radius: 20px;
  padding: 30px;
  margin-bottom: 30px;
  backdrop-filter: blur(5px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: all 0.3s;
  height: 100%;
}

.review-item:hover {
  background-color: rgba(250, 250, 250, 0.2);
  transform: translateY(-5px);
}

.review-item .user-info {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.review-item .user-img img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-right: 15px;
  object-fit: cover;
  border: 2px solid var(--emerald-main);
}

.review-item .user-details h6 {
  color: #fff;
  font-size: 18px;
  margin-bottom: 0px;
}

.review-item .user-details span {
  color: var(--emerald-light);
  font-size: 14px;
  font-weight: 500;
}

.review-item p {
  color: rgba(255, 255, 255, 0.9);
  font-style: italic;
  font-size: 15px;
  line-height: 26px;
  text-align: justify;
}



/* 
---------------------------------------------
contact us
--------------------------------------------- 
*/

section.contact-us {
  background-image: url(../images/meetings-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 30px 0px 0px 0px;
}

section.contact-us #contact {
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 20px;
  padding: 40px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

section.contact-us #contact h2 {
  text-transform: uppercase;
  color: #085D36;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 40px;
  padding-bottom: 20px;
  font-size: 22px;
  font-weight: 700;
}

section.contact-us #contact input {
  width: 100%;
  height: 45px;
  border-radius: 12px;
  background-color: #f7f9fb;
  outline: none;
  border: 1px solid #d1d9e6;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  padding: 0px 20px;
  margin-bottom: 25px;
  transition: all 0.3s;
}

section.contact-us #contact input:focus {
  background-color: #fff;
  border-color: #187C19;
  box-shadow: 0 0 8px rgba(24, 124, 25, 0.2);
}

section.contact-us #contact textarea {
  width: 100%;
  min-height: 140px;
  max-height: 180px;
  border-radius: 12px;
  background-color: #f7f9fb;
  outline: none;
  border: 1px solid #d1d9e6;
  box-shadow: none;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  padding: 15px 20px;
  margin-bottom: 25px;
  transition: all 0.3s;
}

section.contact-us #contact textarea:focus {
  background-color: #fff;
  border-color: #187C19;
  box-shadow: 0 0 8px rgba(24, 124, 25, 0.2);
}

section.contact-us #contact button {
  font-size: 13px;
  color: var(--text-white);
  background: var(--grad-pine);
  padding: 12px 30px;
  display: inline-block;
  border-radius: 22px;
  font-weight: 600;
  text-transform: uppercase;
  transition: all 0.3s;
  border: none;
  outline: none;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

section.contact-us #contact button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
}

section.contact-us .right-info {
  background: var(--grad-emerald);
  border-radius: 20px;
  padding: 25px 30px;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

@media (max-width: 1200px) {
  section.contact-us .right-info {
    padding: 20px;
  }
}

section.contact-us .right-info ul li {
  display: block;
  border-bottom: 1px solid rgba(250, 250, 250, 0.15);
  margin-bottom: 20px;
  padding-bottom: 20px;
}

section.contact-us .right-info ul li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

section.contact-us .right-info ul li h6 {
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 10px;
}

section.contact-us .right-info ul li span {
  display: block;
  font-size: 14px;
  color: #fff;
  font-weight: 700;
  word-break: break-all;
  overflow-wrap: break-word;
}

section.contact-us .right-info ul li span a {
  color: #fff !important;
  word-break: break-all;
  overflow-wrap: break-word;
}

.footer {
  text-align: center;
  padding: 50px 0px 30px 0px;
  border-top: 1px solid rgba(250, 250, 250, 0.15);
  background: transparent;
}

.footer p {
  text-transform: uppercase;
  font-size: 14px;
  color: #fff;
}

.footer p a {
  color: var(--primary-color);
}


/*
---------------------------------------------
heading page
---------------------------------------------
*/

section.heading-page {
  background-image: url(../images/heading-bg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 230px;
  padding-bottom: 110px;
  text-align: center;
}

section.heading-page h6 {
  margin-top: 0px;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  color: #fff;
  letter-spacing: 1px;
}

section.heading-page h2 {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 36px;
  text-transform: uppercase;
  font-weight: 800;
  color: #fff;
  letter-spacing: 1px;
}


/*
---------------------------------------------
upcoming meetings page
---------------------------------------------
*/

section.meetings-page {
  background-image: url(../images/meetings-page-bg.jpg);
  background-position: center center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 140px;
  padding-bottom: 0px;
}

section.meetings-page .filters {
  text-align: center;
  margin-bottom: 60px;
}

section.meetings-page .filters li {
  font-size: 13px;
  color: var(--text-white);
  background-color: var(--bg-darker);
  padding: 11px 30px;
  display: inline-block;
  border-radius: 22px;
  font-weight: 600;
  text-transform: uppercase;
  transition: all .3s;
  cursor: pointer;
  margin: 0px 3px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

section.meetings-page .filters ul li.active,
section.meetings-page .filters ul li:hover {
  background: var(--grad-crimson);
  color: var(--text-white);
  border-color: transparent;
}

section.meetings-page .pagination {
  text-align: center;
  width: 100%;
  margin-top: 30px;
  display: inline-block;
}

section.meetings-page .pagination ul li {
  display: inline-block;
}

section.meetings-page .pagination ul li a {
  width: 40px;
  height: 40px;
  background-color: var(--bg-darker);
  border-radius: 10px;
  color: var(--text-white);
  display: inline-block;
  text-align: center;
  line-height: 40px;
  font-weight: 600;
  font-size: 15px;
  transition: all .3s;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

section.meetings-page .main-button-red {
  text-align: center;
}

section.meetings-page .main-button-red a {
  padding: 12px 60px;
  text-align: center;
  margin-top: 30px;
}

section.meetings-page .pagination ul li.active a,
section.meetings-page .pagination ul li a:hover {
  background: var(--grad-crimson);
  color: var(--text-white);
  border-color: transparent;
}

.meeting-single-item .thumb {
  position: relative;
}

.meeting-single-item .thumb img {
  border-top-right-radius: 20px;
  border-top-left-radius: 20px;
}

.meeting-single-item .thumb .price {
  position: absolute;
  left: 20px;
  top: 20px;
}

.meeting-single-item .thumb .price span {
  font-size: 16px;
  color: #1f272b;
  font-weight: 600;
  background-color: rgba(250, 250, 250, 0.9);
  padding: 7px 12px;
  border-radius: 10px;
}

.meeting-single-item .down-content {
  background-color: var(--bg-darker);
  padding: 40px;
  border-bottom-right-radius: 20px;
  border-bottom-left-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-top: none;
}

.meeting-single-item .thumb .date {
  position: absolute;
  background-color: rgba(250, 250, 250, 0.9);
  width: 80px;
  height: 80px;
  text-align: center;
  padding: 15px 0px;
  border-radius: 10px;
  right: 20px;
  top: 20px;
}

.meeting-single-item .thumb .date h6 {
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--primary-color);
}

.meeting-single-item .thumb .date span {
  display: block;
  color: var(--bg-dark);
  font-size: 22px;
  margin-top: 7px;
}

.meeting-single-item .down-content h4 {
  font-size: 22px;
  color: var(--text-white);
  font-weight: 600;
  display: inline-block;
  margin-bottom: 15px;
}

.meeting-single-item .down-content h5 {
  font-size: 18px;
  color: var(--text-white);
  font-weight: 700;
  display: inline-block;
  margin-bottom: 15px;
}

.meeting-single-item .down-content p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 14px;
}

.meeting-single-item .down-content p.description {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.meeting-single-item .down-content .share {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid #eee;
}

.meeting-single-item .down-content .share h5 {
  float: left;
  margin-right: 10px;
  margin-bottom: 0px;
}

.meeting-single-item .down-content .share ul li {
  display: inline;
}

.meeting-single-item .down-content .share ul li a {
  font-size: 14px;
  color: #1f272b;
  transition: all .3s;
}

.meeting-single-item .down-content .share ul li a:hover {
  color: #00a651;
}

/* Meeting item column */
.templatemo-item-col {
  width: 31%;
}

@media (max-width: 992px) {
  .templatemo-item-col {
    width: 45%;
  }
}

@media (max-width: 767px) {
  .templatemo-item-col {
    width: 100%;
  }
}

/* 
---------------------------------------------
responsive
--------------------------------------------- 
*/

@media (max-width: 1300px) {
  .services .owl-nav .owl-next {
    right: -30px;
  }

  .services .owl-nav .owl-prev {
    left: -25px;
  }

  .our-courses .owl-nav .owl-next {
    right: -30px;
  }

  .our-courses .owl-nav .owl-prev {
    left: -25px;
  }
}

@media (max-width: 1200px) {
  .services .owl-nav .owl-next {
    right: -70px;
  }

  .services .owl-nav .owl-prev {
    left: -65px;
  }

  .our-courses .owl-nav .owl-next {
    right: -70px;
  }

  .our-courses .owl-nav .owl-prev {
    left: -65px;
  }
}

@media (max-width: 1085px) {
  .services .owl-nav .owl-next {
    right: -30px;
  }

  .services .owl-nav .owl-prev {
    left: -25px;
  }

  .our-courses .owl-nav .owl-next {
    right: -30px;
  }

  .our-courses .owl-nav .owl-prev {
    left: -25px;
  }
}

@media (max-width: 1005px) {
  .services .owl-nav .owl-next {
    display: none;
  }

  .services .owl-nav .owl-prev {
    display: none;
  }

  .our-courses .owl-nav .owl-next {
    display: none;
  }

  .our-courses .owl-nav .owl-prev {
    display: none;
  }
}

@media (max-width: 992px) {

  .main-banner .caption {
    top: 60%;
  }

  .main-banner .caption h2 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 22px;
  }

  .main-banner .caption .main-button-red {
    margin-top: 15px;
  }

  .services {
    margin-top: 30px;
    position: relative;
  }

  section.upcoming-meetings {
    padding-top: 80px;
  }

  section.upcoming-meetings .categories {
    margin-right: 0px;
    margin-bottom: 30px;
  }

  .accordions {
    margin-left: 0px;
  }

  .new-students {
    margin-top: 15px;
  }

  section.our-facts .video {
    margin-left: 0px;
    margin-top: 15px;
  }

  section.contact-us #contact {
    margin-bottom: 30px;
  }

}

@media (max-width: 1150px) {

  .sub-header .left-content p {
    display: none;
  }

  .sub-header .right-icons {
    text-align: center;
  }

  .main-nav .nav .sub-menu {
    display: none;
  }

  .header-area .main-nav .nav li ul.sub-menu li a {
    color: #1f272b;
  }

  .services {
    margin-top: 30px;
    position: relative;
  }

  section.upcoming-meetings {
    padding-top: 60px;
  }

}

/* 
---------------------------------------------
team page
--------------------------------------------- 
*/

.team-section {
  padding: 100px 0px;
}

.team-intro h3 {
  font-size: 28px;
  font-weight: 700;
  color: var(--text-white);
}

.team-intro p {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.7);
  max-width: 800px;
  margin: 0 auto;
}

.team-member-card {
  background-color: var(--bg-darker);
  border-radius: 20px;
  padding: 40px;
  margin-bottom: 30px;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.4);
  transition: all 0.3s;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.team-member-card:hover {
  transform: translateY(-10px);
  box-shadow: 0px 15px 40px rgba(0, 0, 0, 0.1);
}

.team-img-container {
  display: inline-block;
  margin-bottom: 20px;
}

.team-img-container img {
  width: 180px;
  height: 180px;
  border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
  object-fit: cover;
  border: 5px solid var(--bg-darker);
  box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.3);
  transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.team-img-container:hover img {
  border-radius: 40% 60% 70% 30% / 40% 70% 30% 60%;
  transform: scale(1.05);
  box-shadow: 0px 15px 35px rgba(0, 0, 0, 0.4);
}

.team-info h4 {
  font-size: 24px;
  font-weight: 700;
  color: var(--text-white);
  margin-bottom: 5px;
}

.team-info .role {
  display: block;
  font-size: 16px;
  color: var(--primary-color);
  font-weight: 600;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.team-info p {
  font-size: 15px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 15px;
}

.team-info p strong {
  color: var(--text-white);
}

.team-info .spec,
.team-info .motto,
.team-info .fact {
  font-size: 14px;
  border-left: 3px solid var(--accent-color);
  padding-left: 15px;
  margin-top: 10px;
}

.text-justify {
  text-align: justify;
}

/* 
---------------------------------------------
user authentication
--------------------------------------------- 
*/

li.user-profile {
  position: relative;
  margin-left: 10px;
}

#user-menu-toggle {
  width: 36px;
  height: 36px;
  background: var(--grad-royal-emerald);
  border-radius: 50%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  cursor: pointer;
  border: none;
  outline: none;
}

#user-menu-toggle:hover {
  background: linear-gradient(135deg, var(--royal-crimson), var(--emerald-main));
  transform: scale(1.1);
}

#user-menu-toggle.logged-in {
  background-color: #007bff;
  /* Professional Blue */
}

#user-menu-toggle.logged-in:hover {
  background-color: #0056b3;
}

#user-menu-toggle i {
  color: #fff;
  font-size: 18px;
  text-shadow: none !important;
}

.user-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  background-color: var(--bg-darker);
  width: 150px;
  border-radius: 10px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
  margin-top: 15px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s;
  z-index: 1000;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.user-dropdown.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.user-dropdown a {
  display: block;
  padding: 12px 20px;
  color: var(--text-white) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  height: auto !important;
  line-height: normal !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  letter-spacing: normal !important;
  text-shadow: none !important;
}

.user-dropdown a:last-child {
  border-bottom: none;
}

.user-dropdown a:hover {
  background-color: rgba(148, 1, 40, 0.1);
  color: var(--royal-crimson) !important;
  padding-left: 25px !important;
}

/* Auth Modal Styling */
.auth-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s;
  backdrop-filter: blur(5px);
}

.auth-modal.active {
  opacity: 1;
  visibility: visible;
}

.auth-modal-content {
  background-color: #fff;
  width: 100%;
  max-width: 400px;
  border-radius: 20px;
  padding: 40px;
  position: relative;
  transform: scale(0.8);
  transition: all 0.4s;
}

.auth-modal.active .auth-modal-content {
  transform: scale(1);
}

.close-modal {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 24px;
  color: #7a7a7a;
  cursor: pointer;
  transition: color 0.3s;
}

.close-modal:hover {
  color: #d63384;
}

.auth-modal-content h2 {
  font-size: 24px;
  font-weight: 700;
  color: #1f272b;
  margin-bottom: 30px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.auth-form input {
  width: 100%;
  height: 45px;
  background-color: #f7f7f7;
  border: none;
  border-radius: 22.5px;
  padding: 0 20px;
  margin-bottom: 20px;
  font-size: 14px;
  outline: none;
}

.auth-form button {
  width: 100%;
  height: 45px;
  background-color: #00a651;
  color: #fff;
  border: none;
  border-radius: 22.5px;
  font-weight: 600;
  text-transform: uppercase;
  margin-top: 10px;
  cursor: pointer;
  transition: all 0.3s;
}

.auth-form button:hover {
  background-color: #d63384;
}

.auth-links {
  margin-top: 25px;
  text-align: center;
}

.auth-links p {
  font-size: 13px;
  color: #7a7a7a;
}

.auth-links a {
  color: var(--royal-crimson) !important;
  font-weight: 600;
}

.auth-links a:hover {
  text-decoration: underline !important;
}

@media (max-width: 991px) {
  .right-info ul li {
    flex-direction: column;
    align-items: center !important;
    text-align: center;
  }

  .right-info ul li i {
    margin-right: 0 !important;
    margin-bottom: 10px;
  }
}

@media (max-width: 1150px) {
  li.user-profile {
    display: inline-block;
    position: absolute;
    right: 92px;
    top: -72px;
    margin-left: 0;
    z-index: 1001;
    background: transparent !important;
    border: none !important;
  }

  #user-menu-toggle {
    background-color: #00a651 !important;
    opacity: 1 !important;
    height: 36px !important;
    line-height: 36px !important;
    width: 36px !important;
    padding: 0 !important;
  }

  .user-dropdown {
    right: -10px;
    top: 110%;
  }

  .auth-modal-content {
    width: 90%;
    padding: 30px 20px;
  }

  .auth-modal-content h2 {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .icon-container img {
    width: 50px !important;
    height: 50px !important;
  }

  /* Team section refinements */
  .team-member-card {
    padding: 25px 15px;
  }

  .team-img-container img {
    width: 140px !important;
    height: 140px !important;
  }
}

@media (max-width: 480px) {
  .main-nav .logo img {
    max-width: 150px;
  }

  .logo-text .title {
    font-size: 16px !important;
  }

  .logo-text .tagline {
    font-size: 8px !important;
  }
}

/* Feedback & Donate Button Global Styles */
.query-static-btn {
  display: inline-flex;
  background: #ced4da;
  color: #333 !important;
  padding: 8px 15px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.3s ease;
  align-items: center;
  gap: 8px;
  text-decoration: none !important;
  position: relative;
}

.donate-tooltip {
  visibility: hidden;
  width: 350px;
  background: rgba(26, 34, 53, 0.98);
  backdrop-filter: blur(10px);
  color: #eee;
  text-align: left;
  border-radius: 12px;
  padding: 20px;
  position: absolute;
  z-index: 10000;
  bottom: 140%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  opacity: 0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  font-size: 13px;
  line-height: 1.6;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.15);
  pointer-events: none;
  white-space: normal;
}

.donate-tooltip strong {
  color: var(--primary-color);
  font-size: 15px;
  display: block;
  margin-bottom: 12px;
  font-weight: 700;
}

.donate-tooltip p {
  margin-bottom: 10px;
  color: #ccc;
  font-size: 12.5px;
}

.donate-tooltip em {
  font-style: italic;
  color: #aaa;
  display: block;
  margin-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 10px;
}

.donate-tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border-width: 8px;
  border-style: solid;
  border-color: rgba(26, 34, 53, 0.98) transparent transparent transparent;
}

.query-static-btn:hover .donate-tooltip {
  visibility: visible;
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.query-static-btn:hover {
  background: var(--primary-color);
  color: var(--text-white) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.query-static-btn .fa-heart,
.query-static-btn .fa-heart-pulse {
  color: #ff4d4d;
  animation: heartBeat 1.5s ease-in-out infinite;
  display: inline-block;
}

@keyframes heartBeat {
  0% {
    transform: scale(1);
  }

  15% {
    transform: scale(1.15);
  }

  30% {
    transform: scale(1);
  }

  45% {
    transform: scale(1.15);
  }

  70% {
    transform: scale(1);
  }
}