* {
	margin: 0;
	padding: 0;
}

/* body {
	font-family: 'Sen', sans-serif;
	color: #333;
	background: #fff;
}

h1, h2, h3, h4, h5, h6 {
	color: #333;
} */

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
                 Roboto, 'Helvetica Neue', Arial, sans-serif;
    color: #333;
    background: #fff;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    color: #333;
}


.slider-video iframe {
	width: 100%;
	height: 600px;
}


a {
	-webkit-transition: all 0.4s ease!important;
	transition: all 0.4s ease!important;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

input::placeholder,
select::placeholder,
textarea::placeholder {
	color: #acacac!important;
}

.bg-lightblue {
	background: #f1f5f9;
}

.w-60 {
	width: 60px!important;
}
.w-400 {
	width: 400px!important;
}
.w-300 {
	width: 300px!important;
}
.w-200 {
	width: 200px!important;
}
.w-100-p {
	width: 100%!important;
}
.w-auto {
	width: auto!important;
}

.h-70 {
	height: 70px!important;
}
.h-100 {
	height: 100px!important;
}
.h-200 {
	height: 200px!important;
}
.h-300 {
	height: 300px!important;
}

.bg_ffffff {
	background: #ffffff!important;
}
.bg_333333 {
	background: #333333!important;
}
.bg_f3f3f3 {
	background: #f3f3f3!important;
}
.bg_3867D6 {
	background: #3867D6!important;
}

.c_f3f3f3 {
	color: #f3f3f3!important;
}
.c_red {
	color: red;
}
.fz_40 {
	font-size: 40px!important;
}
.fw_700 {
	font-weight: 700!important;
}
.fl_l {
	float: left;
}
.d_n {
	display: none!important;
}
.d_b {
	display: block!important;
}

.pt_8 {padding-top: 8px!important;}

.pos_r {position: relative!important;}



.btn-arf {
	background: #3867D6!important;
	border: 0;
}

.btn-arf:hover {
	background: #333!important;
}


.top {
	background: #3867D6;
	padding-top: 6px;
	margin-bottom: -4px;
}

.top-contact {
	color: #fff;
}

.top-contact ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.top-contact li {
	display: inline-block;
	margin-right: 15px;
	margin-top: 5px;
	margin-bottom: 17px;
	font-size: 14px;
}

.top-contact li:last-child {
	margin-right: 0;
}

.top-contact li i {
	vertical-align: middle;
	font-size: 14px;
}

.top-contact li span {
	margin-left: 8px;
}

.top-right {
	display: flex;
	justify-content: flex-end;
}

.top-social {
	text-align: right;
	margin-right: 30px;
}

.top-social li {
	text-align: center;
	display: inline-block;
	margin-right: 10px;
	margin-top: 5px;
}

.top-social li:last-child {
	margin-right: 0px;
}

.top-social a {
	display: block;
	font-size: 14px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.top-social a:hover {
	color: #f8be2e;
}

.top-profile li {
	text-align: center;
	display: inline-block;
	margin-right: 10px;
	margin-top: 5px;
	font-size: 14px;
}

.top-profile li a {
	color: #fff;
}

.top-profile li:last-child {
	margin-right: 0px;
}

.top-profile li.cart {
	position: relative;
}

.top-profile li.cart .number {
	position: absolute;
	right: -18px;
	top: -6px;
	background: yellow;
	color: #333;
	width: 16px;
	height: 16px;
	line-height: 16px;
	border-radius: 16px;
	text-align: center;
	font-size: 12px;
	font-weight: 700;
}

@media only screen and (min-width: 0px) and (max-width: 767px) {
	.top-contact,
	.top-contact ul {
		width: 100%;
	}

	.top-contact ul {
		text-align: center;
	}

	.top-social {
		margin-top: 10px;
	}

	.top-social,
	.top-social ul {
		width: 100%;
	}

	.top-social ul {
		text-align: center;
	}

	.top-right {
		display: block;
	}

	.top-profile ul {
		text-align: center;
		margin-top: -10px;
	}

	.top-profile ul li {
		display: inline-block;
	}
}



/* Main Nav */
/* Main Nav */
/* Main Nav */
.main-nav {
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
	background: #fff;
}

.main-nav .navbar {
	padding-left: 0;
	padding-right: 0;
}

.main-nav nav .navbar-nav .nav-item {
	padding-top: 28px;
	padding-bottom: 28px;
	position: relative; /* needed for centering dropdown */
}

/* Mega Menu Dropdown */
.main-nav nav .navbar-nav .nav-item .dropdown-menu {
	top: 88px!important;
	background: #3867D6!important;
	padding: 20px!important; /* spacing inside dropdown */
	border: none!important;
	border-radius: 0!important;
	width: 600px; /* adjust width as needed */
	display: flex;
	flex-wrap: wrap; /* allow items to wrap into rows */
	position: absolute; /* position relative to parent li */
	left: 50%; /* center based on parent */
	transform: translateX(-50%); /* exactly center */
	z-index: 999; /* above other content */
	box-sizing: border-box;
}

/* Arrange items in columns */
.main-nav nav .navbar-nav .nav-item .dropdown-menu li {
	width: 33%; /* 3 items per row → 3 columns */
	float: left;
	padding: 5px 10px;
	box-sizing: border-box;
	list-style: none; /* remove bullets */
}

/* Clear floats */
.main-nav nav .navbar-nav .nav-item .dropdown-menu::after {
	content: "";
	display: block;
	clear: both;
}

/* Links inside mega menu */
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a {
	display: block;
	padding: 8px 5px;
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	position: relative; /* for animated underline */
}

/* Animated underline ONLY for mega menu links */
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px; /* thickness of the line */
	width: 0; /* start hidden */
	background: #fff; /* underline color */
	transition: width 0.3s ease;
}

.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover::after {
	width: 100%; /* expand to full width on hover */
}

/* Hover effect for mega menu text */
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover {
	background: none!important; /* remove old background hover */
	color: #fff!important; /* keep text white */
}

/* Original Nav link styles (main menu) */
.main-nav nav .navbar-nav .nav-item > a {
	color: #333;
	font-weight: 600;
}

/* Hover & active states for main menu remain unchanged */
.mobile-nav.mean-container .mean-nav ul li a.active,
.main-nav nav .navbar-nav .nav-item a:hover,
.main-nav nav .navbar-nav .nav-item a:focus,
.main-nav nav .navbar-nav .nav-item a.active,
.main-nav nav .navbar-nav .nav-item:hover > a {
	color: #3867D6;
}

/* Mega menu hover rounded effect (optional) */
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover {
	border-radius: 5px;
}

.main-nav img {
	height: 70px;
}

/* --------------------------- */
/* Responsive Adjustments */
/* --------------------------- */
@media (max-width: 992px) {
	.main-nav nav .navbar-nav .nav-item .dropdown-menu {
		width: 100%; /* full width on tablet */
		display: block;
		left: 0;
		transform: none;
	}
	.main-nav nav .navbar-nav .nav-item .dropdown-menu li {
		width: 50%; /* 2 columns on tablet */
		float: left;
	}
}

@media (max-width: 576px) {
	.main-nav nav .navbar-nav .nav-item .dropdown-menu li {
		width: 100%; /* single column on mobile */
		float: none;
	}
}

/* .main-nav {
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
	background: #fff;
}

.main-nav .navbar {
	padding-left: 0;
	padding-right: 0;
}

.main-nav nav .navbar-nav .nav-item {
	padding-top: 28px;
	padding-bottom: 28px;
}

.main-nav nav .navbar-nav .nav-item .dropdown-menu {
	top: 88px!important;
	background: #3867D6!important;
	padding: 0!important;
	border: none!important;
	border-radius: 0!important;
}


.main-nav nav .navbar-nav .nav-item a {
	color: #333;
	font-weight: 600;
}

.mobile-nav.mean-container .mean-nav ul li a.active,
.main-nav nav .navbar-nav .nav-item a:hover,
.main-nav nav .navbar-nav .nav-item a:focus,
.main-nav nav .navbar-nav .nav-item a.active,
.main-nav nav .navbar-nav .nav-item:hover a,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:focus,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a.active,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a:hover,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a:focus,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a.active,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li:hover a {
	color: #3867D6;
	
}

.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover {
	color: #fff!important;
	background: #333!important;
}

.main-nav img {
	height: 70px;
} */






/* Sticky Nav */
.sticky {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background-color: #fff;
	border-bottom: 1px solid #ddd;
	z-index: 999;
}




/* Sidepanel */
.sidepanel {
  	height: 250px; /* Specify a height */
  	width: 0; /* 0 width - change this with JavaScript */
	position: fixed; /* Stay in place */
	z-index: 1; /* Stay on top */
	top: 0;
	left: 0;
	background-color: #111; /* Black*/
	overflow-x: hidden; /* Disable horizontal scroll */
	padding-top: 60px; /* Place content 60px from the top */
	transition: 0.5s; /* 0.5 second transition effect to slide in the sidepanel */
}
.sidepanel a {
	padding: 8px 8px 8px 32px;
	text-decoration: none;
	font-size: 25px;
	color: #818181;
	display: block;
	transition: 0.3s;
}
.sidepanel a:hover {
  	color: #f1f1f1;
}
.sidepanel .closebtn {
	position: absolute;
	top: 0;
	right: 25px;
	font-size: 36px;
	margin-left: 50px;
}
.openbtn {
	font-size: 20px;
	cursor: pointer;
	background-color: #111;
	color: white;
	padding: 10px 15px;
	border: none;
}
.openbtn:hover {
  	background-color: #444;
}







/* Slider */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
}
.slider-item {
	width: 100%;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    color: #fff;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.slider-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #0a3041;
    opacity: 0.6;
}

.slider-bg-video {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #0a3041;
    opacity: 0.6;
    z-index: 99;
}

.slider-table {
    overflow: hidden;
    display: table;
    width: 100%;
    height: 600px;
}

.slider-text {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    height: 100%;
}

.text-animated h1 {
    font-size: 40px;
    font-weight: 600;
    color: #fff;
    margin: 0;
    margin-bottom: 15px;
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    margin-bottom: 25px;
}

.text-animated p {
    font-size: 18px;
    color: #fff;
    margin: 0;
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.text-animated ul {
	padding-left: 0;
	margin-top: 20px;
}

.text-animated li {
    display: inline-block;
    margin-top: 22px;
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}

.text-animated li a {
    font-size: 18px;
    font-weight: 500;
    display: inline-block;
    background-color: transparent;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 15px;
    padding: 11px 40px;
    text-decoration: none;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}

.text-animated li a:hover {
    background-color: #3867D6;
    color: #fff;
    border-color: #3867D6;
}

.slide-carousel {
    overflow: hidden;
}

/* ---------- Responsive Owl Carousel Arrows ---------- */
.slide-carousel .owl-nav .owl-prev,
.slide-carousel .owl-nav .owl-next {
    display: flex;                     /* show arrows */
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 18px;                  /* arrow icon size */
    position: absolute;
    width: 50px;                       /* round circle */
    height: 50px;
    top: 50%;
    transform: translateY(-50%);       /* vertical center */
    background: transparent;           /* transparent inside */
    border: 2px solid #fff;            /* white border */
    border-radius: 50%;                /* round shape */
    color: #fff;                        /* arrow color */
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;                        /* on top of slides */
}

.slide-carousel .owl-nav .owl-prev {
    left: 15px;                         /* spacing from left edge */
}

.slide-carousel .owl-nav .owl-next {
    right: 15px;                        /* spacing from right edge */
}



/* ---------- Slider Dots ---------- */
.slide-carousel .owl-dots {
    text-align: center;
    position: absolute;
    bottom: 35px;
    left: 50%;
    transform: translateX(-50%);
}

.slide-carousel .owl-dots .owl-dot {
    height: 13px;
    width: 13px;
    border-radius: 50%;
    background-color: transparent;
    border: 2px solid #fff;
    display: inline-block;
    margin: 0 4px;
    transition: all 0.3s ease;
}

.slide-carousel .owl-dots .owl-dot.active {
    background: #fff;
}

/* ---------- Responsive Adjustments ---------- */
@media (max-width: 992px) {
    .slide-carousel .owl-nav .owl-prev,
    .slide-carousel .owl-nav .owl-next {
        width: 45px;
        height: 45px;
        font-size: 16px;
    }
}

@media (max-width: 768px) {
    .slide-carousel .owl-nav .owl-prev,
    .slide-carousel .owl-nav .owl-next {
        width: 40px;
        height: 40px;
        font-size: 14px;
        left: 10px;
        right: 10px;
    }
    
    .slider-text h1 {
        font-size: 28px;               /* smaller text on tablets */
    }
    
    .slider-text p {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .slide-carousel .owl-nav .owl-prev,
    .slide-carousel .owl-nav .owl-next {
        width: 35px;
        height: 35px;
        font-size: 12px;
    }

    .slider-text h1 {
        font-size: 22px;               /* smaller text on phones */
    }
    
    .slider-text p {
        font-size: 14px;
    }
    
    .slider-text ul li a {
        padding: 8px 25px;             /* smaller button */
        font-size: 14px;
    }
}



/* Video Background */
.slider-video {
	position: relative;
	background-color: #00176e;
	color: #ffffff;
	height: 600px;
	overflow: hidden;
}
.slider-item-video .slider-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2;
}
.slider-item-video .slider-table {
	z-index: 99;
	position: relative;
}
.slider-item-video .video-foreground,
.slider-item-video .video-foreground iframe {
  	position: absolute;
  	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	pointer-events: none;
}

@media (min-aspect-ratio: 16/9) {
  	.slider-item-video .video-foreground {
    	height: 300%;
    	top: -100%;
  	}
}
@media (max-aspect-ratio: 16/9) {
  	.slider-item-video .video-foreground {
    	width: 300%;
    	left: -100%;
  	}
}
@media all and (max-width: 600px) {
  	.slider-item-video .vid-info {
    	width: 50%;
    	padding: 0.5rem;
  	}
  	.slider-item-video .vid-info h1 {
    	margin-bottom: 0.2rem;
  	}
}
@media all and (max-width: 500px) {
 	.slider-item-video .vid-info .acronym {
    	display: none;
  	}
}



/* =============================================== */
/* ================= Mobile Menu ================= */
/* =============================================== */
.mobile-nav img {
	height: 40px;
}
.mean-container .mean-bar {
	background-color: #fff;
}
/* .mean-container a.meanmenu-reveal span {
	background: #3867D6;
}
.mean-container a.meanmenu-reveal {
	color: #3867D6;
} */




.bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #134050;
	opacity: 0.7;
}


/* .feature {
	padding-top: 80px;      
	padding-bottom: 100px;  
	overflow: hidden;
}


.feature .heading {
	text-align: center;
	margin-bottom: 60px; /
}

.feature .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
	margin-bottom: 10px;
}

.feature .heading h3 {
	font-size: 18px;      
	font-weight: 400;
	color: #928f8f;
}


.feature .feature-item {
	background: #3867D6;
	padding: 40px 25px;   
	color: #fff;
	text-align: center;
	transition: all 0.4s ease;
	margin-bottom: 45px; 
	border-radius: 12px; 
}


.feature .feature-item .icon {
	margin-bottom: 25px;
	text-align: center;
}

.feature .feature-item .icon img {
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #fff;
	display: inline-block;
	padding: 12px;
	object-fit: contain;
}


.feature .feature-item h4 {
	font-size: 20px;
	margin-bottom: 15px;
	color: #fff;
	font-weight: 700;
}


.feature .feature-item p {
	font-size: 15px;
	line-height: 1.7;
	margin-bottom: 0;
}


.feature .feature-item:hover {
	background: #333;
	transform: translateY(-6px);
} */

/* Section */
.services {
    padding: 90px 0;
    background: #f9fafc;
}

/* Heading */
.services .heading h2 {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #222;
}

.services .heading h3 {
    font-size: 22px;       
    font-weight: 500;
    color: #777;
    margin-bottom: 25px;
    line-height: 1.3;
}



/* Service Box */
.service-box {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 25px;
    background: #fff;
    border-radius: 10px;
    transition: 0.3s ease;
    margin-bottom: 30px;
    border: 1px solid #eee;
}

/* Icon */
.service-icon img {
    width: 55px;
    height: 55px;
    object-fit: contain;
}

/* Content */
.service-content h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #222;
}

.service-content p {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin: 0;
}

/* Hover */
.service-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}




.corona-case {
	padding-top: 70px;
	padding-bottom: 80px;
	overflow: hidden;
}

.corona-case .heading {
	text-align: center;
	margin-bottom: 50px;
}

.corona-case .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
}

.corona-case .heading h3 {
	font-size: 20px;
	font-weight: 500;
	color: #928f8f;
}

.corona-case .corona-case-item {
	background: #fff;
	padding: 20px;
	color: #3867D6;
	text-align: center;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
	margin-bottom: 25px;
}

.corona-case .corona-case-item .icon {
	font-size: 40px;
	margin-bottom: 20px;
	text-align: center;
}

.corona-case .corona-case-item .icon img {
	width: 80px;
	height: auto;
	text-align: center;
	display: inline-block;
	padding: 10px;
}

.corona-case .corona-case-item h4 {
	font-size: 20px;
	margin-bottom: 15px;
	color: #3867D6;
	font-weight: 700;
}

.corona-case .corona-case-item h5 {
	font-size: 34px;
	font-weight: 700!important;
}

.corona-case .corona-case-item:hover {
	background: #333;
}


.countrywise {
	padding-top: 70px;
	padding-bottom: 80px;
	background: #3867D6;
	overflow: hidden;
}

.countrywise .heading {
	text-align: center;
	margin-bottom: 30px;
}

.countrywise .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	margin-top: 0;
}

.countrywise .heading h3 {
	font-size: 20px;
	font-weight: 500;
	color: #fff;
}

.countrywise .dataTables_length,
.countrywise div.dataTables_wrapper div.dataTables_info {
	display: none;
}

.countrywise div.dataTables_wrapper div.dataTables_filter label {
	color: #fff;
}

.countrywise div.dataTables_wrapper div.dataTables_paginate ul.pagination li {
	display: none;
}

.countrywise table.dataTable.display tbody tr {
	background: transparent;
}

.countrywise table.dataTable.display tbody tr>.sorting_1 {
	background: transparent;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button,
.countrywise .dataTables_wrapper .dataTables_paginate .ellipsis {
	color: #fff!important;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button.current {
	color: #333!important;
}

.countrywise .dataTables_wrapper .dataTables_filter input {
	border: 0;
	border-radius: 4px;
	outline: none;
	height: 30px;
	padding-left: 3px;
	padding-right: 3px;
}

.countrywise .dataTables_empty {
	color: #fff!important;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button {
    background: transparent!important;
    color: #fff!important;
    padding: 6px 13px!important;
    border: 1px solid #fff!important;
    font-weight: 700;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #fff!important;
    color: #3867D6!important;
    padding: 6px 13px!important;
    border: 1px solid #fff!important;
    font-weight: 700;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button.current,
.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: #fff!important;
    color: #3867D6!important;
    padding: 6px 13px!important;
    border: 1px solid #fff!important;
    font-weight: 700;
}

.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.countrywise .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
    color: #bbbbbb!important;
    background: #f9f9f9!important;
    padding: 6px 13px!important;
    border: 1px solid #c9c6f5!important;
}

.countrywise .dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom: 0;
}



/* ================= SPECIAL MODERN SECTION ================= */
.special-modern {
	padding-top: 90px;
	padding-bottom: 100px;
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
}

/* Floating card effect for text */
.special-modern .floating-card {
	background: rgba(0,0,0,0.25); /* subtle overlay */
	padding: 30px 40px;
	border-radius: 16px;
	box-shadow: 0 20px 60px rgba(0,0,0,0.35);
	margin-top: -50px; /* floating effect */
	max-width: 520px;
}

/* Headings & Text */
.special-modern h2 {
	color: #cfcfcf;
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 15px;
}


.special-modern h3 {
    font-size: 40px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin-bottom: 25px;
    line-height: 1.2;
}

.special-modern p {
	color: #eaeaea;
	font-size: 15px;
	line-height: 1.8;
}

/* Button */
.special-modern .read-more {
	margin-top: 35px;
}

.special-modern .read-more a {
	background: #3867D6;
	border: 2px solid #3867D6;
	border-radius: 50px;
	padding: 12px 36px;
	display: inline-block;
	color: #fff;
	transition: all 0.35s ease;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.special-modern .read-more a:hover {
	background: transparent;
	border-color: #fff;
	color: #fff;
}

/* ================= VIDEO SECTION ================= */
.special-modern .video-section {
	position: relative;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 420px;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(0,0,0,0.35);
	margin-top: 20px;
}

/* Video overlay remains */
.special-modern .video-section-bg {
	background: #000;
	opacity: 0.35;
}

/* Play Button preserved exactly */
.special-modern .video-button {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	box-sizing: content-box;
	display: block;
	width: 32px;
	height: 44px;
	border-radius: 50%;
	padding: 18px 20px 18px 28px;
}

.special-modern .video-button:before {
	content: "";
	position: absolute;
	z-index: 0;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 90px;
	height: 90px;
	background: #3867D6;
	border-radius: 50%;
	animation: video-pop 1500ms ease-out infinite;
}

.special-modern .video-button:after {
	content: "";
	position: absolute;
	z-index: 1;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 90px;
	height: 90px;
	background: #3867D6;
	border-radius: 50%;
	transition: all 200ms;
}

.special-modern .video-button span {
	display: block;
	position: relative;
	z-index: 3;
	width: 0;
	height: 0;
	border-left: 32px solid #fff;
	border-top: 22px solid transparent;
	border-bottom: 22px solid transparent;
}

/* Animation */
@keyframes video-pop {
	0% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
	100% { transform: translate(-50%, -50%) scale(1.5); opacity: 0; }
}

/* Responsive */
@media only screen and (max-width: 768px) {
	.special-modern {
		padding-top: 70px;
		padding-bottom: 80px;
	}

	.special-modern .floating-card {
		margin-top: 0;
		padding: 20px;
		max-width: 100%;
	}

	.special-modern .video-section {
		height: 320px;
		margin-top: 20px;
	}
}





/* ================= SERVICES ================= */
.service {
	padding-top: 80px;
	padding-bottom: 100px;
	overflow: hidden;
	background: #ffffff;
}

/* Heading */
.service .heading {
	text-align: center;
	margin-bottom: 60px;
}

.service .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #222;
	margin-top: 0;
	margin-bottom: 10px;
}

.service .heading h3 {
	font-size: 22px;        /* subtitle size */
	font-weight: 500;
	color: #777;
	margin-bottom: 50px;
	line-height: 1.4;
}

/* Service Item */
.service .service-item {
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	/* box-shadow: 0 12px 30px rgba(0,0,0,0.08); */
	transition: all 0.35s ease;
	height: 100%;
}

.service .service-item:hover {
	transform: translateY(-8px);
	box-shadow: 0 22px 45px rgba(0,0,0,0.10);
}

/* Image */
.service .service-item .photo img {
	width: 100%;
	height: 230px;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.service .service-item:hover .photo img {
	transform: scale(1.05);
}

/* Text */
.service .service-item .text {
	background: #f7f7f7;
	padding: 25px 25px 30px;
	text-align: left;
}

.service .service-item .text h3 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 12px;
}

.service .service-item .text h3 a {
	color: #222;
	transition: color 0.3s ease;
}

.service .service-item .text h3 a:hover {
	color: #3867D6;
}

.service .service-item .text p {
	font-size: 15px;
	line-height: 1.7;
	color: #555;
	margin-bottom: 20px;
}

/* Read More */
.service .read-more {
	margin-top: 0;
}

.service .read-more a {
	background: #3867D6;
	border-radius: 50px;
	padding: 10px 32px;
	display: inline-block;
	color: #fff;
	transition: all 0.35s ease;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.service .read-more a:hover {
	background: #333;
}

/* Owl Dots */
.service .owl-dots {
	text-align: center;
	margin-top: 40px;
}

.service .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: transparent;
	border: 2px solid #afafaf;
	border-radius: 50%;
	display: inline-block;
	margin: 0 6px;
	transition: all 0.3s ease;
}

.service .owl-dots .owl-dot.active {
	background: #333;
	border-color: #333;
}

/* Responsive Image Heights */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.service .service-item .photo img {
		height: 200px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.service .service-item .photo img {
		height: 220px;
	}
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
	.service .service-item .photo img {
		height: 320px;
	}
}

@media only screen and (max-width: 575px) {
	.service .service-item .photo img {
		height: auto;
		object-fit: cover;
	}
}






.project {
	/* padding-top: 10px; */
	padding-bottom: 100px;
	overflow: hidden;
}

.project .heading {
	text-align: center;
	margin-bottom: 50px;
}

.project .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
	margin-bottom: 10px;
}

.project .heading h3 {
	font-size: 22px;       
    font-weight: 500;
    color: #777;
}


/* Project card */
.project .project-item {
	background: #fff;
	border-radius: 14px;                /* Card radius */
	overflow: hidden;                  /* Keeps image inside radius */
	margin-bottom: 30px;
	transition: all 0.4s ease;
}

.project .project-item:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

/* Image */
.project .project-item .photo img {
	width: 100%;
	height: 230px;
	object-fit: cover;
	display: block;
	border-top-left-radius: 14px;
	border-top-right-radius: 14px;
}

/* Text area */
.project .project-item .text {
	background: #f2f2f2;
	padding: 25px 25px 30px;
	border-bottom-left-radius: 14px;
	border-bottom-right-radius: 14px;
}

.project .project-item .text h3 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 15px;
	line-height: 1.3;
}

.project .project-item .text h3 a {
	color: #333;
	transition: color 0.3s ease;
}

.project .project-item .text h3 a:hover {
	color: #3867D6;
}

.project .project-item .text p {
	font-size: 15px;
	line-height: 1.7;
	margin-bottom: 20px;
}

.project .read-more {
	margin-top: 10px;
}

.project .read-more a {
	background: #3867D6;
	border: 0;
	border-radius: 50px;
	padding: 10px 30px;
	display: inline-block;
	color: #fff;
	transition: all 0.4s ease;
	font-weight: 600;
	text-transform: uppercase;
}

.project .read-more a:hover {
	background: #333;
}

/* Owl dots */
.project .owl-dots {
	text-align: center;
	margin-top: 35px;
}

.project .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: transparent;
	border: 2px solid #afafaf;
	border-radius: 50%;
	display: inline-block;
	margin: 0 6px;
}

.project .owl-dots .owl-dot.active {
	background: #333;
	color: #333;
}

/* Responsive adjustments */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.project .project-item .photo img {
		height: 200px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.project .project-item .photo img {
		height: 220px;
	}
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
	.project .project-item .photo img {
		height: 320px;
	}
}

@media only screen and (max-width: 575px) {
	.project .project-item {
		margin-bottom: 40px;
	}

	.project .project-item .photo img {
		height: auto;
		object-fit: cover;
	}
}



/* ================= TESTIMONIAL ================= */
.testimonial {
	padding-top: 30px;
	padding-bottom: 40px;
	overflow: hidden;
	background: #3867D6;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
	position: relative;
}

.testimonial-bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #3867D6;
	opacity: 0.85;
}

/* Heading */
.testimonial .heading {
	text-align: center;
	margin-bottom: 60px;
}

.testimonial .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	margin-top: 0;
}

.testimonial .heading h3 {
	font-size: 22px;
	font-weight: 500;
	color: #eaeaea;
	margin-top: 10px;
}

/* Testimonial Item Card */
.testimonial .testimonial-item {
	display: flex;
	justify-content: center;
}

.testimonial .testimonial-item .photo {
	text-align: center;
	margin-bottom: 20px;
}

.testimonial .testimonial-item .photo img {
	width: 90px;
	height: 90px;
	display: inline-block;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid rgba(255,255,255,0.4);
	background: #fff;
}

/* Text Container (Card Feel) */
.testimonial .testimonial-item .text {
	max-width: 700px;
	background: rgba(255,255,255,0.12);
	padding: 35px 40px;
	border-radius: 12px;
	text-align: center;
	backdrop-filter: blur(6px);
}

/* Comment */
.testimonial .testimonial-item .text p {
	font-size: 16px;
	line-height: 1.8;
	color: #fff;
	margin-bottom: 25px;
}

/* Name */
.testimonial .testimonial-item .text h3 {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	position: relative;
	margin-top: 25px;
	margin-bottom: 5px;
}

/* Divider */
.testimonial .testimonial-item .text h3:before {
	content: '';
	position: absolute;
	left: calc(50% - 25px);
	top: -15px;
	width: 50px;
	height: 2px;
	background: #fff;
	opacity: 0.7;
}

/* Designation */
.testimonial .testimonial-item .text h4 {
	font-size: 14px;
	font-weight: 400;
	color: #ddd;
	font-style: italic;
	margin-bottom: 0;
}

/* Owl Dots */
.testimonial .owl-dots {
	text-align: center;
	margin-top: 40px;
}

.testimonial .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: transparent;
	border: 2px solid #fff;
	border-radius: 50%;
	display: inline-block;
	margin: 0 6px;
	transition: all 0.3s ease;
}

.testimonial .owl-dots .owl-dot.active {
	background: #fff;
}

/* Responsive */
@media only screen and (max-width: 992px) {
	.testimonial .testimonial-item .text {
		padding: 25px 20px;
		max-width: 90%;
	}
}








/* Counter */
.counter-area {
	background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    position: relative;
    padding-top: 80px;
    padding-bottom: 90px;
}
.bg-counter {
    position: absolute;
    background: #3867D6;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.8;
}
.counter {
    padding: 0;
}

.count-title {
    font-size: 40px;
    font-weight: 700;
    margin-top: 10px;
    margin-bottom: 0;
    text-align: center;
    color: #fff;
}

.count-text {
    font-size: 18px;
    font-weight: normal;
    margin-top: 0px;
    margin-bottom: 0;
    text-align: center;
    color: #fff;
}

.counter .icon {
	margin-bottom: 20px;
}

.counter .icon .fa-2x {
	width: 70px;
	height: 70px;
	padding-top: 15px;
	text-align: center;
	background: transparent;
	border: 3px solid #fff;
	border-radius: 50%;
    margin: 0 auto;
    float: none;
    display: table;
    color: #fff;
    font-size: 34px;
}




/* Pricing */
.pricing {
	padding-top: 70px;
	padding-bottom: 80px;
	background: #f1f5f9;
	overflow: hidden;
}

.pricing .heading {
	text-align: center;
	margin-bottom: 30px;
}

.pricing .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
}

.pricing .heading h3 {
	font-size: 20px;
	font-weight: 500;
	color: #928f8f;
}

.pricing .card {
	border: none;
	border-radius: 1rem;
	transition: all 0.2s;
	box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
}

.pricing hr {
  	margin: 1.5rem 0;
}

.pricing .card-title {
	margin: 0.5rem 0;
	font-size: 0.9rem;
	letter-spacing: .1rem;
	font-weight: bold;
}

.pricing .card-price {
  	font-size: 3rem;
  	margin: 0;
}

.pricing .card-price .period {
  	font-size: 12px;
}

.pricing ul li {
  	margin-bottom: 16px;
}

.pricing .text-muted {
  	opacity: 0.7;
}

.pricing .btn {
	background: #3867D6;
	font-size: 20px;
	border-radius: 5rem;
	font-weight: 700;
	padding: 10px;
	border: 0;
}
.pricing .btn:hover {
	background: #333;
}

/* Hover Effects on Card */
@media (min-width: 992px) {
  	.pricing .card:hover {
		margin-top: -.25rem;
		margin-bottom: .25rem;
		box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.3);
  	}
  	.pricing .card:hover .btn {
    	opacity: 1;
  	}
}




/* Call To Action */
.cta {
	background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    position: relative;
    padding-top: 70px;
    padding-bottom: 80px;
}
.cta .overlay {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #3867D6;
    opacity: 0.8;
}
.cta .cta-box h2 {
	color: #fff;
	font-size: 36px;
	font-weight: 700;
}
.cta .cta-box p {
	color: #fff;
	font-size: 20px;
}
.cta .cta-box .btn {
    border-radius: 30px;
    padding: 10px 40px;
    /* background: #2563EB; */
    font-size: 20px;
    border: 0;
    margin-top: 30px;
}





/* ================= NEWSLETTER ================= */
.newsletter-area {
    width: 100%;
    height: auto;
    text-align: center;
    /* background: #3867D6; */
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    position: relative;
    padding-top: 70px;
    padding-bottom: 80px;
}

.newsletter-area .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background: #3867D6; */
    opacity: 0.8;
}

.newsletter-text {
    margin-bottom: 30px;
}

.newsletter-text h2 {
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 15px;
}

.newsletter-text p {
    line-height: 1.6;
    font-size: 18px;
    color: #fff;
    max-width: 700px;
    margin: 0 auto;
}

/* Newsletter Form */
.newsletter-button {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.newsletter-button input[type='text'] {
    width: 300px;
    max-width: 90%;
    height: 50px;
    font-size: 15px;
    font-weight: 600;
    color: #333;
    border: none;
    border-radius: 50px; /* smooth rounded edges */
    padding: 0 20px;
    outline: none;
    transition: all 0.3s ease;
}

.newsletter-button input[type='text']:focus {
    box-shadow: 0 0 12px rgba(255,255,255,0.5);
}

.newsletter-button input[type='submit'] {
    width: 120px;
    height: 50px;
    font-size: 15px;
    font-weight: 600;
    background: #333;
    color: #fff;
    border: none;
    border-radius: 50px; /* rounded button */
    cursor: pointer;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.newsletter-button input[type='submit']:hover {
    background: #111115;
    color: #fff;
}

/* Responsive */
@media only screen and (max-width: 768px) {
    .newsletter-button {
        flex-direction: column;
        gap: 15px;
    }

    .newsletter-button input[type='text'],
    .newsletter-button input[type='submit'] {
        width: 90%;
    }
}





/* ============================= */
/* Partner Section (Clean & Small) */
/* ============================= */

/* ============================= */
/* Partner Section (Clean & Small) */
/* ============================= */

/* ============================= */
/* Partner Section (Clean & Small) */
/* ============================= */

.partner-area {
	padding-top: 60px;
	padding-bottom: 80px;
	overflow: hidden;
	background: #ffffff;
}

/* Heading */
.partner-area .heading {
	text-align: center;
	margin-bottom: 40px;
}

.partner-area .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
	margin-bottom: 10px;
}

.partner-area .heading h3 {
	font-size: 22px;
	font-weight: 500;
	color: #777;
	margin-bottom: 30px;
	line-height: 1.4;
}

/* Partner Item */
.partner-item {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 120px; /* slightly bigger logos */
	padding: 10px;
	background: #fff; /* optional: gives clean card feel */
	border-radius: 12px;
	transition: all 0.35s ease;
}

.partner-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0,0,0,0.08);
}

/* Logos */
.partner-item img {
	max-height: 80px;
	max-width: 150px;
	width: auto;
	height: auto;
	object-fit: contain; /* keep original aspect ratio */
	opacity: 0.9;
	transition: all 0.3s ease;
}

.partner-item img:hover {
	opacity: 1;
	transform: scale(1.08);
}

/* Owl Carousel spacing */
.partner-carousel .owl-stage {
	display: flex;
	align-items: center;
}

/* Dots */
.partner-area .owl-dots {
	text-align: center;
	margin-top: 30px;
}

.partner-area .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: transparent;
	border: 2px solid #afafaf;
	border-radius: 50%;
	display: inline-block;
	margin: 0 6px;
	transition: all 0.3s ease;
}

.partner-area .owl-dots .owl-dot.active {
	background: #333;
	border-color: #333;
}

/* Responsive tweaks */
@media (max-width: 1199px) {
	.partner-item {
		height: 110px;
	}

	.partner-item img {
		max-height: 70px;
		max-width: 130px;
	}
}

@media (max-width: 991px) {
	.partner-item {
		height: 100px;
	}

	.partner-item img {
		max-height: 60px;
		max-width: 120px;
	}
}

@media (max-width: 767px) {
	.partner-item {
		height: 90px;
	}

	.partner-item img {
		max-height: 55px;
		max-width: 110px;
	}
}

@media (max-width: 575px) {
	.partner-item {
		height: auto;
		padding: 5px;
	}

	.partner-item img {
		max-height: 50px;
		max-width: 100px;
	}
}







/* Blog Section */
.blog-area {
	padding-top: 70px;
	padding-bottom: 80px;
	overflow: hidden;
}

.blog-area .heading {
	text-align: center;
	margin-bottom: 40px;
}

.blog-area .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
}

.blog-area .heading h3 {
	font-size: 22px;
	font-weight: 500;
	color: #777;
	margin-bottom: 15px;
}

/* Blog Cards */
.blog-item {
	background: #fff;
	border-radius: 12px; /* slight rounded corners */
	overflow: hidden;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.08);
	transition: all 0.4s ease;
}

.blog-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);
}

.blog-item a {
	text-decoration: none;
}

.blog-image {
	position: relative;
	overflow: hidden;
	border-top-left-radius: 12px;
	border-top-right-radius: 12px;
}

.blog-image img {
	width: 100%;
	height: 230px;
	object-fit: cover;
	transform: scale(1);
	transition: transform 0.4s ease;
}

.blog-item:hover .blog-image img {
	transform: scale(1.05);
}

/* Date Badge */
.blog-image .date {
	position: absolute;
	bottom: -26px;
	right: 12px;
	background: #3867D6;
	color: #fff;
	padding: 10px 16px;
	text-align: center;
	border-radius: 8px;
	transition: all 0.4s ease;
}

.blog-item:hover .date {
	bottom: 10px;
}

.blog-image .date h3 {
	font-size: 24px;
	font-weight: 500;
	margin: 0 0 6px 0;
	line-height: 1.1;
	color: #fff;
}

.blog-image .date h4 {
	font-size: 16px;
	font-weight: 400;
	margin: 0;
	line-height: 1.1;
	color: #fff;
}

/* Blog Text */
.blog-text {
	background: #f5f5f5;
	padding: 20px;
	border-bottom-left-radius: 12px;
	border-bottom-right-radius: 12px;
}

.blog-text h3 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px;
	color: #333;
	transition: color 0.3s ease;
}

.blog-text h3 a {
	color: #333;
}

.blog-text h3 a:hover {
	color: #3867D6;
}

/* Limit blog content length */
.blog-text p {
	font-size: 15px;
	color: #555;
	line-height: 1.6;
	margin-bottom: 10px;
	display: -webkit-box;
	-webkit-line-clamp: 3; /* show only 3 lines */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.blog-area .read-more {
	margin-top: 15px;
}

.blog-area .read-more a {
	background: #3867D6;
	border: 0;
	border-radius: 50px;
	padding: 10px 30px;
	display: inline-block;
	color: #fff;
	transition: all 0.4s ease;
	font-weight: 600;
	text-transform: uppercase;
}

.blog-area .read-more a:hover {
	background: #333;
}

/* Blog Owl Dots - Same as Services */
.blog-area .owl-dots {
	text-align: center;
	margin-top: 40px; /* matches services */
}

.blog-area .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: transparent;
	border: 2px solid #afafaf;
	border-radius: 50%;
	display: inline-block;
	margin: 0 6px;
	transition: all 0.3s ease;
}

.blog-area .owl-dots .owl-dot.active {
	background: #333;
	border-color: #333;
}


/* Responsive Images */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.blog-image img { height: 190px; }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.blog-image img { height: 217px; }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
	.blog-image img { height: 335px; }
}

@media only screen and (max-width: 575px) {
	.blog-image img {
		object-fit: cover;
		height: 300px;
	}
}





/* ================================= */
/* Blog Page Cards (Blog Listing) */
/* ================================= */

.blog-page-card{
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    margin-bottom:40px; /* slightly more spacing */
    box-shadow:0 6px 18px rgba(0,0,0,0.08);
    transition:0.3s;
}

.blog-page-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 35px rgba(0,0,0,0.12);
}


/* Image */

.blog-page-image{
    position:relative;
    overflow:hidden;
}

.blog-page-image img{
    width:100%;
    height:320px; /* increased from 240px */
    object-fit:cover;
    transition:0.4s;
}

.blog-page-card:hover .blog-page-image img{
    transform:scale(1.06);
}


/* Date */

.blog-page-date{
    position:absolute;
    bottom:18px;
    left:18px;
    /* background:#3867D6; */
    color:#fff;
    font-size:14px;
    padding:7px 14px;
    border-radius:30px;
}


/* Content */

.blog-page-content{
    padding:30px; /* increased from 25px */
}

.blog-page-content h2{
    font-size:26px; /* increased from 22px */
    font-weight:700;
    margin-bottom:12px;
}

.blog-page-content h2 a{
    color:#333;
}

.blog-page-content h2 a:hover{
    /* color:#3867D6; */
}


/* Description */

.blog-page-content p{
    font-size:16px; /* increased from 15px */
    color:#555;
    line-height:1.7;
    margin-bottom:18px;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}


/* Button */

.blog-page-readmore a{
    /* background:#3867D6; */
    color:#fff;
    padding:10px 26px; /* slightly bigger */
    border-radius:30px;
    font-size:14px;
    font-weight:600;
    display:inline-block;
    transition:0.3s;
}

.blog-page-readmore a:hover{
    background:#333 !important;
}



.blog-page-image img {
    width: 100%;           /* full width of card */
    /* max-width: 600px;       */
    height: 400px;         /* consistent height for cards */
    object-fit: cover;     /* crop excess, maintain aspect ratio */
    border-radius: 12px;   /* match your card styling */
    transition: transform 0.4s ease;
}

/* Optional: scale on hover */
.blog-page-card:hover .blog-page-image img {
    transform: scale(1.06);
}

/* Responsive: shrink height on smaller screens */
@media only screen and (max-width: 768px) {
    .blog-page-image img {
        height: 250px;     /* smaller card height for phones */
    }
}










/* Partner */
/* .partner {
	padding-top: 70px;
	padding-bottom: 80px;
	overflow: hidden;
}

.partner .heading {
	text-align: center;
	margin-bottom: 30px;
}

.partner .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
}

.partner .heading h3 {
	font-size: 20px;
	font-weight: 500;
	color: #928f8f;
	margin-bottom: 15px;
}

.partner .partner-carousel {
	position: relative;
}

.partner-carousel .inner {
	padding-left: 20px;
	padding-right: 20px;
} */


/* Scroll to Top */
.scroll-top {
	cursor: pointer;
	text-align: center;
	font-size: 22px;
	position: fixed;
	width: 50px;
	height: 50px;
	line-height: 46px;
	bottom: 46px;
	right: 20px;
	background: #3867D6;
	color: #fff;
	opacity: 0.85;
	z-index: 9999;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
	transition: all 0.35s ease;
}

.scroll-top:hover {
	opacity: 1;
	color: #fff;
	background: #313131;
	transform: translateY(-4px);
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.35);
}





/* ================= FOOTER ================= */
.footer-area {
    padding-top: 60px;
    padding-bottom: 50px;
    background: #111115;
    color: #c7c7c7;
}

/* Footer Items */
.footer-item {
    margin-top: 30px;
}

.footer-item h2 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 25px;
    color: #ffffff;
    position: relative;
}

/* Small underline under heading */
.footer-item h2::after {
    content: "";
    width: 40px;
    height: 2px;
    /* background: #3867D6; */
    display: block;
    margin-top: 8px;
}

/* Footer Links */
.footer-item ul {
    padding: 0;
    margin: 0;
}

.footer-item ul li {
    list-style: none;
    margin-bottom: 10px;
}

.footer-item ul li a {
    font-size: 15px;
    color: #c7c7c7;
    transition: all 0.3s ease;
}

.footer-item ul li a:hover {
    color: #3867D6;
    padding-left: 6px;
}

/* FontAwesome bullet for services */
.footer-item ul.fmain li::before {
    font-family: 'Font Awesome 5 Free';
    content: '\f058';
    font-weight: 900;
    margin-right: 8px;
    /* color: #3867D6; */
}

/* Contact Info */
.footer-contact ul li {
    position: relative;
    padding-left: 28px;
    font-size: 15px;
    margin-bottom: 10px;
}

.footer-contact ul li::before {
    font-family: 'Font Awesome 5 Free';
    position: absolute;
    left: 0;
    top: 0;
    color: #3867D6;
    font-size: 16px;
}



.footer-contact ul li:nth-child(1)::before {
    font-family: "Font Awesome 5 Free"; /* Must be exact */
    font-weight: 900; /* Solid icons */
    content: "\f3c5"; /* Map marker icon */
    margin-right: 8px;
    /* color: #3867D6; */
}

.footer-contact ul li:nth-child(2)::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0e0"; /* Envelope icon */
    margin-right: 8px;
    /* color: #3867D6; */
}

.footer-contact ul li:nth-child(3)::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f095"; /* Phone icon */
    margin-right: 8px;
    /* color: #3867D6; */
}


/* Social Icons */
.footer-social-link ul {
    padding: 0;
    margin: 0;
}

.footer-social-link ul li {
    display: inline-block;
    margin-right: 10px;
}

.footer-social-link ul li a {
    width: 36px;
    height: 36px;
    line-height: 36px;
    display: inline-block;
    text-align: center;
    background: #3867D6;
    color: #fff;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.footer-social-link ul li a:hover {
    background: #ffffff;
    color: #3867D6;
    transform: translateY(-3px);
}

/* Footer Bottom */
.footer-end {
    border-top: 1px solid rgba(255,255,255,0.1);
    margin-top: 40px;
    padding-top: 20px;
}

/* Copyright */
.copyright p {
    margin: 0;
    font-size: 14px;
    color: #c7c7c7;
}

/* Footer Pages */
.footer-pages ul {
    margin: 0;
    padding: 0;
    float: right;
}

.footer-pages ul li {
    display: inline-block;
}

.footer-pages ul li a {
    font-size: 14px;
    color: #c7c7c7;
    margin-left: 20px;
    transition: color 0.3s ease;
}

.footer-pages ul li a:hover {
    color: #ffffff;
}

/* Responsive */
@media (max-width: 767px) {
    .footer-pages ul {
        float: none;
        text-align: center;
        margin-top: 15px;
    }

    .copyright {
        text-align: center;
    }
}



/* Page Banner */
.page-banner {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
}

.bg-page {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #333;
	opacity: 0.7;
}

.page-banner .text {
	text-align: center;
	padding-top: 70px;
	padding-bottom: 70px;
	position: relative;
	z-index: 99;
}

.page-banner .text h1 {
	color: #fff;
	font-size: 36px;
	font-weight: 700;
	margin: 0!important;
}

.page-banner .breadcrumb {
	background-color: transparent;
	text-align: center;
	margin-bottom: 0;
}

.page-banner .breadcrumb-item {
	color: #bdbaba;
	font-weight: 600;
	font-size: 18px;
}

.page-banner .breadcrumb-item a {
	color: #fff;
}

.page-banner .breadcrumb-item a:hover {
	color: #f3f3f3;
}

.page-banner .breadcrumb-item::before {
	color: #fff!important;
}

@media only screen and (max-width: 991px) {
	.page-banner .text {
		padding-top: 125px;
	}
}




/* Page Content */
.page-content {
	padding-top: 30px;
	padding-bottom: 30px;
	overflow: hidden;
}

.page-content h1,
.page-content h2,
.page-content h3,
.page-content h4,
.page-content h5,
.page-content h6 {
	margin-bottom: 20px!important;
}

.page-content ul,
.page-content ol {
	margin-bottom: 20px;
}

/* .page-content ul li {
	list-style-type: none;
	position: relative;
	background-image: url(../images/tick.png);
	background-size: 16px 16px;
	background-position: 0 4px;
	background-repeat: no-repeat;
	padding-left: 25px;
	margin-bottom: 10px;
} */

.page-content ul.content-list li {
    background-image: url(../images/tick.png);
    background-size: 16px 16px;
    background-position: 0 4px;
    background-repeat: no-repeat;
    padding-left: 25px;
    margin-bottom: 10px;
}

.page-content ol li {
	margin-bottom: 15px;
}


/* Single Section */
.single-section .blog-item {
	margin-bottom: 50px;
}

.single-section h2 {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #333;
}

.single-section h2 a {
	color: #333;
}

.single-section h3 {
	font-size: 18px;
	color: #3867D6;
}

.single-section .featured-photo {
	margin-bottom: 30px;
}

.single-section .featured-photo img {
	width: 100%;
	height: auto;
	border-radius: 10px;
}

.single-section .read-more {
	margin-top: 30px;
}

.single-section .read-more a {
	background: #3867D6;
	border: 0;
	border-radius: 50px;
	padding: 10px 30px;
	display: inline-block;
	color: #fff;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
	font-weight: 600;
	text-transform: uppercase;
}

.single-section .read-more a:hover {
	background: #333;
}

@media only screen and (max-width: 767px) {
	.single-section {
		margin-bottom: 30px;
	}
}


/* =============================== */
/* Sidebar */
/* =============================== */

.sidebar .widget{
    padding:25px;
    background:#f8fafc;
    margin-bottom:30px;
    border-radius:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.06);
    transition:0.3s;
}

.sidebar .widget:hover{
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
}


/* Widget Titles */

.sidebar .widget h3{
    font-size:20px;
    font-weight:700;
    margin-bottom:20px;
    position:relative;
    padding-bottom:10px;
}

.sidebar .widget h3:after{
    content:'';
    position:absolute;
    left:0;
    bottom:0;
    width:40px;
    height:3px;
    background:#3867D6;
    border-radius:2px;
}


/* =============================== */
/* Category List */
/* =============================== */

.sidebar .widget .type-1 ul{
    padding-left:0;
    margin:0;
}

.sidebar .widget .type-1 ul li{
    list-style:none;
    padding-left:28px;
    position:relative;
    margin-bottom:12px;
}

.sidebar .widget .type-1 ul li:before{
    content:'\f058';
    font-family:'Font Awesome 5 Free';
    font-weight:900;
    position:absolute;
    left:0;
    top:1px;
    color:#3867D6;
    font-size:14px;
}

.sidebar .widget .type-1 ul li a{
    color:#333;
    transition:0.3s;
}

.sidebar .widget .type-1 ul li a:hover{
    color:#3867D6;
}


/* =============================== */
/* Recent Posts */
/* =============================== */

.sidebar .widget .type-2 ul{
    padding:0;
    margin:0;
}

.sidebar .widget .type-2 ul li{
    list-style:none;
    display:flex;
    align-items:center;
    margin-bottom:15px;
    padding-bottom:15px;
    border-bottom:1px solid #eee;
}

.sidebar .widget .type-2 ul li:last-child{
    border-bottom:none;
    margin-bottom:0;
    padding-bottom:0;
}

.sidebar .widget .type-2 img{
    width:70px;
    height:60px;
    border-radius:8px;
    margin-right:12px;
    object-fit:cover;
}

.sidebar .widget .type-2 ul li a{
    color:#333;
    font-size:15px;
    line-height:1.4;
    transition:0.3s;
}

.sidebar .widget .type-2 ul li a:hover{
    color:#3867D6;
}


/* =============================== */
/* Search */
/* =============================== */

.sidebar .widget .search input{
    border-radius:30px 0 0 30px;
    border:1px solid #ddd;
}

.sidebar .widget .search button{
    background:#3867D6;
    border:0;
    width:45px;
    border-radius:0 30px 30px 0;
    transition:0.3s;
}

.sidebar .widget .search button i{
    color:#fff;
}

.sidebar .widget .search button:hover{
    background:#333;
}


/* =============================== */
/* Buttons */
/* =============================== */

.sidebar .widget .type-3 button{
    border:0;
    background:#3867D6;
    border-radius:30px;
    padding:10px 28px;
    font-weight:600;
    text-transform:uppercase;
    transition:0.3s;
}

.sidebar .widget .type-3 button:hover{
    background:#333;
}


/* =============================== */
/* Project Details */
/* =============================== */

.sidebar .widget .project-detail .item{
    margin-bottom:20px;
}

.sidebar .widget .project-detail .item h4{
    color:#333;
    font-size:16px;
    font-weight:600;
    margin-bottom:4px!important;
}

.sidebar .widget .project-detail .item p{
    color:#666;
    font-size:14px;
}






/* =========================
   TEAM SECTION (GLOBAL)
========================= */

.team {
	padding-top: 70px;
	padding-bottom: 80px;
	overflow: hidden;
	background: #f7f9fc;
}

/* Section heading (Home page) */
.team .heading {
	text-align: center;
	margin-bottom: 40px;
}

.team .heading h2 {
	font-size: 36px;
	font-weight: 700;
	color: #333;
	margin: 0;
}

.team .heading h3 {
	font-size: 22px;
	font-weight: 500;
	color: #777;
	margin-top: 8px;
}

/* =========================
   TEAM CARD
========================= */

.team-item {
	margin-top: 30px;
	background: #ffffff;
	border-radius: 6px;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	box-shadow: 0 6px 15px rgba(0,0,0,0.08);
	transition: all 0.35s ease;
}

.team-item:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 28px rgba(0,0,0,0.14);
}

/* =========================
   TEAM PHOTO
========================= */

.team-photo {
	position: relative;
	overflow: hidden;
}

.team-photo img {
	width: 100%;
	height: 290px;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.team-item:hover .team-photo img {
	transform: scale(1.06);
}

/* Light shine hover effect */
.team-photo::after {
	content: '';
	position: absolute;
	top: -120%;
	left: -120%;
	width: 240%;
	height: 240%;
	background: linear-gradient(
		120deg,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0.35) 50%,
		rgba(255,255,255,0) 100%
	);
	transform: rotate(25deg);
	transition: all 0.6s ease;
}

.team-item:hover .team-photo::after {
	top: -60%;
	left: -60%;
}

/* =========================
   TEAM TEXT
========================= */

.team-text {
	text-align: center;
	background: #3867D6;
	padding: 20px 15px;
	color: #ffffff;
}

.team-text h4 {
	font-size: 19px;
	font-weight: 600;
	margin: 0 0 6px 0;
}

.team-text h4 a {
	color: #ffffff;
	text-decoration: none;
	transition: color 0.3s ease;
}

.team-text h4 a:hover {
	color: #e9ecff;
}

.team-text p {
	margin: 0;
	font-size: 14px;
	color: #e3e6ff;
}

/* =========================
   TEAM SOCIAL (SCOPED SAFELY)
   Only affects team cards
========================= */

.team-item .team-social {
	margin-top: 14px;
}

.team-item .team-social ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.team-item .team-social li {
	margin: 0 6px;
}

.team-item .team-social li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	font-size: 14px;
	color: #ffffff;
	background: rgba(255,255,255,0.18);
	border-radius: 50%;
	transition: all 0.3s ease;
}

.team-item .team-social li a:hover {
	background: #333 !important;
	/* color: #3867D6; */
}

/* =========================
   OWL DOTS (HOME CAROUSEL)
========================= */

.team .owl-dots {
	text-align: center;
	margin-top: 35px;
}

.team .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: transparent;
	border: 2px solid #afafaf;
	display: inline-block;
	margin: 0 5px;
	transition: all 0.3s ease;
}

.team .owl-dots .owl-dot.active {
	background: #333;
	border-color: #333;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1199px) {
	.team-photo img {
		height: 280px;
	}
}

@media (max-width: 991px) {
	.team-photo img {
		height: 320px;
	}
}

@media (max-width: 767px) {
	.team-photo img {
		height: 380px;
	}
}

@media (max-width: 575px) {
	.team-photo img {
		height: 300px;
	}
}

/* =========================
   TEAM MEMBER DETAIL – PRO UI
========================= */

/* Photo card */
.team-member-photo {
    background: #fff;
    padding: 12px;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

.team-member-photo img {
    width: 100%;
    border-radius: 6px;
}

/* Details card */
.team-single .table-responsive {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    padding: 10px;
    overflow-x: auto; /* Makes table scrollable on small screens */
}

/* Modern table look */
.team-single table {
    margin-bottom: 0;
    width: 100%;
    border-collapse: collapse;
}

.team-single table tr {
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.3s ease;
}

.team-single table tr:last-child {
    border-bottom: none;
}

.team-single table tr:hover {
    background: #f8f8f8;
}

.team-single table td {
    padding: 14px 16px;
    vertical-align: top;
    font-size: 15px;
    word-break: break-word;
    overflow-wrap: anywhere;
}

/* Labels (left column) */
.team-single table td:first-child {
    width: 180px;
    font-weight: 600;
    color: #555;
    background: #f8f9fb;
}

/* Values (right column) */
.team-single table td:last-child {
    color: #333;
}

/* Social icons */
.doc_detail_social {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.doc_detail_social li a i {
    width: 38px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    background: #3867D6;
    color: #fff;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.doc_detail_social li a:hover i {
    background: #222;
    transform: translateY(-2px);
}

/* Tabs section card */
.description {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    padding: 20px;
}

/* Video responsive */
.description iframe {
    max-width: 100%;
    border-radius: 6px;
}

/* =========================
   Mobile adjustments
========================= */
@media (max-width: 767px) {

    .team-member-photo {
        margin-bottom: 20px;
    }

    /* Table responsive: labels stack above values */
    .team-single table td {
        display: block;
        width: 100%;
        padding: 10px 12px;
        font-size: 14px;
    }

    .team-single table td:first-child {
        width: 100%;
        font-weight: 600;
        background: transparent;
        margin-top: 10px;
    }

    .team-single table td:last-child {
        width: 100%;
        margin-bottom: 10px;
    }
}


    /* Product Card */
.product-card {
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transition: transform 0.3s, box-shadow 0.3s;
    background-color: #fff;
    display: flex;
    flex-direction: column;
}

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

/* Image */
.product-image-wrapper {
    position: relative;
    overflow: hidden;
}

.product-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform 0.3s;
}

.product-card:hover .product-image img {
    transform: scale(1.05);
}

/* Badges */
.product-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #e60023;
    color: #fff;
    font-size: 0.8rem;
    padding: 4px 8px;
    border-radius: 6px;
    font-weight: 600;
    text-transform: uppercase;
}

.product-badge.sale { background-color: #007bff; }
.product-badge.out-stock { background-color: #6c757d; }

/* Hover Icons */
.product-hover-icons {
    position: absolute;
    bottom: 10px;
    right: 10px;
    display: flex;
    gap: 8px;
    opacity: 0;
    transition: opacity 0.3s;
}

.product-card:hover .product-hover-icons {
    opacity: 1;
}

.product-hover-icons a,
.product-hover-icons button {
    background: rgba(0,0,0,0.6);
    color: #fff;
    padding: 8px;
    border-radius: 50%;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
}

.product-hover-icons a:hover,
.product-hover-icons button:hover {
    background: #e60023;
}

/* Product Info */
.product-content {
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.product-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 8px;
}

.product-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s;
}

.product-title a:hover {
    color: #007bff;
}

/* Price */
.product-price {
    margin-bottom: 10px;
    font-size: 0.95rem;
}

.product-price .old-price {
    text-decoration: line-through;
    color: #999;
    margin-right: 6px;
}

.product-price .current-price {
    font-weight: 700;
    color: #e60023;
}

/* Add to Cart */
.product-cart-btn button {
    padding: 10px 0;
    border-radius: 8px;
    font-weight: 600;
    transition: background-color 0.3s, transform 0.2s;
}

.product-cart-btn button:hover:not(:disabled) {
    background-color: #0056b3;
    transform: translateY(-2px);
}

.product-cart-btn button:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

/* Pagination */
.page-content .pagination {
    justify-content: center;
    margin-top: 20px;
}

/* Shop Header: Showing results + Sort */
.row.mb-4.align-items-center {
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 12px;
    margin-bottom: 24px !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.row.mb-4.align-items-center p {
    font-size: 0.95rem;
    color: #555;
    margin-bottom: 0;
}

.row.mb-4.align-items-center p strong {
    color: #222;
}

/* Sort Dropdown */
.row.mb-4.align-items-center select.form-select {
    padding: 6px 12px;
    border-radius: 8px;
    border: 1px solid #ccc;
    min-width: 160px;
    font-size: 0.9rem;
    transition: all 0.3s;
}

.row.mb-4.align-items-center select.form-select:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 6px rgba(0,123,255,0.3);
}

/* Responsive adjustments for mobile */
@media (max-width: 767px) {
    .row.mb-4.align-items-center {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .row.mb-4.align-items-center select.form-select {
        width: 100%;
    }
}







/* Portfolio Carousel */
.project-photo-carousel {
	overflow: hidden;
	margin-top: 30px;
	border-radius: 10px;
}

.project-photo-carousel .owl-nav .owl-prev,
.project-photo-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	top: 50%;
	width: 40px;
	height: 50px;
	line-height: 48px;
	background: #3867D6;
	color: #fff;
	margin-top: -25px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	border-radius: 10px;
}

.project-photo-carousel .owl-nav .owl-prev {
	left: 0;
}

.project-photo-carousel .owl-nav .owl-next {
	right: 0;
}

.project-photo-carousel .owl-nav .owl-prev:hover,
.project-photo-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.single-project .iframe-container {
	overflow: hidden;
	clear: both;
	border-radius: 10px;
}

.single-project iframe {
	width: 100%;
	height: 400px;
	border-radius: 10px;
}

.single-project img.featured-photo {
	width: 100%;
	height: auto;
	border-radius: 10px;
}

.project-photo-carousel .p-item {
	position: relative;
}

.project-photo-carousel .p-item .p-item-bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
    opacity: 0;
    background: #333;
    z-index: 9;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.project-photo-carousel .p-item:hover .p-item-bg {
	opacity: 0.6;
}

.project-photo-carousel .p-item .plus-icon {
	visibility: hidden;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	line-height: 100%;
	text-align: center;
	z-index: 99;
	font-size: 30px;
	color: #fff;
}

.project-photo-carousel .p-item:hover .plus-icon {
	visibility: visible;
	display: flex;
	align-items: center;
  	justify-content: center;
}

.project-photo-carousel .p-item img {
	width: 100%;
	height: 440px;
	object-fit: cover;
}








/* Comment */
.comment button {
	border: 0;
	background: #3867D6;
	border-radius: 50px;
	padding: 10px 30px;
	font-weight: 600;
	text-transform: uppercase;
}

.comment > h2 {
	margin-bottom: 30px!important;
}

.comment button:hover {
	background: #333;
}

.comment-item {
	margin-bottom: 20px;
	display: flex;
	justify-content: left;
}

.comment-item .photo {
	width: 70px;
	margin-right: 15px;
}

.comment-item .photo img {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	border: 2px solid #ddd;
}

.comment-item .text h4 {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 5px!important;
}

.comment-item .text .date {
	font-size: 14px;
	color: #848484;
	margin-bottom: 15px;
}

.comment-item .text .des {
	font-size: 14px;
}




/* Career Page - Scoped Styling */
.career .career-main-item {
    background: #ffffff; /* cleaner white background */
    margin-bottom: 30px;
    padding: 20px; /* slightly more padding */
    border: 1px solid #e0e0e0; /* lighter border for modern look */
    border-radius: 10px; /* rounded corners */
    box-shadow: 0 4px 12px rgba(0,0,0,0.05); /* subtle shadow */
    transition: transform 0.3s, box-shadow 0.3s;
}

.career .career-main-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}

.career .career-main-item h3 {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 8px !important;
    color: #1e40af; /* more corporate blue */
}

.career .career-main-item h4 {
    font-size: 16px;
    font-weight: 600;
    color: #555;
    margin-bottom: 15px;
}

.career .career-main-item p {
    font-size: 15px;
    line-height: 1.6;
    color: #333;
    margin-bottom: 20px;
}

.career .career-main-item .long {
    margin-top: 10px;
}

.career .career-main-item .btn {
    border-radius: 50px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 10px 15px;
    transition: all 0.3s ease;
}

.career .career-main-item .btn-secondary {
    background: #e2e8f0; /* light subtle background */
    color: #1e40af; /* text color matching titles */
    border: none;
}

.career .career-main-item .btn-secondary i {
    margin-right: 5px;
}

.career .career-main-item .btn-secondary:hover {
    background: #dbeafe;
}

.career .career-main-item .btn-success {
    background: #10b981;
    border: none;
    color: #fff;
}

.career .career-main-item .btn-success:hover {
    background: #059669;
}

.career .career-main-item .btn-danger {
    background: #ef4444;
    border: none;
    color: #fff;
}

.career .career-main-item .btn-danger:hover {
    background: #b91c1c;
}





/* Job Detail Page Styling */
.career-detail-page {
    font-family: 'Inter', sans-serif;
    color: #1f2937; /* dark gray text for readability */
}

/* Main Job Detail Section */
.career-detail-page .career-detail {
    background: #ffffff;
    padding: 25px;
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 30px;
}

.career-detail-page .career-detail .item {
    margin-bottom: 25px;
}

.career-detail-page .career-detail .item h3 {
    font-size: 22px;
    font-weight: 700;
    color: #1e40af; 
    margin-bottom: 12px;
}

.career-detail-page .career-detail .item p,
.career-detail-page .career-detail .item li {
    font-size: 15px;
    line-height: 1.7;
    color: #374151; /* medium gray for text */
}

/* List Items - Improved bullets */
.career-detail-page .career-detail .item ul {
    padding-left: 15px;
}

.career-detail-page .career-detail .item ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
    list-style-type: square;
    list-style-position: outside;
}




/* Apply Button */
.career-detail-page .career-detail .btn-arf {
    background: #10b981; /* corporate green */
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 12px 25px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.career-detail-page .career-detail .btn-arf:hover {
    background: #059669;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* Sidebar */
.career-detail-page .career-sidebar .widget {
    background: #f8fafc;
    padding: 20px;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    margin-bottom: 30px;
}

.career-detail-page .career-sidebar .widget h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1e40af;
}

.career-detail-page .career-sidebar .career-detail-sidebar .item {
    margin-bottom: 15px;
}

.career-detail-page .career-sidebar .career-detail-sidebar .item h4 {
    font-size: 16px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 5px;
}

.career-detail-page .career-sidebar .career-detail-sidebar .item p {
    font-size: 14px;
    color: #6b7280; /* lighter gray for sidebar values */
}

.job-map {
    margin-top: 10px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}



/* Responsive tweaks */
@media (max-width: 768px) {
    .career-detail-page .career-detail .item h3 {
        font-size: 20px;
    }
    .career-detail-page .career-sidebar .widget h3 {
        font-size: 18px;
    }
}




/* Job Application Page Styling */
.job-application-page {
    font-family: 'Inter', sans-serif;
    color: #1f2937;
}





.job-application-page .breadcrumb a {
    color: #fff; text-decoration: none; transition: color 0.3s;
}
.job-application-page .breadcrumb a:hover {
    color: #dbeafe;
}

/* Form Container */
.job-application-page .career-sidebar .widget {
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 6px 20px rgba(0,0,0,0.05);
    margin-bottom: 30px;
}

.job-application-page .career-sidebar .widget h3 {
    font-size: 22px;
    font-weight: 700;
    color: #1e40af;
    margin-bottom: 25px;
    border-bottom: 2px solid #3b82f6;
    display: inline-block;
    padding-bottom: 5px;
}

/* Form Fields */
.job-application-page .form-group label {
    font-weight: 600;
    color: #374151;
    margin-bottom: 5px;
}

.job-application-page .form-control {
    border-radius: 8px;
    border: 1px solid #d1d5db;
    padding: 10px 12px;
    transition: all 0.3s ease;
}

.job-application-page .form-control:focus {
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59,130,246,0.2);
}

/* Textarea */
.job-application-page textarea.form-control {
    min-height: 150px;
    resize: vertical;
}

/* File Input */
.job-application-page input[type="file"] {
    border: 1px solid #d1d5db;
    border-radius: 8px;
    padding: 6px;
}

/* Submit Button */
.job-application-page .button_final {
    background: #10b981;
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 12px 25px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s ease;
    cursor: pointer;
}

.job-application-page .button_final:hover:not(:disabled) {
    background: #059669;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.job-application-page .button_final:disabled {
    background: #94d3b8;
    cursor: not-allowed;
}

/* Checkbox */
.job-application-page .custom-control-label {
    font-weight: 500;
    color: #374151;
}
.job-application-page .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #3b82f6;
    border-color: #3b82f6;
}

/* Responsive */
@media (max-width: 768px) {
    .job-application-page .page-banner {
        padding: 70px 15px;
    }

    .job-application-page .career-sidebar .widget {
        padding: 20px;
    }

    .job-application-page .form-group label {
        font-size: 14px;
    }

    .job-application-page .form-control {
        font-size: 14px;
        padding: 8px 10px;
    }

    .job-application-page .button_final {
        padding: 10px 20px;
        font-size: 14px;
    }
}




/* ================= FAQ ================= */
.faq-intro {
	margin-bottom: 20px;
	font-size: 16px;
	line-height: 1.7;
	color: #333;
}

/* Card style */
.faq-card {
	background: #fff;
	border-radius: 12px;
	margin-bottom: 15px;
	box-shadow: 0 6px 20px rgba(0,0,0,0.08);
	overflow: hidden;
	transition: transform 0.3s ease;
}

.faq-card:hover {
	transform: translateY(-2px);
}

/* Header button */
.faq-button {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	background: #3867D6;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	padding: 16px 20px;
	border: none;
	border-radius: 0;
	text-align: left;
	cursor: pointer;
	transition: background 0.3s;
}

.faq-button:hover {
	background: #2f50b5;
}

/* Icon */
.faq-icon i {
	font-size: 20px;
	transition: transform 0.3s;
}

/* Rotate icon when expanded */
.collapse.show + .faq-body + .faq-icon i,
.faq-button[aria-expanded="true"] .faq-icon i {
	transform: rotate(45deg);
}

/* Body content */
.faq-body {
	background: #f9f9f9;
	padding: 20px;
	color: #333;
	font-size: 15px;
	line-height: 1.6;
	border-top: 1px solid #e0e0e0;
	transition: all 0.35s ease;
}

/* Nested lists */
.faq-body ul,
.faq-body ol {
	padding-left: 20px;
}

.faq-body li {
	margin-bottom: 8px;
}

/* Responsive */
@media only screen and (max-width: 768px) {
	.faq-button {
		font-size: 16px;
		padding: 14px 16px;
	}

	.faq-body {
		font-size: 14px;
		padding: 16px;
	}
}




/* Order Bottom */
.order-bottom {
	margin-top: 30px;
	background: #fff;
}
.order-bottom .panel-body {
	padding-left: 0!important;
	padding-right: 0!important;
}

.order-bottom .panel-body ol li,
.order-bottom .panel-body ul li {
	list-style-position: inside;
}

.order-bottom .panel {
	box-shadow: none!important;
	border-radius: 0!important;
	margin-bottom: 10px;
}

.order-bottom .panel-group {
	margin-bottom: 40px;
}

.order-bottom .panel-default>.panel-heading {
	background: #eee;
	color: #333;
	padding: 0;
	border-radius: 0;
	border: 1px solid #eee;
	position: relative;
}

.order-bottom .panel-group .panel-heading a:after {
	content: '\f068';
	font-family: 'FontAwesome';
	position: absolute;
	font-weight: normal;
	right: 20px;
	top: 13px;
	font-size: 14px;
}

.order-bottom .panel-group .panel-heading a.collapsed:after {
  	content: '\f067';
  	font-family: 'FontAwesome';
  	font-size: 14px;
}
.order-bottom h4.panel-title {
	margin-bottom: 0!important;
	border: 1px solid #3867D6;
}
.order-bottom h4.panel-title a {
	display: block;
	padding: 10px 15px;
	font-size: 18px;
	font-weight: 700;
	background: #f3f3f3;
	color: #3867D6;
}

.order-bottom .panel-body {
	border-top: 0;
	padding: 15px;
	border-top: 0;
}




/* =========================
   Contact Info Boxes
========================= */

.contact-item {
    text-align: center;
    border: 1px solid #e8e8e8;
    min-height: 180px;
    position: relative;
    background: #ffffff;
    padding: 40px 20px 25px;
    margin-top: 70px;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.contact-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

/* Icon */

.contact-icon {
    position: absolute;
    width: 80px;
    height: 80px;
    line-height: 80px;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    color: #3867D6;
    border-radius: 50%;
    border: 2px solid #e8e8e8;
    transition: all 0.3s ease;
}

.contact-icon i {
    font-size: 30px;
}

.contact-item:hover .contact-icon {
    background: #3867D6;
    color: #ffffff;
    border-color: #3867D6;
}

/* Text */

.contact-text h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
}

.contact-text p {
    margin: 0;
    color: #555;
}


/* =========================
   Contact Form
========================= */

.contact-form {
    margin-top: 50px;
    margin-bottom: 60px;
}

.contact-form form {
    background: #ffffff;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

/* Title */

.contact-form-title {
    font-weight: 700;
    font-size: 24px;
    text-align: center;
    margin-bottom: 30px;
    position: relative;
}

.contact-form-title:after {
    content: "";
    width: 60px;
    height: 3px;
    background: #3867D6;
    display: block;
    margin: 10px auto 0;
}


/* Labels */

.contact-form label {
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
}


/* Inputs */

.contact-form .form-control {
    border-radius: 6px;
    border: 1px solid #ddd;
    padding: 12px 14px;
    font-size: 14px;
    transition: all 0.25s ease;
}

.contact-form .form-control:focus {
    border-color: #3867D6;
    box-shadow: 0 0 0 3px rgba(56,103,214,0.08);
}


/* Textarea */

.contact-form textarea {
    height: 190px;
    resize: none;
}


/* Button */

.contact-form button {
    background: #3867D6;
    border: none;
    border-radius: 40px;
    padding: 12px 32px;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.contact-form button:hover {
    background: #2f54b6;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}


/* Recaptcha */

.contact-form .g-recaptcha {
    margin-top: 10px;
    margin-bottom: 20px;
}


/* =========================
   Responsive
========================= */

@media (max-width: 768px) {

    .contact-form form {
        padding: 25px;
    }

    .contact-item {
        margin-top: 60px;
    }

}


/* ================================
   Enhanced Photo Gallery
   ================================ */

.gallery-photo {
    position: relative;
    margin-bottom: 30px;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Card hover lift */
.gallery-photo:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 26px rgba(0,0,0,0.15);
}

/* Image styling */
.gallery-photo img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.4s ease;
}

/* Zoom effect */
.gallery-photo:hover img {
    transform: scale(1.08);
}

/* Overlay background */
.gallery-photo .gallery-photo-bg {
    position: absolute;
    inset: 0;
    opacity: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1;
    transition: opacity 0.4s ease;
}

.gallery-photo:hover .gallery-photo-bg {
    opacity: 1;
}

/* Plus icon overlay */
.gallery-photo .plus-icon {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    color: #fff;
    opacity: 0;
    z-index: 2;
    transform: scale(0.8);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Icon animation */
.gallery-photo:hover .plus-icon {
    opacity: 1;
    transform: scale(1);
}

/* ================================
   Responsive Adjustments
   ================================ */

@media (max-width: 1199px) {
    .gallery-photo img { height: 220px; }
}

@media (max-width: 991px) {
    .gallery-photo img { height: 240px; }
}

@media (max-width: 767px) {
    .gallery-photo img { height: 300px; }
}

@media (max-width: 575px) {
    .gallery-photo img {
        height: auto;
        object-fit: cover;
    }
}



/* Video Gallery */
.video-item {
    margin-bottom: 40px;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Hover effect */
.video-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.15);
}

/* Video iframe */
.video-item iframe {
    width: 100%;
    height: 320px;
    border: none;
    display: block;
}

/* Caption area */
.video-item .video-caption {
    padding: 15px 18px;
    font-weight: 600;
    font-size: 16px;
    color: #333;
    background: #f9fafb;
    border-top: 1px solid #eee;
}





/* Product */
.product-item {
	margin-bottom: 80px!important;
}

.product-item .photo img {
	width: 100%;
	height: 270px;
	object-fit: cover;
	border: 1px solid #e3e3e3;
}

.product-item .text h3 {
	font-size: 20px;
	font-weight: 700;
	margin-top: 15px;
	margin-bottom: 10px!important;
}

.product-item .text h3 a {
	color: #333;
}

.product-item .text h3 a:hover {
	color: #3867D6;
}

.product-item .text .price {
	margin-bottom: 15px;
	font-weight: 500;
	font-size: 18px;
}

.product-item .text .price del {
	color: red;
}
.product-item .text .cart-button {
	overflow: hidden;
}
.product-item .text .cart-button a,
.product-item .text .cart-button input[type="submit"] {
	background: #3867D6;
	color: #fff;
	border-radius: 30px;
	padding: 10px 20px;
	font-size: 14px;
	border: 0;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
	display: inline-block;
}

.product-item .text button {
	width: 100%;
	background: #3867D6;
	color: #fff;
	border-radius: 30px;
	padding: 10px 20px;
	font-size: 14px;
	border: 0;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
	display: inline-block;
}

.product-item .text button i {
	font-size: 14px;
}

.product-item .text .cart-button a.stock-empty {
	background: #ead1d1;
	color: #ff0000;
}

.product-item .text .cart-button a.stock-empty:hover {
	background: #ead1d1;
	color: #ff0000;
}

.product-item .text .cart-button a:hover,
.product-item .text .cart-button input[type="submit"]:hover {
	background: #333;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.product-item .photo img {
		height: 220px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.product-item .photo img {
		height: 347px;
	}
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
	.product-item .photo img {
		height: 540px;
	}
}

@media only screen and (max-width: 575px) {
	.product-item .photo img {
		object-fit: fill;
		height: auto;
	}
}


input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
    -webkit-appearance: none;
    margin: 0;
}




/* Product Detail */
.product-detail .photo img {
	width: 100%;
	height: auto;
	border: 1px solid #e3e3e3;
	border-radius: 15px;
}

.product-detail h2 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px!important;
}

.product-detail p {
	font-size: 16px;
}

.product-detail .price {
	font-size: 28px;
	font-weight: 600;
	color: #3867D6;
}

.product-detail .price del {
	color: red;
}

.product-detail .delivery-time {
	font-size: 18px;
}

.product-detail .qty {
	font-size: 18px;
}

.product-detail .qty input[type="number"] {
	width: 100px;
}

.product-detail button {
    cursor: pointer;
    display: inline-block;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 14px 30px;
    border: 0;
    border-radius: 50px;
    background: #3867D6;
    color: #fff;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.product-detail button:hover {
	background: #333;
}

.product-detail .nav-pills .nav-link.active {
	background: #3867D6;
	color: #fff;
}

.product-detail .nav-pills .nav-link {
	background: #f1f5f9;
	color: #3867D6;
}

.product-detail li.nav-item {
	margin-right: 10px;
}

.product-detail li {
	background: none!important;
	padding-left: 0!important;
}

.product-detail a.stock-available-amount {
	background: #ffc107;
	color: #333;
	border: 0;
	border-radius: 16px;
	padding: 5px 18px;
	font-size: 14px;
}

.product-detail a.stock-empty {
	background: #ead1d1;
	color: #ff0000;
	border-radius: 30px;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 700;
    border: 0;
    display: inline-block;
    margin-top: 30px;
    text-transform: uppercase;
}

.product-detail a.stock-empty:hover {
	background: #ead1d1;
	color: #ff0000;
}

@media only screen and (max-width: 767px) {
	.product-detail .photo img {
		margin-bottom: 30px;
	}
}










/* Cart */
.cart table img {
	width: 100px;
	height: auto;
}

.cart input[type="number"] {
	width: 100px;
}

.cart .total {
	font-size: 18px;
	font-weight: 600;
}

.cart-buttons {
	float: right;
}

.cart-buttons a,
.cart-buttons input[type="submit"] {
	margin-right: 10px;
}

@media only screen and (max-width: 767px) {
	.cart-buttons {
		margin-bottom: 30px;
	}
}



.checkout-login-form h2 {
	font-size: 24px;
	font-weight: 700;
}

.checkout-login-form .inner {
	display: flex;
	justify-content: center;
}

.checkout-login-form input {
	width: 400px;
}

.checkout-login-form .new-user {
	margin-top: 15px;
	font-weight: 600;
}

.checkout-login-form .new-user a {
	color: #3867D6;
}

.checkout-login-form .new-user a:hover {
	color: #333;
}

.checkout h2 {
	font-size: 24px;
	font-weight: 700;
}

.checkout-billing h2 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 20px;
}

.checkout-tab .nav-link {
	font-size: 20px;
	padding: 15px 30px;
	font-weight: 700;
	background: #ddd;
	color: #6c757d;
	margin-right: 10px;
}
.checkout-tab .nav-link i {
	background: #6c757d;
	color: #ddd;
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: center;
}
.checkout-tab .nav-link.active {
	font-size: 20px;
	padding: 15px 30px;
	font-weight: 700;
	background: #3867D6;
}
.checkout-tab .nav-link.active i {
	background: #fff;
	color: #3867D6;
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: center;
}

.checkout-tab li {
	padding-left: 0!important;
	background: none!important;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.checkout-tab .nav-link {
		padding-left: 10px;
		padding-right: 10px;
		font-size: 16px;
	}
	.checkout-tab .nav-link.active {
		padding-left: 10px;
		padding-right: 10px;
		font-size: 16px;
	}
}

@media only screen and (max-width: 767px) {
	.checkout-tab .nav-link {
		padding-left: 25px;
		padding-right: 25px;
		font-size: 18px;
	}
	.checkout-tab .nav-link.active {
		padding-left: 25px;
		padding-right: 25px;
		font-size: 18px;
	}
	.page-content-checkout button {
		margin-bottom: 30px;
	}
	.order-summery-area {
		margin-top: 30px;
	}
}

@media only screen and (max-width: 575px) {
	.page-content-checkout ul.nav-pills li {
		width: 100%!important;
	}
}


/* ================= CHECKOUT ACCORDION IMPROVED ================= */

/* Panel container */
.panel-group {
	margin-bottom: 30px;
}

.panel {
	border: none;
	border-radius: 12px;
	margin-bottom: 15px;
	box-shadow: 0 6px 20px rgba(0,0,0,0.08);
	overflow: hidden;
	background: #fff;
	transition: transform 0.25s ease;
}

.panel:hover {
	transform: translateY(-2px);
}

/* Header */
.panel-heading {
	padding: 0;
	border: none;
	background: transparent;
}

/* Title */
.panel-title {
	margin: 0;
}

/* Accordion button */
.panel-title a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #3867D6;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	padding: 16px 20px;
	text-decoration: none;
	transition: background 0.3s ease;
}

.panel-title a:hover {
	background: #2f50b5;
	color: #fff;
}

/* Body */
.panel-body {
	background: #f9f9f9;
	padding: 25px;
	border-top: 1px solid #e5e5e5;
	font-size: 15px;
	line-height: 1.6;
}

/* Tables inside */
.panel-body table {
	width: 100%;
}

.panel-body td {
	padding: 10px 5px;
	font-size: 15px;
}

/* Inputs */
.panel-body .form-control {
	border-radius: 6px;
	border: 1px solid #ddd;
	padding: 10px 12px;
	font-size: 14px;
	transition: all 0.25s ease;
}

.panel-body .form-control:focus {
	border-color: #3867D6;
	box-shadow: 0 0 0 2px rgba(56,103,214,0.08);
}

/* Buttons */
.panel-body .btn {
	background: #3867D6;
	border: none;
	font-weight: 600;
	padding: 10px 22px;
	border-radius: 40px;
	transition: all 0.25s ease;
}

.panel-body .btn:hover {
	background: #2f50b5;
	transform: translateY(-1px);
}

/* Shipping radio container */
.shipping-checkbox-container {
	background: #fff;
	border: 1px solid #e4e4e4;
	border-radius: 8px;
	padding: 12px 15px;
	margin-bottom: 10px;
	transition: all 0.25s ease;
}

.shipping-checkbox-container:hover {
	border-color: #3867D6;
	box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

/* Shipping heading */
.shipping-checkbox-container .heading {
	font-weight: 600;
	font-size: 15px;
}

/* Subheading */
.shipping-checkbox-container .subheading {
	font-size: 13px;
	color: #666;
}

/* Responsive */
@media (max-width:768px) {

	.panel-title a {
		font-size: 16px;
		padding: 14px 16px;
	}

	.panel-body {
		padding: 20px;
	}
}

/* Arrow icon for accordion */
.panel-title a::after {
	content: "\25BC"; /* ▼ arrow */
	font-size: 14px;
	margin-left: 10px;
	transition: transform 0.3s ease;
}

/* Rotate arrow when expanded */
.panel-title a[aria-expanded="true"]::after {
	transform: rotate(180deg);
}






/* LOGIN Container Card */
.reg-login-form.shadow-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    box-shadow: 0 25px 50px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.reg-login-form.shadow-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.12);
}

/* Logo */
.reg-login-form .logo img {
    display: block;
    margin: 0 auto 25px auto;
}

/* Headings */
.reg-login-form h2 {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    text-align: center;
    margin-bottom: 10px;
}

.reg-login-form p.text-muted {
    font-size: 14px;
    color: #888;
    text-align: center;
    margin-bottom: 25px;
}

/* Form Fields */
.reg-login-form .form-control {
    padding: 14px 18px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 15px;
    transition: all 0.3s ease;
}

.reg-login-form .form-control:focus {
    /* border-color: #3867D6;
    box-shadow: 0 0 8px rgba(56,103,214,0.2); */
    outline: none;
}

/* Button + Forgot Password Row */
.reg-login-form .d-flex.justify-content-between {
    gap: 10px; /* adds spacing between button and link */
    flex-wrap: wrap; /* allows wrapping on small screens */
}

/* Buttons */
.btn-login {
    padding: 10px 30px; /* smaller width to fit next to forgot link */
    font-weight: 600;
    font-size: 16px;
    border-radius: 50px;
    /* background: linear-gradient(90deg, #3867D6, #5A8DEE); */
    border: none;
    color: #fff;
    transition: all 0.3s ease;
    white-space: nowrap; /* prevents text from wrapping */
}

/* .btn-login:hover {
    background: linear-gradient(90deg, #2B4DB0, #436DD6);
    box-shadow: 0 8px 20px rgba(56,103,214,0.2);
} */

/* Button + Forgot Password Row */
.reg-login-form .btn-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    gap: 10px; /* spacing between button and link */
}

.reg-login-form .btn-row .text-warning {
    font-weight: 500;
    font-size: 14px;
    white-space: nowrap;
}

/* New User / Sign Up Link */
.reg-login-form .new-user {
    margin-top: 20px;
    text-align: center;
    font-weight: 600;
}

.reg-login-form .new-user a {
    color: #3867D6;
    transition: all 0.3s ease;
}

.reg-login-form .new-user a:hover {
    color: #333;
}

/* Links */
.reg-login-form a {
    text-decoration: none;
}

/* Responsive */
@media (max-width: 575px) {
    .reg-login-form.shadow-card {
        padding: 25px 20px;
    }

    .reg-login-form .btn-row {
        flex-direction: column;
        align-items: stretch;
    }

    .reg-login-form .btn-row .btn-login {
        width: 100%;
        margin-bottom: 10px;
    }

    .reg-login-form .btn-row .text-warning {
        text-align: center;
    }
}



/* LOGIN/FORGOT PASSWORD Container Card */
.reg-login-form.shadow-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    box-shadow: 0 25px 50px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.reg-login-form.shadow-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.12);
}

/* Logo */
.reg-login-form .logo img {
    display: block;
    margin: 0 auto;
}

/* Headings */
.reg-login-form h2 {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    text-align: center;
}

.reg-login-form p.text-muted {
    font-size: 14px;
    color: #888;
    text-align: center;
}

/* Form Fields */
.reg-login-form .form-control {
    padding: 14px 18px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 15px;
    transition: all 0.3s ease;
}

.reg-login-form .form-control:focus {
    border-color: var(--theme-color);
    box-shadow: 0 0 8px rgba(56,103,214,0.2);
    outline: none;
}

/* Buttons */
.btn-login {
    flex: 1;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 15px;
    border-radius: 50px;
    background-color: var(--theme-color);
    border: none;
    color: #fff;
    transition: all 0.3s ease;
}

.btn-login:hover {
    opacity: 0.9;
}

/* Theme-colored links */
.text-theme {
    color: var(--theme-color) !important;
    font-weight: 500;
    font-size: 14px;
}

.text-theme:hover {
    color: #333 !important;
}

/* Responsive */
@media (max-width: 991px) {
    .reg-login-form.shadow-card {
        padding: 30px 20px;
    }
    .d-flex {
        flex-direction: column !important;
        gap: 10px;
    }
    .btn-login {
        width: 100%;
    }
}


/* Shadow Card for Reset password */
.reg-login-form.shadow-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    box-shadow: 0 25px 50px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.reg-login-form.shadow-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.12);
}

/* Logo */
.reg-login-form .logo img {
    display: block;
    margin: 0 auto;
}

/* Headings */
.reg-login-form h2 {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    text-align: center;
}

.reg-login-form p.text-muted {
    font-size: 14px;
    color: #888;
    text-align: center;
}

/* Form Fields */
.reg-login-form .form-control {
    padding: 14px 18px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 15px;
    transition: all 0.3s ease;
}

.reg-login-form .form-control:focus {
    border-color: var(--theme-color);
    box-shadow: 0 0 8px rgba(56,103,214,0.2);
    outline: none;
}

/* Buttons */
.btn-login {
    width: 100%;
    padding: 12px;
    font-weight: 600;
    font-size: 16px;
    border-radius: 50px;
    background-color: var(--theme-color);
    border: none;
    color: #fff;
    transition: all 0.3s ease;
}

.btn-login:hover {
    opacity: 0.9;
}

/* Theme-colored links */
.text-theme {
    color: var(--theme-color) !important;
    font-weight: 500;
}

.text-theme:hover {
    color: #333 !important;
}

/* New User Section */
.new-user {
    margin-top: 15px;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 991px) {
    .reg-login-form.shadow-card {
        padding: 30px 20px;
    }
}


/* Shadow Card Container */
.reg-login-form.shadow-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    box-shadow: 0 25px 50px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.reg-login-form.shadow-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.12);
}

/* Logo */
.reg-login-form .logo img {
    display: block;
    margin: 0 auto;
}

/* Headings */
.reg-login-form h2 {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    text-align: center;
}

.reg-login-form p.text-muted {
    font-size: 14px;
    color: #888;
    text-align: center;
}

/* Form Fields */
.reg-login-form .form-control {
    padding: 14px 18px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-size: 15px;
    transition: all 0.3s ease;
}

.reg-login-form .form-control:focus {
    border-color: var(--theme-color);
    box-shadow: 0 0 8px rgba(56,103,214,0.2);
    outline: none;
}

/* Buttons */
.btn-login {
    width: 100%;
    padding: 12px;
    font-weight: 600;
    font-size: 16px;
    border-radius: 50px;
    background-color: var(--theme-color);
    border: none;
    color: #fff;
    transition: all 0.3s ease;
}

.btn-login:hover {
    opacity: 0.9;
}

/* Theme-colored links */
.text-theme {
    color: var(--theme-color) !important;
    font-weight: 500;
}

.text-theme:hover {
    color: #333 !important;
}

/* New User / Back to Login Section */
.new-user {
    margin-top: 15px;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 991px) {
    .reg-login-form.shadow-card {
        padding: 30px 20px;
    }
}




/* User Panel */
.user-sidebar ul {
	display: flex;
	flex-direction: column;
}

.user-sidebar ul li {
	list-style-type: none;
	margin-bottom: 5px;
	padding-left: 0;
	background: none;
}

.modal-table {
	font-size: 14px;
}

.modal-table tr th {
	width: 150px;
}

.modal-full-width {
	max-width: 100%!important;
}

.modal-full-width .top-area {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #dee2e6;
}

.modal-full-width .top-right {
	font-size: 20px;
	font-weight: 700;
	float: right;
	margin-top: 30px;
}

@media only screen and (min-width: 992px) {
	.modal-full-width {
		max-width: calc(100% - 200px)!important;
	}
}

.customer-invoice {
	padding-top: 30px;
}
.customer-invoice .top-head {
	border-bottom: 1px solid #efebeb;
}
.customer-invoice .left img {
	height: 70px;
}
.customer-invoice .left .company-info {
	font-size: 14px;
	margin-bottom: 30px;
}
.customer-invoice .right {
	text-align: right;
	font-size: 18px;
	font-weight: 700;
	margin-top: 30px;
}
.customer-invoice .i3 {
	margin-top: 30px;
}
.customer-invoice .i3 h3 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 5px!important;
}
.customer-invoice .i3 p {
	font-size: 14px;
	margin-bottom: 0;
}
@media print {
	@page { margin: 0; }
}




.chosen-drop {
    z-index: 999999 !important;
}

.nav-doctor li {
	padding-left: 0!important;
	background: none!important;
}

/* .doc_detail_social li {
	padding-left: 0!important;
	background: none!important;
	float: left;
	margin-right: 5px;
}

.doc_detail_social li i {
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	display: inline-block;
	background: #3867D6;
	color: #fff;
	border-radius: 4px;
	transition: all 0.4s ease;
}
.doc_detail_social li:hover i {
	background: #333;
}

.doc_detail_social {
    list-style: none;
    padding: 0;
    margin: 0;
} */


.nav-doctor .nav-link {
	background: #e6e6e6;
	margin-right: 10px;
	color: #333;
}
.nav-doctor .nav-link.active,
.nav-doctor .show > .nav-link {
	background: #3867D6;
}


/* Bootstrap Pagination */
.pagination li {
	background: none!important;
	padding-left: 0!important;
}


.dashboard-stat .text {
	font-size: 20px;
}
.dashboard-stat .total {
	font-size: 30px;
}

@media only screen and (max-width: 767px) {
	.dashboard-stat-item {
		margin-bottom: 30px;
	}
}


/* ------------------------------------------- */
/* toastr */
/* ------------------------------------------- */
.toast {
    opacity: 1 !important;
}
#success_toastr {
    background: green!important;
}
#error_toastr {
    background: red!important;
}
.toast-error {
  background-color: #bd362f;
}
.toast-success {
  background-color: #51a351;
}
.toast-warning {
  background-color: #f89406;
}



/* Checkout */
.checkout-left h4 {
	font-weight: 700;
}

.checkout-right h4 {
	font-weight: 700;
}
.checkout-right .inner {
	background: #f3f3f3;
	padding: 15px;
}
.checkout-right img {
	width: 60px;
	height: 60px;
	margin-right: 10px;
}

.checkout-right .p_price {
	text-align: right;
}

.checkout-right .p_name,
.checkout-right .p_name a {
	text-decoration: none!important;
	color: #333;
}
.checkout-right .total_amount {
	font-size: 22px;
	font-weight: 700;
}
.shipping-checkbox-container .form-check {
	margin-bottom: 10px;
}
.shipping-checkbox-container input:focus {
	border-color: none!important;
}
.shipping-checkbox-container .heading {
	line-height: 1.1;
}
.shipping-checkbox-container .subheading {
	font-size: 12px;
}
.checkout-right table td {
	padding-top: 10px!important;
	padding-bottom: 10px!important;
}
.checkout-left input[type="checkbox"],
.checkout-right input[type="checkbox"] {
	color: #3867D6;
}

/* Select 2 */
.select2-container--bootstrap .select2-selection--single {
	height: 38px!important;
	line-height: 38px!important;
	padding-top: 0!important;
	font-size: 1rem;
}


/* Preloader */
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #fff;
	z-index: 999999;
}

#preloader #status {
	width: 200px;
	height: 200px;
	position: absolute;
	left: 50%;
	top: 50%;
	background-repeat: no-repeat;
	background-position: center;
	margin: -100px 0 0 -100px;
}



.share_buttons a {
	text-align: center;
}
.share_buttons a i {
    border: 1px solid #3b5998;
    color: #fff!important;
    width: 50px;
    height: 50px;
    line-height: 50px;
    border-radius: 50%;
    display: inline-block;
    font-size: 20px;
    margin-right: 4px;
}
.share_buttons a.facebook i {
	background: #3b5998;
    border-color: #3b5998;
}
.share_buttons a.facebook:hover i {
	color: #3b5998!important;
	background: #fff;
}
.share_buttons a.twitter i {
	background: #00aced;
    border-color: #00aced;
}
.share_buttons a.twitter:hover i {
	color: #00aced!important;
	background: #fff;
}
.share_buttons a.pinterest i {
	background: #EB4823;
    border-color: #EB4823;
}
.share_buttons a.pinterest:hover i {
	color: #EB4823!important;
	background: #fff;
}
.share_buttons a.linkedin i {
	background: #0e76a8;
    border-color: #0e76a8;
}
.share_buttons a.linkedin:hover i {
	color: #0e76a8!important;
	background: #fff;
}

.share_buttons a.whatsapp i {
	background: #25d366;
    border-color: #25d366;
}
.share_buttons a.whatsapp:hover i {
	color: #25d366!important;
	background: #fff;
}


