:root {
    --default-font: "Montserrat", sans-serif;

    --bg-white: #ffffff; 
    --bg-light: #FAFAFA; 
    --bg-gradient: linear-gradient(45deg, #01081B, #012B90);
    --bg-gradient-reverse: linear-gradient(45deg, #012B90, #01081B);
    --bg-accent: #00D1FF;
    --bg-part1: #FFEFEA; 
    --bg-part2: #E8EEFF; 
    --bg-green: #008E17; 

    --default-color: #010718; 
    --blue-color: #01298A;
    --accent-color: #00D1FF;
    --text-white: #fff;
    --text-green: #008E17;
    --text-orange: #FF6B35;
    --text-yellow: #FFC300;

    scroll-behavior: smooth;
}

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
    font-family: var(--default-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: var(--default-color) !important;
    line-height: 30px !important;
}

a{
	text-decoration: none;
    color: var(--blue-color);
}
  
a:hover {
    color: var(--accent-color);
    text-decoration: none;
}

p{
	font-family: var(--default-font);
	font-size: 16px;
	font-weight: 400;
	color: var(--default-color);
	margin-bottom: 15px;
	line-height: 30px;
}
  
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--default-color);
    font-family: var(--default-font);
    color: var(--default-color);
}

.custom-btn{
	font-size: 17px;
    min-height: 44px;
    min-width: 130px;
    text-align: center;
    text-decoration: none;
    padding: 0 30px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 600;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-transform: capitalize;
    -webkit-transition: all 0.3s ease-out 0s;
    -moz-transition: all 0.3s ease-out 0s;
    -ms-transition: all 0.3s ease-out 0s;
    -o-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
}
.custom-btn:hover{
    text-decoration: none;
}
.theam-btn{
    color: var(--text-white) !important;
    background: var(--bg-gradient) !important;
}
.theam-btn:hover{
  color: var(--text-white) !important;
  background: var(--bg-gradient-reverse) !important;
}

.white-btn {
  background: var(--bg-white);
  color: var(--blue-color);
}
.white-btn:hover {
  background: var(--accent-color);
  color: var(--text-white);
}
.accent-btn {
  background: var(--bg-accent);
  color: var(--text-white);
}
.accent-btn:hover {
  background: var(--bg-gradient);
  color: var(--text-white);
}
.sec-padding{
    padding-top: 5rem;
    padding-bottom: 5rem;
}
.sec-head{
  font-size: 35px;
  font-weight: 800;
  line-height: 45px;
  color: var(--default-color);
  margin-bottom: 1rem;
}
.section-title p{
  font-size: 20px;
  line-height: 32px;
  color: var(--default-color);
  margin-bottom: 1rem;
}
.tagline{
    font-size: 20px;
    font-weight: 500;
}

.list-check{
    list-style: none;
    padding: 0;
}
.list-check li{
    display: flex;
    align-items: flex-start;
    gap: 10px;
    line-height: 30px;
    margin-bottom: 0.8rem;
}
.list-check li:before{
    content: '\F26A';
    color: var(--accent-color);
    font-family: bootstrap-icons !important;
}

/*--navbar--*/
header {
    color: var(--heading-color);
    background-color: transparent;
    padding: 0;
    transition: all 0.2s;
    /* position: absolute; */
    position: sticky;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 11;
}
header.sticky {
    background-color: var(--bg-white);
    z-index: 99;
    box-shadow: 0px 0 15px rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    animation: 300ms ease-in-out 0s normal none 1 running fadeInDown;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

header .navbar {
  padding: 0;
  background: var(--bg-white);
}

header .navbar .nav-link,
header .navbar .nav-link:focus {
    color: var(--default-color);
    font-size: 16px;
    font-weight: 500;
    display: block;
    padding: 1.3rem 0;
}
header .navbar .navbar-nav {
  gap: 20px;
  align-items: center;
}

header .navbar .nav-link.custom-btn {
    padding: 0;
}

header .navbar .nav-link:hover {
    color: var(--blue-color);
}
header .navbar .dropdown-toggle::after{
  content: '\f282';
  -webkit-transform: translateY(1px);
  -moz-transform: translateY(1px);
  -ms-transform: translateY(1px);
  transform: translateY(1px);
  font-size: 14px;
  color: var(--default-color);
  font-family: bootstrap-icons !important;
  font-weight: 700;
  margin-left: 5px;
  display: inline-block;
  border: 0;
  vertical-align: 0;
}
header .navbar .dropdown-toggle:hover::after{
  color: var(--blue-color);
}
header .navbar .nav-link.custom-btn span i{
    color: var(--accent-color);
}
.navbar .mega-menu{
	border: none;
    box-shadow: 0px 1px 3px 0 #012271;
    border-radius: 10px;
    padding: 1rem;
    background: var(--bg-white);
}

.navbar .mega-menu .menu-list{
	display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  --bs-gutter-x: 0;
}

.navbar .mega-menu .menu-list ul{
	list-style: none;
  padding: 0;
	padding: 2rem;
}

.navbar .mega-menu .menu-list ul li{
	position: relative;
}

.navbar .mega-menu .menu-list ul li:after{
	content: ">";
	position: absolute;
	left: -7px;
	top: 4px;
	color: var(--blue-color);
	font-family: monospace;
}

.navbar .mega-menu .menu-list ul a{
	color: var(--default-color);
	padding: 5px;
    font-size: 16px;
    font-family: var(--default-font);
    font-weight: 500;
	display: block;
	text-decoration: none;
	transition: ease 0.5s;
}

.navbar .mega-menu .menu-list ul a:hover{
	color: var(--blue-color);
	padding-left: 10px;
}


.navbar .mega-menu .menu-list .top-recommended{
  display: flex;
  flex-direction: column;
  padding: 0;
  gap: 10px;
  border: 1px solid var(--blue-color);
  border-radius: 5px;
}
.navbar .mega-menu .menu-list .top-recommended .head{
	text-align: center;
  background: var(--bg-gradient);
  color: var(--text-white);
  padding: 15px 10px;
  font-size: 18px;
  font-weight: 500;
  text-transform: capitalize;
  border-radius: 5px;
}
.navbar .mega-menu .menu-list .top-recommended li:after{
  display: none; 
}
.navbar .mega-menu .menu-list .top-recommended li a{
  padding: 5px 15px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
  gap: 10px;
}

/*--footer--*/
.footer {
    color: var(--text-white);
    font-size: 14px;
    position: relative;
    background: var(--bg-gradient);
    padding-top: 60px;
}
footer p{
    color: var(--text-white);
}

.footer .social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 18px;
    color: var(--blue-color);
    background: var(--bg-white);
    margin-right: 10px;
    transition: 0.3s;
}

.footer .social-links a:hover {
    color: var(--bg-white);
    border-color: var(--bg-white);
    background: var(--blue-color);
    box-shadow: 0 0 3px var(--bg-light);
}

.footer h4 {
    font-family: var(--default-font);
    color: var(--text-white);
    font-size: 20px;
    font-weight: 600;
    position: relative;
    padding-bottom: 1rem;
}

.footer .footer-links {
    margin-bottom: 30px;
}

.footer .footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer .footer-links ul li {
    padding: 10px 0;
    display: flex;
    align-items: center;
}

.footer .footer-links ul li:first-child {
    padding-top: 0;
}

.footer .footer-links ul a {
    display: inline-block;
    color: var(--text-white);
    line-height: 1;
    text-decoration: none;
    font-weight: 500;
}

.footer .footer-links ul a:hover {
    color: var(--accent-color);
}

.footer .footer-about a {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 400;
    font-family: var(--default-font);
}

.footer .footer-contact p {
    margin-bottom: 5px;
}

.footer .footer-contact a {
    font-size: 16px;
    text-decoration: none;
    color: var(--text-color);
}

.footer .footer-contact a i{
    color: var(--accent-color);
    margin-right: 5px;
}

.footer .copyright {
    margin-top: 40px;
    padding-top: 25px;
    padding-bottom: 25px;
    border-top: 1px solid #CBD5E0;
}

.footer .copyright p {
    margin-bottom: 0;
}

.footer .copyright a{
    color: var(--text-color);
    text-decoration: none;
}
.footer .copyright a:hover{
    color: var(--accent-color);
    text-decoration: none;
}

/*--scroll top--*/
.scroll-top {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    right: 2.4rem;
    bottom: 10rem;
    z-index: 99999;
    background-color: var(--accent-color);
    width: 40px;
    height: 40px;
    border-radius: 4px;
    transition: all 0.4s;
    border: none;
}

.scroll-top i {
    font-size: 24px;
    color: var(--bg-white);
    line-height: 0;
}

.scroll-top:hover {
    background-color: color-mix(in srgb, var(--accent-color), transparent 20%);
    color: var(--text-white);
}

.scroll-top.active {
    visibility: visible;
    opacity: 1;
}


/*--Responsive--*/
@media screen and (min-width:992px) {
	.navbar .dropdown {
		position: static;
	}
	.navbar .dropdown:hover .mega-menu {
		display: block;
	}
	.navbar .mega-menu{
		width: 84%;
		left: 8%;
		right: auto;
	}
}	

@media screen and (max-width: 991px) {
    header.sticky {
        animation: none;
    }
	.navbar .navbar-toggler{
		box-shadow: none !important;
	}
	.navbar .navbar-toggler[aria-expanded~="true"] .navbar-toggler-icon{
		transform: rotateX(97deg);
	}
	.navbar .mega-menu .menu-list{
		flex-wrap: wrap;
	}	
	.navbar .mega-menu .menu-list ul{
		width: 100%;
		border-right: none;
		padding: 0 1rem;
	}
    .navbar .mega-menu .menu-list .nav-tabs{
        display: none;
    }
    .navbar .mega-menu .menu-list .tab-content>.tab-pane{
        display: block;
        opacity: 1;
    }
    .navbar .mega-menu .menu-list .tab-content .tab-pane ul li{
        width: 100%;
    }
    #submenubar{
        text-align: center;
    }
    #submenubar a{
        gap:0;
    }
    #submenubar a span{
        display: none;
    }
}	

@media screen and (max-width: 768px){
    header .navbar .nav-link, header .navbar .nav-link:focus{
        padding: 0.3rem 0;
    }
    header .navbar .navbar-nav{
        box-shadow: inset 0 0 2px var(--blue-color);
        padding: 1rem;
        align-items: flex-start;
        gap: 5px;
    }
    header .navbar .navbar-collapse{
        overflow: scroll;
        max-height: 320px;
    }
    .footer{
        text-align: center;
    }
    .footer .footer-about a{
        justify-content: center;
    }
    .footer .footer-links ul li{
        justify-content: center;
    }
    .footer .social-links{
        justify-content: center;
    }
}