/*---------------------------------------------------------------------
    File Name: style.css
---------------------------------------------------------------------*/


/*---------------------------------------------------------------------
    import Fonts
---------------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');

/*****----------------------------------------
     1) font-family: 'Rajdhani', sans-serif;  
     2) font-family: 'Poppins', sans-serif; 
----------------------------------------*****/


/*---------------------------------------------------------------------
    import Files
---------------------------------------------------------------------*/

@import url(animate.min.css);
@import url(normalize.css);
@import url(icomoon.css);
@import url(font-awesome.min.css);
@import url(meanmenu.css);
@import url(owl.carousel.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);
@import url(jquery-ui.css);
@import url(nice-select.css);

/*---------------------------------------------------------------------
    skeleton
---------------------------------------------------------------------*/

* {
	box-sizing: border-box !important;
}

html {
	scroll-behavior: smooth;
}

body {
	color: #666666;
	font-size: 14px;
	font-family: 'poppins', sans-serif;
	line-height: 1.80857;
	font-weight: normal;
	overflow-x: hidden;
}

a {
	color: #1f1f1f;
	text-decoration: none !important;
	outline: none !important;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	letter-spacing: 0;
	font-weight: normal;
	position: relative;
	padding: 0 0 10px 0;
	font-weight: normal;
	line-height: normal;
	color: #111111;
	margin: 0
}

h1 {
	font-size: 24px
}

h2 {
	font-size: 22px
}

h3 {
	font-size: 18px
}

h4 {
	font-size: 16px
}

h5 {
	font-size: 14px
}

h6 {
	font-size: 13px
}

*,
*::after,
*::before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	color: #212121;
	text-decoration: none !important;
	opacity: 1
}

button:focus {
	outline: none;
}

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

p {
	margin: 0px;
	font-weight: 300;
	font-size: 15px;
	line-height: 24px;
}

a {
	color: #222222;
	text-decoration: none;
	outline: none !important;
}

a,
.btn {
	text-decoration: none !important;
	outline: none !important;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

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

:focus {
	outline: 0;
}

.btn-custom {
	margin-top: 20px;
	background-color: transparent !important;
	border: 2px solid #ddd;
	padding: 12px 40px;
	font-size: 16px;
}

.lead {
	font-size: 18px;
	line-height: 30px;
	color: #767676;
	margin: 0;
	padding: 0;
}

.form-control:focus {
	border-color: #ffffff !important;
	box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
	border: none !important;
}

.badge {
	font-weight: 500;
}

blockquote {
	margin: 20px 0 20px;
	padding: 30px;
}

button {
	border: 0;
	margin: 0;
	padding: 0;
	cursor: pointer;
}

.full {
	float: left;
	width: 100%;
}

.layout_padding {
	padding-top: 90px;
	padding-bottom: 90px;
}

.layout_padding_2 {
	padding-top: 75px;
	padding-bottom: 75px;
}

.light_silver {
	background: #f9f9f9;
}

.theme_bg {
	background: #38c8a8;
}

.margin_top_30 {
	margin-top: 30px !important;
}

.full {
	width: 100%;
	float: left;
	margin: 0;
	padding: 0;
}


/**-- heading section --**/

.main_heading {
	text-align: center;
	display: flex;
	justify-content: center;
	position: relative;
	margin-bottom: 50px;
}

.main_heading h2 {
	padding: 0;
	font-size: 48px;
	line-height: 60px;
	font-weight: 400;
	position: relative;
	letter-spacing: -0.5px;
	color: #114c7d;
	border-left: solid #38c8a8 10px;
	padding-left: 15px;
}

.main_heading h2 strong {
	background: #38c8a8;
	color: #fff;
	font-weight: 600;
	padding: 0 15px;
	line-height: 68px;
}

.white_heading_main h2 {
	color: #fff;
}

.small_main_heading {
	margin-top: 25px;
	float: left;
	width: 100%;
	border-bottom: solid rgba(0, 0, 0, 0.07) 1px;
	margin-bottom: 25px;
}

.small_main_heading h2 {
	padding: 2px 0 20px 0;
	color: #114c7d;
	font-weight: 400;
	font-size: 28px;
	background-image: url('../images/fevicon.png');
	background-repeat: no-repeat;
	padding-left: 55px;
	letter-spacing: -0.5px;
}

.small_main_heading h2 strong {
	color: #38c8a8;
	font-weight: 600;
}

.main_bt {
	background: #000;
	color: #fff;
	padding: 10px 60px 10px 60px;
	float: left;
	font-size: 15px;
	font-weight: 400;
	border: solid #000 5px;
	border-radius: 0;
	margin-right: 30px;
}

a.readmore_bt {
	color: #fff;
	font-weight: 300;
	text-decoration: underline !important;
}

.main_bt:hover,
.main_bt:focus {
	background: #ad2101;
	border: solid #ad2101 5px;
	color: #fff;
}


/**-- list icon --**/

.ul_list_info_icon ul {
	list-style: none;
}

.ul_list_info_icon ul li {
	display: inline;
	float: left;
	width: 100%;
}

.ul_list_info_icon ul li img {
	width: 75px;
}


/*----------------------------
    preloader area
----------------------------*/

.loader_bg {
	position: fixed;
	z-index: 9999999;
	background: #fff;
	width: 100%;
	height: 100%;
}

.loader {
	height: 100%;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.loader img {
	width: 280px;
}


/*----------------------------
    scroll to top area
----------------------------*/

.scrollup {
	float: right;
	position: absolute;
	color: #fff;
	right: 20px;
	padding: 0px 5px;
	text-transform: uppercase;
	font-weight: 600;
	background: #38c8a8;
	position: fixed;
	bottom: 20px;
	z-index: 99;
	text-align: center;
	color: #fff;
	cursor: pointer;
	border-radius: 0px;
	opacity: 0;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-webkit-transform: scale(1);
	transition: .2s all ease;
	-moz-transition: .2s all ease;
	-o-transition: .2s all ease;
	-webkit-transition: .2s all ease;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	line-height: 48px;
	font-size: 16px;
}

.scrollup.b-show_scrollBut {
	opacity: 1;
	visibility: visible;
}

.top_awro {
	background: #ee4a79 none repeat scroll 0 0;
	cursor: pointer;
	padding: 6px 8px;
	position: fixed;
	bottom: 59px;
	right: 20px;
	display: none;
	height: 45px;
	width: 45px;
	border-radius: 50%;
	text-align: center;
	line-height: 30px;
	transition: all 0.5s ease;
}

.sale_pro {
	background: #f25252 !important;
}

.margin_top_50 {
	margin-top: 50px;
}

.margin_bottom_30_all {
	margin-bottom: 30px;
}

.text_align_center {
	text-align: center;
}


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

.logo_section {
	text-align: center;
}

.logo {
	float: left;
}

nav.main-menu {
	float: right;
	margin-left: 0;
}

.menu-area-main li:hover a,
.menu-area-main li:focus a {
	color: #000;
}

.menu-area-main li.active a {
	color: #000;
}

.right_cart_section {
	float: right;
	width: auto;
}

.right_cart_section ul {
	float: left;
	min-height: auto;
	margin: 0;
	padding: 12px 0 0;
}

.right_cart_section .cart_icons {
	padding: 18px 0 0;
}

.main-menu ul>li nth:child(5) a {
	padding-right: 0px;
}

.right_cart_section ul li {
	float: left;
	font-size: 17px;
	font-weight: 400;
	color: #fff;
	margin-right: 30px;
}

.right_cart_section ul.cart_update li {
	font-size: 13px;
	color: #ccc;
	line-height: normal;
	margin: 0;
	font-weight: 300;
}

.right_cart_section ul.cart_update li span {
	font-size: 18px;
	font-weight: 300;
	color: #fff;
	line-height: 21px;
}

.right_cart_section ul li i {
	margin-right: 10px;
	margin-top: 5px;
	float: left;
	color: #fff;
	font-size: 21px;
}

.right_cart_section ul li a {
	color: #fff;
}


/*-- end header middle --*/

.top-bar-info {
	background: #111111;
	padding: 5px 0px;
}

.top-menu-left {
	float: left;
}

.top-menu-left li {
	position: relative;
	display: inline-block;
	margin-right: 11px;
	padding-right: 12px;
}

.top-menu-left li::before {
	content: '';
	position: absolute;
	right: 0;
	top: 9px;
	height: 10px;
	border-right: 1px dotted #999;
}

.top-menu-left li:last-child::before {
	display: none;
}

.top-menu-left li:last-child {
	padding: 0px;
	margin: 0px;
}

.top-menu-left li a {
	color: #ffffff;
	font-size: 12px;
	text-transform: uppercase;
	text-decoration: none;
}

.top-menu-left li a:hover {
	color: #38c8a8;
}

.right-dropdown-language {
	float: right;
	margin-left: 12px;
}

.dropdown-bar .dropdown-link {
	position: absolute;
	z-index: 1009;
	top: 40px;
	left: 0;
	right: auto;
	min-width: 50px;
	padding: 15px;
	background: #ffffff;
	list-style: none;
	border: 2px solid #38c8a8;
	opacity: 0;
	visibility: hidden;
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	-webkit-transition: opacity 0.2s ease 0s, visibility 0.2s linear 0s;
	-o-transition: opacity 0.2s ease 0s, visibility 0.2s linear 0s;
	transition: opacity 0.2s ease 0s, visibility 0.2s linear 0s;
	text-align: left;
}

.dropdown-bar:hover .dropdown-link {
	opacity: 1;
	visibility: visible;
	top: 25px;
}

.dropdown-bar.right-dropdown-language>a::after {
	font-family: 'FontAwesome';
	content: "\f107";
	text-decoration: none;
	padding-left: 4px;
	color: #ffffff;
}

.right-dropdown-language>a {
	line-height: 10px;
	padding: 5px 5px;
	cursor: pointer;
}

.dropdown-bar .dropdown-link li a {
	color: #111111;
	display: block;
	font-size: 12px;
	line-height: 15px;
	padding: 5px 0;
}

.dropdown-bar .dropdown-link li a:hover {
	color: #38c8a8;
}

.dropdown-bar .dropdown-link li a img {
	margin-right: 7px;
}

.dropdown-bar .dropdown-link li.active {
	font-weight: bold;
}

.right-dropdown-language .dropdown-link {
	min-width: 100px;
	padding: 7px 10px;
	color: #111111;
}

.dropdown-bar {
	position: relative;
	padding: 0 5px;
	font-size: 13px;
}

.dropdown-bar .dropdown-link.right-sd {
	left: auto;
	right: 0;
}

.right-dropdown-currency {
	float: right;
	margin-left: 12px;
}

.dropdown-bar.right-dropdown-currency>a::after {
	font-family: 'FontAwesome';
	content: "\f107";
	text-decoration: none;
	padding-left: 4px;
	color: #ffffff;
}

.right-dropdown-currency>a {
	line-height: 10px;
	padding: 5px 5px;
	cursor: pointer;
	color: #ffffff;
}

.right-dropdown-currency .dropdown-link {
	min-width: 100px;
	padding: 7px 10px;
	color: #111111;
}

.right-dropdown-currency .dropdown-link {
	min-width: 55px;
	padding: 7px 10px;
}

.right-dropdown-currency .dropdown-link li a span.symbol {
	margin-right: 7px;
}

#login-modal .modal-content {
	border-radius: 0px;
}

#login-modal .modal-content .modal-header {
	background: #38c8a8;
	border-radius: 0;
}

#login-modal .modal-content .modal-body .form-group input {
	background: #ffffff;
	border: 1px solid #c8c8c8;
	border-radius: 0px;
}

#login-modal .modal-content .modal-body .form-group input:focus {
	border: 1px solid #c8c8c8 !important;
}

#login-modal .modal-content form {
	margin-bottom: 10px;
}

.modal-title {
	padding: 0px;
	color: #ffffff;
	font-size: 18px;
	text-transform: uppercase;
}

.btn-template-outlined {
	background: #111111;
	color: #ffffff;
	border: none;
	border-radius: 0px;
}

.btn-template-outlined i {
	padding-right: 10px;
}

.text-muted {
	padding: 10px 0px;
}

.slogan-line {
	float: right;
	color: #ffffff;
	font-size: 13px;
}

.middle-area {
	padding: 30px 0px;
}

.header-search {
	padding: 3px 0px;
}

.header-search form {
	position: relative;
	-webkit-box-shadow: 0px 1px 10px -1px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 1px 10px -1px rgba(0, 0, 0, 0.2);
}

.header-search .btn-group.bootstrap-select {
	position: absolute;
	left: 0px;
	top: 0px;
}

.header-search input {
	width: 100%;
	min-height: 45px;
	border-radius: 0px;
	border: none;
	padding-left: 15px;
	border: 1px solid #e0e7ed;
}

.header-search form .search-btn {
	position: absolute;
	right: 0;
	top: 0;
	border: 0;
	color: #fff;
	font-size: 20px;
	padding: 4px 15px;
	border-radius: 0px;
	background-color: #38c8a8;
	cursor: pointer;
}

.header-search form .search-btn:hover {
	background: #111111;
}

.cart-box {
	float: right;
	margin-left: 10px;
	position: relative;
}

.cart-content-box {
	position: absolute;
	z-index: 1009;
	top: 40px;
	left: auto;
	right: 0;
	min-width: 250px;
	max-width: 250px;
	padding: 15px;
	background: #ffffff;
	list-style: none;
	border: 2px solid #38c8a8;
	opacity: 0;
	visibility: hidden;
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	text-align: left;
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: 0 0 0;
	transform-origin: 0 0 0;
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

.cart-box:hover .cart-content-box {
	opacity: 1;
	visibility: visible;
	top: 100%;
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
}

.inner-cart {
	background: #38c8a8;
	border-radius: 2px;
	padding: 0px;
	color: #ffffff;
	position: relative;
	width: 40px;
	height: 40px;
	text-align: center;
}

.cart-box .inner-cart:hover {
	color: #ffffff;
}

.line-cart {
	float: left;
	line-height: 40px;
	margin-right: 9px;
}

.cart-box a {
	display: inline-block;
}

.cart-box a:hover {
	color: #38c8a8;
}

.cart-box a span.icon {
	background: #38c8a8;
	width: 30px;
	height: 40px;
	display: inline-block;
	line-height: 40px;
	text-align: center;
	color: #ffffff;
	position: relative;
	border-radius: 2px;
}

.cart-box a .p-up {
	position: absolute;
	right: -8px;
	top: -8px;
	line-height: initial;
	background: #38c8a8;
	padding: 3px;
	border-radius: 50%;
	width: 17px;
	height: 17px;
	font-size: 12px;
	text-align: center;
	line-height: 10px;
}

.wish-box {
	float: right;
}

.wish-box a {
	display: inline-block;
}

.wish-box a:hover {
	color: #38c8a8;
}

.wish-box a span.icon {
	background: #38c8a8;
	width: 40px;
	height: 40px;
	display: inline-block;
	line-height: 40px;
	text-align: center;
	color: #ffffff;
	position: relative;
	border-radius: 2px;
}

.wish-box a span.icon:hover {
	background: #111111;
}

.cart-content-right {
	padding: 5px 0px;
}

.cart-content-box .items {
	text-align: center;
}

.product-media {
	width: 60px;
	float: left;
	position: relative;
}

.cart-content-box .items:hover .product-media::before {
	transform: scale(1);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
}

.product-media::before {
	position: absolute;
	content: '';
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #38c8a8;
	opacity: 0.4;
	transform: scale(0);
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	-o-transform: scale(0);
	transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
}

.cart-content-box .items .item .remove {
	position: absolute;
	right: 0px;
	top: 0px;
	background: #38c8a8;
	color: #ffffff;
	width: 20px;
	height: 20px;
	line-height: 18px;
	border-radius: 2px;
}

.cart-content-box .items .item {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #e0e7ed;
	position: relative;
}

.cart-content-box .items .item .product-info {
	padding-top: 10px;
	padding-left: 71px;
	text-align: left;
}

.cart-content-box .items .item .remove:hover {
	background: #111111;
}

.subtotal {
	text-align: left;
	text-transform: capitalize;
	color: #38c8a8;
	font-weight: 500;
	margin-bottom: 15px;
}

.subtotal span {
	font-weight: bold;
	color: #111111;
	padding-left: 15px;
	float: right;
}

.actions .btn-process {
	padding: 5px 16px;
	color: #ffffff;
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	border-radius: 2px;
	overflow: hidden;
}

.actions .btn-process:hover {
	color: #ffffff;
}

.line-cart {
	position: relative;
}

.wish-box a span.icon span {
	position: absolute;
	right: -8px;
	top: -8px;
	line-height: initial;
	background: #38c8a8;
	padding: 3px;
	border-radius: 50%;
	width: 17px;
	height: 17px;
	font-size: 12px;
}

.main-menu {
	text-align: center;
}

.main-menu ul {
	margin: 0;
	list-style-type: none;
}

.main-menu ul>li {
	display: inline-block;
	position: relative;
}

.main-menu ul>li a {
	padding: 6px 36px 0 36px;
	line-height: 20px;
	font-size: 16px;
	display: block;
	font-weight: 500;
	color: #fff;
	text-transform: uppercase;
}

.main-menu ul li:last-child a {
	padding-right: 0;
}

.sub-down li {
	background: #ffffff;
}

.main-menu ul>li .sub-down li a {
	color: #114c7d;
	font-size: 15px;
	text-transform: capitalize;
	font-weight: 300;
	padding: 12px 5px;
	position: relative;
	border-bottom: solid #eee 1px;
}

.main-menu ul>li .sub-down li a::before {}

.main-menu ul>li .sub-down li a:hover {
	color: #111111;
}

.main-menu ul>li .sub-down li a:hover::before {}

.main-menu ul li:first-child {
	margin-left: 0;
}

.main-menu ul>li>ul {
	opacity: 0;
	position: absolute;
	text-align: left;
	top: 100%;
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: 0 0 0;
	transform-origin: 0 0 0;
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	visibility: hidden;
	width: 240px;
	z-index: 999;
	background: #fff;
	-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
	box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}

.main-menu>ul>li:hover>ul {
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	visibility: visible;
	opacity: 1;
}

.main-menu ul>li>ul>li {
	margin: 0px;
	position: relative;
	display: block;
}

.main-menu ul>li>ul>li:hover>ul {
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	visibility: visible;
	opacity: 1;
	left: 100%;
	top: 10px;
}

.main-menu ul>li>ul>li>a {
	background: none !important;
}

.mean-container .mean-nav {
	margin-top: 0px;
	position: absolute;
	top: 100%;
}

.main-menu ul>li {
	position: inherit;
	display: inline-block;
	vertical-align: middle;
}

.main-menu ul>li:nth-child(6) {
	padding-right: 0px;
}

.nav>li {
	position: inherit;
	display: inline-block;
	vertical-align: middle;
}

.megamenu .sub-down {
	max-width: 1140px;
	width: 100%;
	left: 0;
	margin: 0 auto;
	right: 0;
	padding: 15px 0px;
}

.sub-full {}

.simple-down {
	padding: 15px;
}

.megamenu-categories {
	padding: 10px 0px;
}

.sub-full.megamenu-categories li {
	display: block;
}

.megamenu .sub-full.megamenu-categories ol li a {
	padding: 5px 0px;
	font-size: 15px !important;
	font-weight: 500;
}

.sub-full.megamenu-categories ol li .category-title {
	padding: 15px 0px;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
}

.sub-full.megamenu-categories ol li .category-box a {
	padding: 5px 0px;
}

.menu-add {
	padding: 30px 15px;
}

.menu-add img {
	width: 100%;
}

.main-w img {
	width: 100%;
}

.women-box {
	position: relative;
}

.women-box::before {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, 0.3);
	width: 100%;
	height: 100%;
}

.banner-up-text {
	position: absolute;
	bottom: 10px;
	left: 0px;
	right: 0px;
	text-align: center;
}

.text-a {
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	line-height: 40px;
	font-weight: 700;
}

.text-b {
	color: #fff;
	font-size: 28px;
	text-transform: uppercase;
	line-height: 30px;
	padding: 20px 0px;
}

.text-c {
	color: #ffffff;
	font-size: 31px;
	font-weight: 300;
	text-transform: uppercase;
	line-height: 30px;
	padding-bottom: 20px;
}

.megamenu .sub-full.megamenu-categories .women-box .banner-up-text a {
	background: #111111;
	color: #ffffff !important;
	display: inline-block;
	padding: 10px 16px;
	border-radius: 2px;
	overflow: hidden;
	font-size: 16px;
}

.sticky-wrapper .sticky-wrapper-header {
	z-index: 20 !important;
	background: #ffffff;
}

.is-sticky .sticky-wrapper-header .middle-area {
	padding: 10px 0px
}

.sticky-wrapper:not(.is-sticky) {
	height: auto !important;
}

.hover-btn {
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	position: relative;
	background: #111111;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.hover-btn::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #38c8a8;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 50%;
	transform-origin: 50%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	display: block !important;
}

.hover-btn:hover::before,
.hover-btn:focus::before,
.hover-btn:active::before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

.hover-btn:hover,
.hover-btn:focus,
.hover-btn:active {
	color: white;
	box-shadow: none;
}

.btn-secondary.focus,
.btn-secondary:focus {
	box-shadow: none;
}

.img-responsive {
	max-width: 100%;
}

.padding_right_15_inner {
	padding-right: 15px;
}

.padding_left_15_inner {
	padding-left: 15px;
}

.dark_bg {
	background: #114c7d;
}


/*---------------------------------------------------------------------
    top banner area
---------------------------------------------------------------------*/

.top-banner-slider {
	overflow: hidden;
	clear: both;
	height: 600px;
}

.top-banner-slider .heroslider {
	margin: 0px;
	padding: 0px;
	border: none;
	position: relative;
	border-radius: 0;
}

.swiper-overlay {
	height: 100%;
	position: relative;
}

.swiper-overlay {
	background: rgba(0, 0, 0, 0.5);
	content: "";
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
}

.heroslider .container {
	position: relative;
	height: 100%;
	padding-left: 0;
	padding-right: 0;
	z-index: 5;
}

.swiper-container {
	width: 100%;
	height: 100%;
}

.heroslider .slider-01 {
	width: 100%;
	background-image: url(../images/slider-01.jpg);
	background-size: cover;
	background-position: center;
}

.heroslider .slider-02 {
	width: 100%;
	background-image: url(../images/slider-02.jpg);
	background-size: cover;
	background-position: center;
}

.heroslider .slider-03 {
	width: 100%;
	background-image: url(../images/slider-03.jpg);
	background-size: cover;
	background-position: center;
}

.heroslider .slides li {
	height: 600px;
}

.top-banner-slider .heroslider .slides li::before {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, 0.4);
	height: 100%;
	width: 100%;
	left: 0px;
	top: 0px;
}

.top-banner-slider .flex_caption3 {
	position: absolute;
	z-index: 30;
	left: 0;
	right: 0;
	bottom: 50px;
	margin: 0 -15px;
	display: flex;
}

a.slide_banner {
	position: relative;
	display: inline-block;
	margin: 0 12px 0 15px;
}

.slide1_banner1 {
	width: 570px;
}

.slide1_banner2 {
	width: 270px;
}

.slide1_banner3 {
	width: 270px;
}

.top-banner-slider .flex_caption1 {
	text-align: center;
	position: absolute;
	z-index: 30;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 31%;
	max-width: 720px;
	width: 100%;
	text-transform: uppercase;
	color: #333;
}

.top-banner-slider .flex_caption1 .title1 {
	font-size: 36px;
	font-weight: 300;
	color: #ffffff;
}

.top-banner-slider .flex_caption1 .title2 {
	font-size: 60px;
	font-weight: 900;
	color: #ffffff;
}

.top-banner-slider .flex_caption2 {
	text-align: center;
}

.top-banner-slider .flex_caption2 {
	position: absolute;
	z-index: 30;
	left: 0;
	top: 20%;
	display: table;
	width: 177px;
	height: 177px;
	background-color: #242424;
}

.top-banner-slider .flex_caption2 .middle {
	display: table-cell;
	vertical-align: middle;
	text-transform: uppercase;
	text-align: center;
	font-weight: 700;
	line-height: 31px;
	font-size: 26px;
	color: #fff;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
}

.top-banner-slider .flex_caption2 .middle:hover {
	background: #38c8a8;
}

.top-banner-slider .flex_caption2 span {
	display: block;
	font-weight: 100;
	line-height: 36px;
	font-size: 34px;
}

a.slide_banner::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	border: 2px solid #ffffff;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
}

a.slide_banner:hover::before {
	left: -7px;
	top: -7px;
	right: -7px;
	bottom: -7px;
	opacity: 1;
}

.flex-control-nav {
	background: #38c8a8;
	bottom: 0px;
	position: relative;
}

.flex-control-nav li {
	line-height: 10px;
}

.flex-control-paging li a {
	background: rgba(255, 255, 255, 1);
	border: 2px solid #ffffff;
}

.flex-control-paging li a.flex-active {
	border: 2px solid #ffffff;
}

.flex-direction-nav a {
	background: #111111;
	text-align: center;
}

.heroslider:hover .flex-direction-nav .flex-prev:hover {
	background: #38c8a8;
}

.heroslider:hover .flex-direction-nav .flex-next:hover {
	background: #38c8a8;
}

.flex-direction-nav a::before {
	color: #ffffff;
}

.top-banner-slider .swiper-pagination {
	padding: 10px 0px;
}

.heroslider .swiper-pagination {
	bottom: 0px;
	background: #38c8a8;
}

.heroslider .swiper-pagination .swiper-pagination-bullet-active {
	background: #fff;
}

.heroslider .swiper-pagination::before {
	content: "";
	width: 22px;
	height: 22px;
	position: absolute;
	left: -10px;
	top: 4px;
	z-index: -1;
	background: #e12d4f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.heroslider .swiper-pagination::after {
	content: "";
	width: 22px;
	height: 22px;
	position: absolute;
	right: -10px;
	top: 4px;
	z-index: -1;
	background: #e12d4f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.heroslider .swiper-pagination.swiper-pagination-bullets-dynamic {
	overflow: visible;
	width: 110px !important;
}

.heroslider .swiper-pagination .swiper-pagination-bullet {
	opacity: 1;
}

input[type="checkbox"].styled:checked+label:after,
input[type="radio"].styled:checked+label:after {
	font-family: 'FontAwesome';
	content: "\f00c";
}

input[type="checkbox"] .styled:checked+label::before,
input[type="radio"] .styled:checked+label::before {
	color: #fff;
}

input[type="checkbox"] .styled:checked+label::after,
input[type="radio"] .styled:checked+label::after {
	color: #fff;
}


/*---------------------------------------------------------------------
    layout new css 
---------------------------------------------------------------------*/

.header {
	background: #0fc690;
	padding: 40px 0px;
	padding-bottom: 35px;
}

.logo a {
	font-size: 40px;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	line-height: 40px;
}

.relative {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.banner-main {
	position: relative;
}

.banner-main .carousel-caption h1 {
	color: #fff;
	font-size: 70px;
	line-height: 70px;
	font-weight: bold;
}

.banner-main .carousel-caption p {
	font-size: 17px;
	padding: 20px 0px 40px 0px;
}

.banner-main .carousel-caption a {
	text-transform: uppercase;
	border: #0fc690 solid 1px;
	background: #0fc690;
	width: 196px;
	padding: 12px 0;
	display: inline-block;
	font-weight: 500;
	font-size: 17px;
	line-height: 30px;
	color: #fff;
}

.banner-main .carousel-caption a:hover {
	border: #000 solid 1px;
	background: #000;
}

#myCarousel a.carousel-control-next {
	position: absolute;
	top: 40% !important;
	left: inherit !important;
	right: -22px !important;
	width: 70px;
	height: 70px;
	border-radius: 35px;
}

#myCarousel a.carousel-control-prev {
	position: absolute;
	top: 40% !important;
	left: -22px !important;
	width: 70px;
	height: 70px;
	border-radius: 35px;
}


/** about section **/

.about {
	padding-top: 90px;
	padding-bottom: 90px;
	background: #fff;
}

.top_layer {
	position: relative;
}

.top_layer::before {
	position: absolute;
	width: 100%;
	height: 50px;
	content: "";
	background: url(../images/about-bg.png);
	background-position-x: 0%;
	background-position-y: 0%;
	background-repeat: repeat;
	background-size: auto;
	height: 500px;
	background-size: 100% 100%;
	background-position: center center;
	background-repeat: no-repeat;
	top: -180px;
}

.about .titlepage {
	text-align: center;
	padding-bottom: 60px;
}

.about .titlepage h2 {
	padding: 0px 0px 6px 0px;
	font-size: 40px;
	font-weight: bold;
	color: #050303;
	line-height: 46px;
	border-bottom: #0fc690 solid 1px;
	width: 410px;
	margin: 0 auto;
	margin-bottom: 0px;
	margin-bottom: 20px;
}

.about .titlepage span {
	color: #3d3c3c;
	font-size: 17px;
	line-height: 30px;
}

.about .img-box {
	text-align: center;
}

.about .img-box figure {
	margin: 0;
	margin-bottom: 60px;
}

.about .img-box a {
	text-transform: uppercase;
	border: #000 solid 1px;
	background: #000;
	width: 206px;
	padding: 15px 0;
	display: inline-block;
	font-weight: 500;
	font-size: 17px;
	line-height: 30px;
	color: #fff;
}

.about .img-box a:hover {
	border: #0fc690 solid 1px;
	background: #0fc690;
}


/** end about section **/


/** service section **/

.service {
	padding-top: 90px;
	padding-bottom: 60px;
	background: #f4f4f4;
}

.service .titlepage span {
	color: #3d3c3c
}

.service .service-box figure {
	margin: 0px;
}

.service .service-box figure img {
	width: 100%;
}

.green {
	background-color: #6fb936;
}

.service .service-box .hoverle {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 15px;
}

.service .service-box .hoverle a {
	padding: 5px 30px;
	color: transparent;
	pointer-events: none;
}

.service .titlepage {
	text-align: center;
	padding-bottom: 50px;
}

.service .titlepage h2 {
	padding: 0px 0px 6px 0px;
	font-size: 40px;
	font-weight: bold;
	color: #050303;
	line-height: 46px;
	border-bottom: #0fc690 solid 1px;
	width: 210px;
	margin: 0 auto;
	margin-bottom: 0px;
	margin-bottom: 20px;
}

.service .service-box:hover .hoverle {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	display: flex;
	justify-content: center;
	background: transparent;
	align-items: center;
	margin: 0 15px;
}

.service .service-box:hover .hoverle a {
	border: none;
	background: transparent;
	padding: 5px 30px;
	color: transparent;
	pointer-events: none;
}


/** gallery section css **/

#demo {
	height: 100%;
	position: relative;
	overflow: hidden;
}

.thumb {
	margin-bottom: 30px;
}

.green {
	background-color: #6fb936;
}

.page-top {
	margin-top: 85px;
}

img.zoom {
	width: 100%;
	object-fit: cover;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
}

.transition {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
}

.modal-header {
	border-bottom: none;
}

.modal-title {
	color: #000;
}

.modal-footer {
	display: none;
}


/** end section **/


/** end service section **/


/** download section **/

.download {
	padding-top: 90px;
	padding-bottom: 90px;
	background: #fff;
}

.download .titlepage {
	padding-bottom: 60px;
	text-align: center;
}

.download .titlepage span {
	color: #3d3c3c
}

.download .titlepage h2 {
	padding: 0px 0px 6px 0px;
	font-size: 40px;
	font-weight: bold;
	color: #050303;
	line-height: 46px;
	margin-bottom: 0px;
	margin-bottom: 20px;
}

.carousel-item {
	text-align: center;
}

.carousel-control-prev {
	left: inherit;
}

#main_slider .carousel-control-prev,
#main_slider .carousel-control-next {
	width: 55px;
	height: 55px;
	background: #000;
	opacity: 1;
	font-size: 30px;
	color: #fff;
}

#main_slider .carousel-control-prev:hover,
#main_slider .carousel-control-next:hover,
#main_slider .carousel-control-prev:focus,
#main_slider .carousel-control-next:focus {
	background: #0fc690;
	color: #fff;
}

#main_slider a.carousel-control-prev {
	position: absolute;
	top: 40%;
}

#main_slider a.carousel-control-next {
	position: absolute;
	top: 40%;
}

.read-more {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.read-more a {
	background: #000;
	width: 206px;
	text-transform: uppercase;
	color: #fff;
	text-align: center;
	padding: 15px 0px;
	font-weight: 500;
	font-size: 17px;
	line-height: 30px;
	margin-top: 0;
}

.read-more a:hover {
	background: #0fc690;
}


/** end download section **/

.testimonial {
	background: #0fc690;
	padding: 60px 0px;
}

.testimonial .titlepage {
	text-align: center;
}

.testimonial .titlepage h3 {
	padding: 0px 0px 6px 0px;
	font-size: 30px;
	font-weight: bold;
	color: #fff;
	line-height: 46px;
	border-bottom: #fff solid 1px;
	width: 184px;
	margin: 0 auto;
	margin-bottom: 60px;
}

.banner-bg {
	background: #fff;
}

.relat {
	position: inherit;
}

.fa.fa-quote-right {
	transform: rotateY(180DEG) rotateZ(184deg);
	padding-left: 10px;
}

.fa.fa-quote-left {
	padding-right: 5px;
}

.carousel-caption.relat h3 {
	color: #0fc690;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 20px;
	padding-bottom: 5px;
}

.carousel-caption.relat span {
	color: #121514;
	font-size: 16px;
	text-transform: uppercase;
	padding-bottom: 5px;
	display: inline-block;
}

.carousel-caption.relat p {
	color: #121514;
}

#testimonial_slider .carousel-control-prev:hover,
#testimonial_slider .carousel-control-next:hover,
#testimonial_slider .carousel-control-prev:focus,
#testimonial_slider .carousel-control-next:focus {
	color: #fff;
	background: #0fc690;
	width: 50px;
	height: 50px;
}

#testimonial_slider a.carousel-control-prev {
	position: absolute;
	top: 35%;
	color: #fff;
	background: #000;
	width: 50px;
	height: 50px;
	opacity: 1;
}

#testimonial_slider a.carousel-control-next {
	position: absolute;
	top: 46%;
	color: #fff;
	background: #000;
	width: 50px;
	height: 50px;
	float: left;
	left: 0px;
	opacity: 1;
}

.testimonial .contact h3 {
	color: #000;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 20px;
}

.testimonial .contact {
	background: #fff;
	width: 100%;
	height: 100%;
	padding: 30px;
}

.testimonial .contact .contactus {
	border: #b1b0b0 solid 1px;
	padding: 12px 19px;
	margin-bottom: 26px;
	border-radius: inherit;
	color: #000;
	width: 100%;
}

.testimonial .contact .textarea {
	margin-bottom: 25px;
	padding: 15px 19px;
	color: #000 !important;
	width: 100%;
	border: #b1b0b0 solid 1px;
	border-radius: inherit;
}

.testimonial .contact .send {
	font-size: 16px;
	border: #000 solid 1px;
	padding: 10px 50px;
	background-color: #000;
	color: #fff;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	align-items: center;
	flex-wrap: wrap;
}

.testimonial .contact .send:hover {
	background-color: #0fc690;
	border: #0fc690 solid 1px;
	color: #fff;
}

.width {
	width: 25%;
}

.footer {
	background: #023023;
	padding-top: 55px;
}

.footer .address {
	margin-bottom: 0;
	text-align: left;
}

.footer .address h3 {
	color: #ffffff;
	font-size: 20px;
	line-height: 28px;
	font-weight: 600;
	padding-bottom: 0;
	margin: 0 0 16px 0;
	text-align: left;
}

.footer .footer-location {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #e2e8f0;
	font-size: 13.5px;
	font-weight: 500;
	margin-top: 12px;
	text-align: left;
}

.footer .footer-location img {
	width: 14px;
	height: auto;
	vertical-align: middle;
}

.form-control {
	border: #b1b0b0 solid 2px;
	margin-bottom: 30px;
	border-radius: inherit;
	padding: 16px 19px;
	color: #cfcece;
}

.form-control:focus,
.form-control:hover {
	border: #b1b0b0 solid 2px !important;
}

.textarea {
	margin-bottom: 30px;
	padding: 71px 19px;
	color: #655f5f !important;
	width: 100%;
	border: #b1b0b0 solid 2px;
	border-radius: inherit;
}

.send-btn {
	margin-left: 15px;
	font-size: 16px;
	border: #000000 solid 2px;
	padding: 16px 70px;
	background-color: #000000;
	color: #fff;
}

.send-btn:hover {
	background-color: #ff0000;
	border: #ff0000 solid 2px;
	color: #fff;
}

ul.contant_icon {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	float: left;
}

ul.contant_icon li {
	float: left;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding-right: 8px;
}

ul.contant_icon li img {
	width: 32px;
	height: 32px;
}

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

@media (min-width: 992px) {
	.footer-col {
		margin-bottom: 0;
	}
}

.footer .address ul.contant_icon {
	margin-top: 15px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.footer .address ul.contant_icon li {
	float: none;
	padding-right: 0;
}

.copyright {
	background-color: #fff;
	padding: 20px 0px;
	;
	margin-top: 55px;
}

.copyright p {
	color: #000;
	font-size: 18px;
	line-height: 22px;
	text-align: center;
}

.copyright a:hover {
	color: #0fc690
}


/*---------------------------------------------------------------------
    ener page css
---------------------------------------------------------------------*/

.about-bg {
	background-color: #ad2100;
	margin-bottom: 90px;
}

.about-bg .abouttitle h2 {
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	line-height: 45px;
	padding: 40px 0;
	font-weight: 500;
	text-align: center;
}

.Currency-bg {
	background-color: #ad2100;
}

.Currency-bg .abouttitle h2 {
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	line-height: 45px;
	padding: 40px 0;
	font-weight: 500;
	text-align: center;
}

.Request-bg {
	background-color: #ad2100;
}

.Request-bg .abouttitle h2 {
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	line-height: 45px;
	padding: 40px 0;
	font-weight: 500;
	text-align: center;
}

.Team-bg {
	background-color: #ad2100;
}

.Team-bg .abouttitle h2 {
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	line-height: 45px;
	padding: 40px 0;
	font-weight: 500;
	text-align: center;
}


/** slider arrow **/

#myCarousel .carousel-control-prev,
#myCarousel .carousel-control-next {
	width: 62px;
	height: 60px;
	background: #fffdfd;
	opacity: 1;
	font-size: 30px;
	color: #000;
}

#myCarousel .carousel-control-prev:hover,
#myCarousel .carousel-control-next:hover,
#myCarousel .carousel-control-prev:focus,
#myCarousel .carousel-control-next:focus {
	background: #0fc690;
	color: #fff;
}

#myCarousel a.carousel-control-prev {
	position: absolute;
	left: 82px;
	bottom: 10px;
	top: inherit;
}

#myCarousel a.carousel-control-next {
	position: absolute;
	left: 10px;
	top: inherit;
	bottom: 10px;
}

/*---------------------------------------------------------------------
    Scanly Content & Functional Additions (Wise Visual System)
---------------------------------------------------------------------*/

/* 1. Header Layout & Alignment */
.header {
	background: #0fc690;
	padding: 18px 0px;
}

.header .row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header .logo_section {
	text-align: left;
	display: flex;
	align-items: center;
}

.header .logo {
	float: none;
	display: inline-flex;
	align-items: center;
	margin: 0;
	line-height: 1;
}

.header .logo a {
	font-size: 36px;
	font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	line-height: 1;
	letter-spacing: -0.5px;
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.header .scanly-brand-qr {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	line-height: 1;
	flex-shrink: 0;
	vertical-align: middle;
	transition: transform 0.2s ease-in-out;
}

.header .scanly-brand-qr svg {
	width: 28px;
	height: 28px;
	display: block;
}

.header .logo a:hover .scanly-brand-qr {
	transform: scale(1.05);
}

.header .menu-area {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
}

.header .limit-box {
	width: 100%;
}

.header nav.main-menu {
	float: none;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	width: 100%;
}

.header .menu-area-main {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	list-style: none;
	flex-wrap: nowrap;
}

.header .menu-area-main>li {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.header .menu-area-main>li>a {
	padding: 8px 12px;
	line-height: 1;
	font-size: 14px;
	font-weight: 600;
	color: #ffffff;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	transition: all 0.2s ease-in-out;
}

.header .menu-area-main>li:hover>a,
.header .menu-area-main>li.active>a {
	color: #000000;
}

.header .menu-area-main>li.mean-last {
	margin-left: 6px;
}

.header .menu-area-main>li.mean-last>a {
	padding: 8px 0 8px 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.header .menu-area-main>li.mean-last img {
	width: 18px;
	height: 18px;
	display: block;
	filter: brightness(0) invert(1);
	transition: transform 0.2s;
}

.header .menu-area-main>li.mean-last:hover img {
	transform: scale(1.1);
	filter: brightness(0);
}

@media (min-width: 992px) and (max-width: 1199px) {
	.header .menu-area-main>li>a {
		padding: 8px 7px;
		font-size: 12.5px;
	}

	.header .logo a {
		font-size: 30px;
	}

	.header .scanly-brand-qr svg {
		width: 25px;
		height: 25px;
	}

	.header .scanly-brand-qr {
		margin-right: 8px;
	}
}

/* Backdrop / Overlay for Mobile Sidebar */
.sidebar-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	background: rgba(0, 0, 0, 0.45);
	z-index: 99990;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0.25s ease;
	pointer-events: none !important;
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}

body.sidebar-open {
	overflow: hidden !important;
	touch-action: none !important;
}

body.sidebar-open .sidebar-backdrop {
	opacity: 1;
	visibility: visible;
	pointer-events: auto !important;
}

@media (min-width: 992px) {

	.sidebar-backdrop,
	.mean-nav {
		display: none !important;
	}
}

@media (max-width: 991px) {
	.header {
		padding: 16px 0 20px 0;
		position: relative;
		background: #0fc690;
		z-index: 1000;
	}

	.header .row {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		margin: 0 !important;
	}

	.header .logo_section {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		text-align: left !important;
		justify-content: flex-start !important;
		margin-bottom: 0 !important;
		padding: 0 !important;
	}

	.header .logo {
		float: none !important;
		display: inline-flex !important;
		align-items: center !important;
		text-align: left !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.header .logo a {
		font-size: 28px !important;
		color: #ffffff !important;
		line-height: 1 !important;
		font-weight: 700 !important;
	}

	.header .scanly-brand-qr svg {
		width: 22px !important;
		height: 22px !important;
	}

	.header .scanly-brand-qr {
		margin-right: 7px !important;
	}

	.header .col-xl-9.col-lg-9.col-md-9.col-sm-12 {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		padding: 0 !important;
		position: static !important;
	}

	.header .menu-area {
		display: block !important;
		width: auto !important;
		position: static !important;
	}

	.header nav.main-menu {
		display: none !important;
	}

	.mean-container .mean-bar {
		background: transparent !important;
		padding: 0 !important;
		min-height: 0 !important;
		position: relative !important;
		float: none !important;
		margin: 0 !important;
		z-index: 1001 !important;
	}

	.mean-container a.meanmenu-reveal {
		position: relative !important;
		z-index: 1002 !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		align-items: center !important;
		width: 42px !important;
		height: 38px !important;
		padding: 6px !important;
		background: rgba(0, 0, 0, 0.22) !important;
		border: 1px solid rgba(255, 255, 255, 0.45) !important;
		border-radius: 4px !important;
		color: #ffffff !important;
		cursor: pointer !important;
		text-decoration: none !important;
		box-sizing: border-box !important;
		transition: all 0.2s ease !important;
		touch-action: manipulation !important;
		user-select: none !important;
		-webkit-tap-highlight-color: transparent !important;
		top: auto !important;
		right: auto !important;
		left: auto !important;
	}

	.mean-container a.meanmenu-reveal:hover {
		background: rgba(0, 0, 0, 0.4) !important;
		border-color: #ffffff !important;
	}

	.mean-container a.meanmenu-reveal span {
		background: #ffffff !important;
		display: block !important;
		height: 2.5px !important;
		width: 22px !important;
		margin-top: 3.5px !important;
		border-radius: 1px !important;
		pointer-events: none !important;
	}

	.mean-container a.meanmenu-reveal span:first-child {
		margin-top: 0 !important;
	}

	.mean-container a.meanmenu-reveal.meanclose {
		display: flex !important;
		font-size: 24px !important;
		font-weight: 700 !important;
		line-height: 24px !important;
		color: #ffffff !important;
		text-align: center !important;
	}

	/* Sidebar Drawer (.mean-nav) */
	.mean-nav,
	.mean-container .mean-nav {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 300px !important;
		max-width: 85vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		background: #ffffff !important;
		box-shadow: -5px 0 25px rgba(0, 0, 0, 0.22) !important;
		z-index: 99999 !important;
		display: flex !important;
		flex-direction: column !important;
		transform: translateX(100%) !important;
		transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s ease !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
		opacity: 1 !important;
		filter: none !important;
		-webkit-filter: none !important;
	}

	body.sidebar-open .mean-nav,
	body.sidebar-open .mean-container .mean-nav {
		transform: translateX(0) !important;
		visibility: visible !important;
		pointer-events: auto !important;
	}

	/* Sidebar Header */
	.sidebar-header {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		padding: 18px 20px 18px 22px !important;
		border-bottom: 1px solid #ebebeb !important;
		background: #ffffff !important;
		flex-shrink: 0 !important;
		width: 100% !important;
		box-sizing: border-box !important;
		position: relative !important;
		z-index: 10 !important;
	}

	.sidebar-header .sidebar-brand {
		display: flex !important;
		align-items: center !important;
	}

	.sidebar-header .sidebar-brand a {
		font-size: 24px !important;
		font-weight: 700 !important;
		color: #0fc690 !important;
		text-transform: uppercase !important;
		letter-spacing: -0.5px !important;
		text-decoration: none !important;
		line-height: 1 !important;
		padding: 0 !important;
		border: none !important;
	}

	.sidebar-header .sidebar-brand .scanly-brand-qr {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		margin-right: 8px !important;
		flex-shrink: 0 !important;
	}

	.sidebar-header .sidebar-brand .scanly-brand-qr svg {
		width: 22px !important;
		height: 22px !important;
		display: block !important;
	}

	.sidebar-header .sidebar-close-btn {
		width: 36px !important;
		height: 36px !important;
		border-radius: 50% !important;
		background: #f4f4f4 !important;
		border: none !important;
		color: #333333 !important;
		font-size: 26px !important;
		line-height: 32px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		cursor: pointer !important;
		padding: 0 !important;
		margin: 0 !important;
		position: relative !important;
		z-index: 11 !important;
		transition: background 0.2s, color 0.2s, transform 0.2s !important;
		outline: none !important;
	}

	.sidebar-header .sidebar-close-btn:hover,
	.sidebar-header .sidebar-close-btn:focus {
		background: #0fc690 !important;
		color: #ffffff !important;
		transform: rotate(90deg) !important;
	}

	/* Sidebar Navigation Items */
	.mean-nav ul,
	.mean-container .mean-nav ul {
		display: block !important;
		height: auto !important;
		padding: 8px 0 24px 0 !important;
		margin: 0 !important;
		list-style: none !important;
		width: 100% !important;
		background: #ffffff !important;
		border: none !important;
		box-shadow: none !important;
		flex: 1 1 auto !important;
	}

	.mean-nav ul li,
	.mean-container .mean-nav ul li {
		width: 100% !important;
		float: none !important;
		display: block !important;
		position: relative !important;
		border: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.mean-nav ul li a,
	.mean-container .mean-nav ul li a {
		display: flex !important;
		align-items: center !important;
		float: none !important;
		width: 100% !important;
		min-height: 48px !important;
		padding: 12px 22px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		color: #242424 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.5px !important;
		border-bottom: 1px solid #f2f2f2 !important;
		box-sizing: border-box !important;
		text-decoration: none !important;
		transition: background 0.2s ease, color 0.2s ease, padding-left 0.2s ease !important;
		background: #ffffff !important;
	}

	.mean-nav ul li a:hover,
	.mean-nav ul li a:focus,
	.mean-nav ul li a:active,
	.mean-container .mean-nav ul li a:hover,
	.mean-container .mean-nav ul li a:focus,
	.mean-container .mean-nav ul li a:active {
		background: #f0fdf9 !important;
		color: #0fc690 !important;
		padding-left: 28px !important;
	}

	.mean-nav ul li:last-child a,
	.mean-container .mean-nav ul li:last-child a {
		border-bottom: none !important;
	}

	.mean-nav ul li.mean-last,
	.mean-container .mean-nav ul li.mean-last {
		display: none !important;
	}
}

/* Tablet Sidebar Width (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {

	.mean-nav,
	.mean-container .mean-nav {
		width: 340px !important;
		max-width: 360px !important;
	}
}

/* 2. Unified Section Heading & Paragraph Alignment */
.titlepage {
	text-align: center !important;
	padding-bottom: 0 !important;
	margin-bottom: 35px !important;
	position: relative;
	width: 100%;
}

.titlepage h2,
.titlepage h3 {
	text-align: center !important;
	font-size: 38px;
	font-weight: 700;
	color: #050303;
	line-height: 46px;
	border-bottom: #0fc690 solid 3px !important;
	display: inline-block !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 auto 16px auto !important;
	padding: 0 0 6px 0 !important;
}

.titlepage p,
.titlepage span {
	display: block !important;
	text-align: center !important;
	color: #555555;
	font-size: 16px;
	line-height: 26px;
	max-width: 820px;
	margin: 0 auto !important;
	padding: 0 !important;
}

.titlepage-white h2,
.titlepage-white h3 {
	color: #ffffff !important;
	border-bottom: #ffffff solid 3px !important;
}

.titlepage-white p,
.titlepage-white span {
	color: rgba(255, 255, 255, 0.9) !important;
}

/* Hero Slider Buttons */
.banner-main .carousel-caption a.hero-btn-alt {
	background: #000000;
	border-color: #000000;
	margin-left: 10px;
}

.banner-main .carousel-caption a.hero-btn-alt:hover {
	background: #0fc690;
	border-color: #0fc690;
	color: #ffffff;
}

/* 3. Section Spacing & Live QR Demo */
.qr-demo-section {
	background: #ffffff;
	padding: 55px 0;
	margin-top: 50px;
	margin-bottom: 50px;
	border-top: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
	position: relative;
	z-index: 10;
}

.qr-demo-text {
	text-align: left;
}

.qr-demo-text h2 {
	text-align: left;
	font-size: 34px;
	font-weight: 700;
	color: #111111;
	line-height: 42px;
	margin: 0 0 14px 0;
	padding: 0 0 6px 0;
	border-bottom: #0fc690 solid 3px;
	display: inline-block;
}

.qr-demo-text p {
	font-size: 15.5px;
	color: #555555;
	line-height: 26px;
	margin: 0;
	text-align: justify;
	max-width: 650px;
}

.qr-interactive-card {
	background: #fbfbfb;
	border: 2px solid #0fc690;
	border-radius: 4px;
	padding: 24px 20px;
	text-align: center;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.qr-code-box {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	padding: 10px;
	border: 1px solid #dddddd;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	margin-bottom: 12px;
	min-width: 120px;
	min-height: 120px;
}

.qr-code-box img {
	display: block;
	margin: 0 auto;
}

.qr-interactive-card .qr-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	background: #0fc690;
	color: #ffffff;
	padding: 6px 14px;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 8px;
	border-radius: 2px;
	line-height: 1.2;
}

.qr-interactive-card .qr-badge i {
	font-size: 13px;
}

.qr-showcase-caption {
	padding-top: 0;
	text-align: center;
}

.qr-showcase-caption p {
	font-size: 13.5px;
	color: #666666;
	margin: 0;
	line-height: 20px;
}

@media (max-width: 991px) {
	.qr-interactive-card {
		margin-top: 30px;
	}
}

/* 4. About Scanly — Image Beside Text & Spacing */
.about {
	padding-top: 75px;
	padding-bottom: 85px;
	background: #ffffff;
	position: relative;
}

.top_layer::before {
	position: absolute;
	width: 100%;
	content: "";
	background: url(../images/about-bg.png);
	background-size: 100% 100%;
	background-position: center center;
	background-repeat: no-repeat;
	height: 460px;
	top: -20px;
	z-index: 0;
	pointer-events: none;
}

.about .container {
	position: relative;
	z-index: 1;
}

.about-content-box {
	padding-right: 30px;
}

.about-content-box .titlepage {
	margin-bottom: 20px !important;
}

.about-lead {
	font-size: 16px;
	line-height: 28px;
	color: #222222;
	margin-bottom: 16px !important;
	text-align: left !important;
}

.about-subtext {
	font-size: 15px;
	line-height: 26px;
	color: #666666;
	margin-bottom: 28px !important;
	text-align: left !important;
}

.about-btn-wrap {
	margin-top: 8px;
	text-align: left;
}

.about-cta-btn {
	text-transform: uppercase;
	border: #000000 solid 1px;
	background: #000000;
	width: 206px;
	padding: 14px 0;
	display: inline-block;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: #ffffff;
	text-align: center;
	transition: all 0.3s;
}

.about-cta-btn:hover {
	border-color: #0fc690;
	background: #0fc690;
	color: #ffffff;
}

.about-img-box {
	text-align: center;
	padding-left: 15px;
}

.about-img-box figure {
	margin: 0;
}

.about-img-box img {
	max-width: 100%;
	height: auto;
	object-fit: contain;
	display: inline-block;
}

@media (max-width: 991px) {
	.about-content-box {
		padding-right: 0;
		margin-bottom: 40px;
	}

	.about-img-box {
		padding-left: 0;
	}
}

/* Service Caption Box */
.service-caption-box {
	background: #ffffff;
	padding: 18px 15px;
	border-top: 3px solid #0fc690;
	text-align: center;
	margin-bottom: 30px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
}

.service-caption-box h4 {
	font-size: 18px;
	font-weight: 600;
	color: #111111;
	margin-bottom: 6px;
}

.service-caption-box p {
	font-size: 13px;
	color: #666666;
	line-height: 20px;
	margin: 0;
}

/* How It Works Steps */
.step-box {
	background: #ffffff;
	border: 1px solid #e6e6e6;
	border-top: 4px solid #0fc690;
	padding: 32px 24px;
	text-align: center;
	margin-bottom: 30px;
	height: calc(100% - 30px);
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04);
	transition: all 0.3s ease-in-out;
}

.step-box:hover {
	transform: translateY(-4px);
	box-shadow: 0 6px 20px rgba(15, 198, 144, 0.15);
	border-top-color: #000000;
}

.step-number {
	font-family: 'Rajdhani', sans-serif;
	font-size: 46px;
	font-weight: 700;
	color: #0fc690;
	line-height: 1;
	margin-bottom: 14px;
}

.step-box h4 {
	font-size: 20px;
	font-weight: 600;
	color: #111111;
	margin-bottom: 10px;
}

.step-box p {
	font-size: 14px;
	color: #666666;
	line-height: 22px;
	margin-bottom: 0;
}

/* Pricing Grid in Wise Style */
.pricing-section {
	padding-top: 85px;
	padding-bottom: 70px;
	background: #f7f7f7;
}

.pricing-box {
	background: #ffffff;
	border: 1px solid #e1e1e1;
	border-radius: 0;
	padding: 30px 20px 25px 20px;
	text-align: center;
	position: relative;
	margin-bottom: 30px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: calc(100% - 30px);
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
	transition: all 0.3s;
}

.pricing-box:hover {
	border-color: #0fc690;
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(15, 198, 144, 0.14);
}

.pricing-box.featured {
	border: 2px solid #0fc690;
	background: #ffffff;
}

.popular-badge {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	background: #0fc690;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 4px 14px;
	white-space: nowrap;
}

.pricing-box h4 {
	font-size: 20px;
	font-weight: 600;
	color: #111111;
	margin-bottom: 6px;
	padding-top: 5px;
}

.pricing-rating {
	color: #f39c12;
	font-size: 12px;
	margin-bottom: 14px;
}

.pricing-rating span {
	color: #777777;
	margin-left: 4px;
}

.pricing-price-box {
	padding: 12px 0;
	border-top: 1px solid #f0f0f0;
	border-bottom: 1px solid #f0f0f0;
	margin-bottom: 18px;
}

.pricing-price-box del {
	font-size: 13px;
	color: #999999;
	margin-right: 6px;
}

.pricing-price-box ins {
	font-family: 'Rajdhani', sans-serif;
	font-size: 28px;
	font-weight: 700;
	color: #0fc690;
	text-decoration: none;
}

.pricing-price-box .price-period {
	font-size: 12px;
	color: #666666;
	margin-left: 4px;
}

.pricing-perks {
	list-style: none;
	text-align: left;
	margin: 0 0 20px 0;
	padding: 0;
	flex-grow: 1;
}

.pricing-perks li {
	font-size: 12.5px;
	color: #555555;
	padding: 7px 0;
	border-bottom: 1px solid #f5f5f5;
	display: flex;
	align-items: flex-start;
}

.pricing-perks li i {
	color: #0fc690;
	margin-right: 8px;
	margin-top: 3px;
	flex-shrink: 0;
}

.pricing-box .btn-pricing {
	display: block;
	width: 100%;
	background: #000000;
	color: #ffffff;
	padding: 12px 0;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 600;
	border: 1px solid #000000;
	transition: all 0.3s;
	text-decoration: none !important;
}

.pricing-box .btn-pricing:hover,
.pricing-box.featured .btn-pricing {
	background: #0fc690;
	border-color: #0fc690;
	color: #ffffff;
}

.pricing-box.featured .btn-pricing:hover {
	background: #000000;
	border-color: #000000;
}

/* ── Subscription Plan Styling ── */
.pricing-box {
	border-radius: 12px;
}

.popular-badge {
	border-radius: 4px;
}

/* Plan icon circle in tier color (enlarged) */
.pricing-plan-icon {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 6px auto 14px auto;
	font-size: 30px;
	transition: transform 0.3s ease;
}

.pricing-box:hover .pricing-plan-icon {
	transform: scale(1.08);
}

.pricing-plan-icon.silver-icon {
	background: #f1f5f9;
	color: #475569;
	border: 2px solid #cbd5e1;
}

.pricing-plan-icon.gold-icon {
	background: #fef3c7;
	color: #d97706;
	border: 2px solid #fcd34d;
}

.pricing-plan-icon.platinum-icon {
	background: #e0f2fe;
	color: #0284c7;
	border: 2px solid #7dd3fc;
}

/* Plan name badge (enlarged & bold) */
.plan-name-container {
	margin-bottom: 14px;
}

.plan-name-badge {
	display: inline-block;
	padding: 7px 26px;
	border-radius: 24px;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 1.5px;
	text-transform: uppercase;
}

.silver-badge {
	background: #e2e8f0;
	color: #1e293b;
	border: 1.5px solid #cbd5e1;
}

.gold-badge {
	background: #fef3c7;
	color: #92400e;
	border: 1.5px solid #fcd34d;
}

.platinum-badge {
	background: #e0f2fe;
	color: #0369a1;
	border: 1.5px solid #7dd3fc;
}

/* Contact & Testimonial Styling */
.testimonial .contact h3 {
	text-align: left;
	font-size: 28px;
	font-weight: 700;
	color: #111111;
	border-bottom: #0fc690 solid 3px;
	display: inline-block;
	margin-bottom: 12px;
	padding-bottom: 6px;
}

.testimonial .contact p.contact-lead {
	text-align: left;
	font-size: 14.5px;
	color: #666666;
	margin-bottom: 22px;
	line-height: 22px;
}


/* Footer Link Enhancements */
.footer-links-list {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: left;
}

.footer-links-list li {
	margin-bottom: 10px;
	line-height: 22px;
}

.footer-links-list li:last-child {
	margin-bottom: 0;
}

.footer-links-list li a {
	color: #cccccc !important;
	font-size: 13.5px;
	line-height: 20px;
	display: inline-block;
	transition: color 0.2s ease, padding-left 0.2s ease;
}

.footer-links-list li a:hover {
	color: #0fc690 !important;
	padding-left: 4px;
}

.footer .contact-info-text {
	color: #cccccc;
	font-size: 13.5px;
	line-height: 22px;
	margin: 0;
	text-align: left;
}

/*---------------------------------------------------------------------
    Scanly Update: Justified Body Text (paragraphs & content blocks)
---------------------------------------------------------------------*/

/* About Scanly paragraphs */
.about-lead,
.about-subtext {
	text-align: justify !important;
}

/* How It Works step descriptions */
.step-box p {
	text-align: justify;
}

/* Features / Service caption */
.service-caption-box p {
	text-align: justify;
}

/* Titlepage intro paragraph (under headings) — centered on desktop, left on narrow */
.titlepage p,
.titlepage span {
	text-align: center !important;
}

/* Pricing section perks — left-aligned (list items, not justified) */
.pricing-perks li {
	text-align: left;
}

/* Testimonial quote text */
.carousel-caption.relat p {
	text-align: justify;
}

/* Contact lead paragraph */
.testimonial .contact p.contact-lead,
.contact-standalone .contact-lead {
	text-align: justify;
}

/* Modal body paragraphs (privacy, terms, refund) */
.modal-body p {
	text-align: justify;
}

/* Footer description text */
.footer .contact-info-text {
	text-align: left;
}

/* Mobile paragraph alignment is handled in the unified mobile media query */

/*---------------------------------------------------------------------
    Scanly Update: Centered Hero Banner Layout & Responsiveness
---------------------------------------------------------------------*/

.slider_section {
	overflow: hidden;
	position: relative;
	background-color: #14181e !important;
}

#myCarousel.banner-main {
	background-color: #14181e !important;
	position: relative;
}

#myCarousel.banner-main .carousel-inner {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #14181e !important;
}

/* Subtle Grey Gradient Overlay on Banner — enhances text visibility while keeping imagery crisp */
#myCarousel.banner-main .carousel-item {
	position: relative;
	background-color: #14181e !important;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: -webkit-transform .6s ease-in-out, transform .6s ease-in-out !important;
}

#myCarousel.banner-main .carousel-item>img {
	width: 100%;
	display: block;
}

/* Ensure incoming/outgoing slides overlap at top: 0, left: 0 — prevents them from stacking below and showing blank background */
#myCarousel.banner-main .carousel-item-next,
#myCarousel.banner-main .carousel-item-prev {
	display: block !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 1;
}

#myCarousel.banner-main .carousel-item-next>img,
#myCarousel.banner-main .carousel-item-prev>img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
}

#myCarousel.banner-main .carousel-item-next.carousel-item-left,
#myCarousel.banner-main .carousel-item-prev.carousel-item-right {
	-webkit-transform: translateX(0) !important;
	transform: translateX(0) !important;
}

#myCarousel.banner-main .carousel-item-next,
#myCarousel.banner-main .active.carousel-item-right {
	-webkit-transform: translateX(100%) !important;
	transform: translateX(100%) !important;
}

#myCarousel.banner-main .carousel-item-prev,
#myCarousel.banner-main .active.carousel-item-left {
	-webkit-transform: translateX(-100%) !important;
	transform: translateX(-100%) !important;
}

#myCarousel.banner-main .carousel-item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(25, 30, 36, 0.42) 0%, rgba(45, 52, 60, 0.32) 45%, rgba(20, 24, 30, 0.48) 100%);
	z-index: 1;
	pointer-events: none;
}

#myCarousel .carousel-control-prev,
#myCarousel .carousel-control-next {
	z-index: 12 !important;
}

/* Centered Banner Content */
.banner-main .carousel-caption {
	text-align: center !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: 920px;
	margin: 0 auto;
	padding: 0 20px;
	z-index: 2;
}

.banner-main .carousel-caption h1 {
	text-align: center !important;
	color: #ffffff;
	font-size: 60px;
	line-height: 68px;
	font-weight: 700;
	margin: 0 auto 16px auto;
	max-width: 860px;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.60);
}

.banner-main .carousel-caption p {
	text-align: center !important;
	font-size: 17px;
	line-height: 27px;
	color: rgba(255, 255, 255, 0.95);
	margin: 0 auto 28px auto;
	max-width: 740px;
	padding: 0;
	display: block;
	text-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
}

.banner-main .carousel-caption a {
	display: inline-block;
	text-align: center;
	margin: 0 6px;
	vertical-align: middle;
}

/* hero-btn-alt left margin only on desktop/tablet — mobile uses flex gap instead */
@media (min-width: 768px) {
	.banner-main .carousel-caption a.hero-btn-alt {
		margin-left: 6px !important;
	}
}

.banner-main .hero-btn-box {
	display: block;
	margin-top: 5px;
}

/* Tablet Responsiveness (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
	.banner-main .carousel-caption h1 {
		font-size: 44px;
		line-height: 52px;
		max-width: 680px;
	}

	.banner-main .carousel-caption p {
		font-size: 16px;
		line-height: 25px;
		max-width: 620px;
		margin-bottom: 22px;
	}

	.banner-main .carousel-caption a {
		width: 175px;
		font-size: 15px;
		padding: 10px 0;
	}
}

/* Mobile hero image hidden on desktop and tablet */
.banner-main .hero-mobile-img {
	display: none !important;
}

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

	/* Banner: Responsive mirror of desktop visual presentation */
	.slider_section {
		background: #1c2026;
		overflow: hidden;
		position: relative;
	}

	/* Hero carousel item: full-height slide backdrop matching desktop */
	#myCarousel.banner-main .carousel-item {
		min-height: 480px !important;
		padding: 0 !important;
		background: #1c2026 !important;
		overflow: hidden;
	}

	#myCarousel.banner-main .carousel-item.active {
		position: relative !important;
	}

	#myCarousel.banner-main .carousel-item-next,
	#myCarousel.banner-main .carousel-item-prev {
		display: block !important;
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
	}

	/* Show desktop hero background image on mobile, maintaining desktop composition */
	#myCarousel.banner-main .carousel-item>img {
		display: block !important;
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		object-position: center center !important;
	}

	/* Grey gradient overlay active on mobile for crisp text visibility */
	#myCarousel.banner-main .carousel-item::before {
		display: block !important;
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
		background: linear-gradient(180deg, rgba(20, 24, 30, 0.58) 0%, rgba(35, 42, 50, 0.48) 45%, rgba(18, 22, 28, 0.64) 100%);
		z-index: 1;
		pointer-events: none;
	}

	/* Hide the separate mobile sandwich image */
	.banner-main .hero-mobile-img {
		display: none !important;
	}

	/* Dashboard carousel item: preserve laptop slider display */
	.laptop-screen #main_slider.banner-main .carousel-item {
		min-height: auto !important;
		padding: 0 !important;
		background: #0b0e14 !important;
	}

	.laptop-screen #main_slider.banner-main .carousel-item>img {
		display: block !important;
		position: static !important;
		width: 100% !important;
		height: auto !important;
		max-width: 100% !important;
		object-fit: contain !important;
	}

	/* Centered banner caption floating over the backdrop, exactly like desktop */
	.banner-main .carousel-caption {
		position: absolute !important;
		top: 50% !important;
		left: 0 !important;
		right: 0 !important;
		bottom: auto !important;
		transform: translateY(-50%) !important;
		z-index: 2 !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 20px 16px !important;
		margin: 0 auto !important;
		display: block !important;
		text-align: center !important;
	}

	.banner-main .carousel-caption.relative {
		position: absolute !important;
		top: 50% !important;
		bottom: auto !important;
		transform: translateY(-50%) !important;
	}

	.banner-main .carousel-caption h1 {
		font-size: 26px !important;
		line-height: 34px !important;
		margin: 0 auto 10px auto !important;
		padding: 0 10px !important;
		max-width: 520px !important;
		text-align: center !important;
		color: #ffffff !important;
		width: 100% !important;
		text-shadow: 0 2px 8px rgba(0, 0, 0, 0.75);
	}

	.banner-main .carousel-caption p {
		display: block !important;
		font-size: 14px !important;
		line-height: 21px !important;
		margin: 0 auto 18px auto !important;
		padding: 0 10px !important;
		max-width: 480px !important;
		text-align: center !important;
		color: rgba(255, 255, 255, 0.95) !important;
		width: 100% !important;
		text-shadow: 0 1px 6px rgba(0, 0, 0, 0.80);
	}

	.banner-main .hero-btn-box {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-wrap: wrap !important;
		gap: 10px 12px !important;
		margin-top: 14px !important;
		margin-bottom: 0 !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 10px !important;
		padding-right: 10px !important;
		text-align: center !important;
		box-sizing: border-box !important;
	}

	.banner-main .hero-btn-box a {
		width: 145px !important;
		font-size: 13.5px !important;
		padding: 9px 0 !important;
		margin: 0 !important;
		text-align: center !important;
		display: inline-block !important;
		vertical-align: middle !important;
		flex-shrink: 0 !important;
	}

	.banner-main .hero-btn-box a.hero-btn-alt {
		margin: 0 !important;
	}

	#myCarousel a.carousel-control-prev {
		left: 6px !important;
		width: 38px !important;
		height: 38px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		z-index: 12 !important;
	}

	#myCarousel a.carousel-control-next {
		right: 6px !important;
		width: 38px !important;
		height: 38px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		z-index: 12 !important;
	}

	/* ------------------------------------------------------------------
	   Mobile Section Spacing Reduction (eliminates excessive ~90px gaps)
	------------------------------------------------------------------ */
	.qr-demo-section {
		padding: 28px 0 !important;
		margin-top: 18px !important;
		margin-bottom: 18px !important;
	}

	.about {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	}

	#how-it-works.about {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	}

	.service {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	}

	.download {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	}

	.pricing-section {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
	}

	.testimonial {
		padding: 36px 0 40px 0 !important;
	}

	.contact-section {
		padding: 36px 0 40px 0 !important;
	}

	/* Reduced vertical spacing around titlepages */
	.titlepage {
		margin-bottom: 20px !important;
		text-align: center !important;
	}

	.titlepage h2,
	.titlepage h3 {
		font-size: 28px !important;
		line-height: 36px !important;
		margin: 0 auto 10px auto !important;
		text-align: center !important;
		display: table !important;
	}

	/* ------------------------------------------------------------------
	   Mobile Text Alignment: Centered Headings & Justified Paragraphs
	------------------------------------------------------------------ */
	/* All section titles & subheadings centered on mobile */
	.titlepage,
	.about-content-box .titlepage,
	.contact-titlepage,
	.qr-demo-text {
		text-align: center !important;
	}

	.titlepage h2,
	.titlepage h3,
	.about-content-box .titlepage h2,
	.contact-titlepage h2,
	.qr-demo-text h2 {
		text-align: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
		display: table !important;
	}

	/* Card / item headings centered on mobile */
	.step-box h4,
	.service-caption-box h4,
	.pricing-box h4 {
		text-align: center !important;
	}

	/* All body paragraphs justified on mobile across sections */
	.titlepage p,
	.titlepage span,
	.about-lead,
	.about-subtext,
	.about-content-box p,
	.qr-demo-text p,
	.step-box p,
	.service-caption-box p,
	.contact-titlepage p,
	.modal-body p {
		text-align: justify !important;
		text-justify: inter-word;
	}

	.about-content-box {
		margin-bottom: 24px !important;
	}

	.about-btn-wrap {
		text-align: center !important;
		margin-top: 16px !important;
	}
}

/* Extra Small Mobile (<= 575px) */
@media (max-width: 575px) {
	#myCarousel.banner-main .carousel-item {
		min-height: 440px !important;
	}

	.banner-main .carousel-caption h1 {
		font-size: 23px !important;
		line-height: 30px !important;
		margin-bottom: 8px !important;
		padding: 0 8px !important;
	}

	.banner-main .carousel-caption p {
		font-size: 13px !important;
		line-height: 19px !important;
		margin-bottom: 14px !important;
		padding: 0 8px !important;
		max-width: 380px !important;
	}

	.banner-main .hero-btn-box a {
		width: 132px !important;
		font-size: 12.5px !important;
		padding: 8px 0 !important;
	}

	.banner-main .hero-btn-box a.hero-btn-alt {
		margin: 0 !important;
	}

	.titlepage h2,
	.titlepage h3 {
		font-size: 24px !important;
		line-height: 32px !important;
	}
}

/*---------------------------------------------------------------------
    Scanly Update: About Section — Center Heading
---------------------------------------------------------------------*/

/* The About section has its own .titlepage inside .about-content-box on the left column.
   We already center .titlepage globally, but ensure it inherits properly here. */
.about-content-box .titlepage {
	text-align: center !important;
}

.about-content-box .titlepage h2 {
	text-align: center !important;
	margin: 0 auto 16px auto !important;
}

/*---------------------------------------------------------------------
    Scanly Update: Customer Reviews — 3-Column Review Grid
---------------------------------------------------------------------*/

.testimonial {
	background: #0fc690;
	padding: 60px 0 65px 0;
}

.reviews-section-container {
	max-width: 1140px;
	margin: 0 auto;
}

.reviews-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	align-items: stretch;
}

@media (max-width: 991px) {
	.reviews-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}
}

@media (max-width: 767px) {
	.reviews-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

.review-card {
	background: #ffffff;
	border-radius: 10px;
	padding: 20px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	height: 100%;
	box-sizing: border-box;
	text-align: left;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.review-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
}

.review-card-top {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.review-avatar-wrap {
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	margin-right: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.review-avatar-img {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.review-avatar-fallback {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #0fc690;
	color: #ffffff;
	font-weight: 700;
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	user-select: none;
}

.review-card-meta {
	flex: 1;
	overflow: hidden;
}

.reviewer-name {
	font-size: 14px;
	font-weight: 700;
	color: #111111;
	margin: 0 0 2px 0;
	line-height: 18px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.reviewer-business {
	font-size: 12px;
	color: #777777;
	margin: 0;
	line-height: 16px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.review-stars {
	color: #0fc690;
	font-size: 14px;
	letter-spacing: 2px;
	line-height: 1;
	margin-bottom: 10px;
}

.review-quote {
	font-size: 13px;
	line-height: 1.5;
	color: #444444;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.reviews-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 24px;
	gap: 8px;
}

.review-dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.45);
	border: 1px solid #ffffff;
	cursor: pointer;
	padding: 0;
	outline: none !important;
	transition: all 0.2s ease;
}

.review-dot:hover {
	background: rgba(255, 255, 255, 0.75);
}

.review-dot.active {
	background: #ffffff;
	width: 26px;
	border-radius: 10px;
}

/*---------------------------------------------------------------------
    Scanly Update: Contact Section (standalone)
---------------------------------------------------------------------*/

.contact-section {
	background: #ffffff;
	padding: 70px 0 80px 0;
	border-top: 3px solid #0fc690;
}

/* Single Unified Card wrapping both Form and Support Visual */
#contact-us {
	background: #ffffff;
	border: 1px solid #e1e1e1;
	border-top: 3px solid #0fc690;
	box-shadow: 0 3px 16px rgba(0, 0, 0, 0.06);
	border-radius: 4px;
	overflow: hidden;
	margin-left: 0 !important;
	margin-right: 0 !important;
	align-items: stretch !important;
}

#contact-us>div {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Left Half: Form & Heading */
.contact-content-box {
	padding: 36px 36px 32px 36px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: #ffffff;
}

.contact-titlepage {
	text-align: left !important;
	padding-bottom: 0 !important;
	margin-bottom: 20px !important;
}

.contact-titlepage h2 {
	text-align: left !important;
	color: #050303 !important;
	border-bottom: 3px solid #0fc690 !important;
	margin-bottom: 10px !important;
	display: inline-block;
}

.contact-titlepage p {
	text-align: left !important;
	color: #555555 !important;
	font-size: 15px;
	line-height: 24px;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

/* Remove card styling from .contact-standalone since #contact-us provides the outer card */
.contact-standalone,
.contact-section .contact.contact-standalone {
	background: transparent !important;
	border: none !important;
	border-top: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	height: auto;
}

/* Right Half: Support Visual Container */
.contact-img-box {
	margin: 0;
	padding: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	background: #ffffff;
}

/* Remove card styling from .contact-visual-card */
.contact-visual-card {
	background: transparent !important;
	border: none !important;
	border-top: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	position: relative;
}

.contact-img-box figure.contact-figure {
	margin: 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.contact-img-box .contact-img {
	width: 100%;
	max-width: 490px;
	height: auto;
	max-height: 460px;
	object-fit: contain;
	display: block;
	margin: 0 auto;
	border: none;
	box-shadow: none;
	border-radius: 0;
}

/* Desktop & Large Tablet (min-width: 992px) — Side-by-side with no divider line */
@media (min-width: 992px) {
	#contact-us {
		align-items: stretch !important;
	}

	.contact-content-box {
		padding: 36px 36px 32px 36px;
	}

	.contact-img-box {
		border-left: none !important;
		border-top: none !important;
		margin-top: 0 !important;
		padding: 0 !important;
		height: 100%;
	}
}

/* Mobile & Tablet Stacking (max-width: 991px) — Stacked inside the single unified card with no divider line */
@media (max-width: 991px) {
	.contact-section {
		padding: 40px 0 50px 0 !important;
	}

	#contact-us {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.contact-content-box {
		padding: 28px 22px 24px 22px !important;
		height: auto;
	}

	.contact-titlepage {
		text-align: center !important;
		margin-bottom: 16px !important;
	}

	.contact-titlepage h2 {
		text-align: center !important;
		margin: 0 auto 10px auto !important;
		display: table !important;
	}

	.contact-titlepage p {
		text-align: center !important;
	}

	.contact-img-box {
		border-left: none !important;
		border-top: none !important;
		margin-top: 0 !important;
		padding: 0 !important;
		width: 100%;
		height: auto;
		background: #ffffff;
	}

	.contact-visual-card {
		padding: 24px 18px !important;
		height: auto;
	}

	.contact-img-box .contact-img {
		max-width: 360px;
		max-height: 330px;
		width: 100%;
	}
}

@media (max-width: 575px) {
	.contact-content-box {
		padding: 24px 16px 20px 16px !important;
	}

	.contact-visual-card {
		padding: 16px 12px 24px 12px !important;
	}

	.contact-img-box .contact-img {
		max-width: 300px;
		max-height: 280px;
		width: 100%;
	}
}

/* Standalone Contact Form — input, textarea, send button styles
   (mirrors .testimonial .contact styles for use outside the green section) */
.contact-section .contact.contact-standalone .contactus {
	border: #b1b0b0 solid 1px;
	padding: 12px 19px;
	margin-bottom: 26px;
	border-radius: inherit;
	color: #000;
	width: 100%;
}

.contact-section .contact.contact-standalone .textarea {
	margin-bottom: 25px;
	padding: 15px 19px;
	color: #000 !important;
	width: 100%;
	border: #b1b0b0 solid 1px;
	border-radius: inherit;
	min-height: 120px;
	resize: vertical;
}

.contact-section .contact.contact-standalone .send {
	font-size: 16px;
	border: #000 solid 1px;
	padding: 10px 50px;
	background-color: #000;
	color: #fff;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	align-items: center;
	cursor: pointer;
	transition: all 0.3s;
}

.contact-section .contact.contact-standalone .send:hover {
	background-color: #0fc690;
	border: #0fc690 solid 1px;
	color: #fff;
}

/* Contact Form Validation Styles */
.contact-section .contact.contact-standalone .contact-error {
	color: #dc3545;
	font-size: 13px;
	line-height: 18px;
	margin-top: -18px;
	margin-bottom: 16px;
	display: none;
	text-align: left;
	font-weight: 500;
}

.contact-section .contact.contact-standalone .contact-error.is-visible {
	display: block;
}

.contact-section .contact.contact-standalone .contactus.is-invalid,
.contact-section .contact.contact-standalone .textarea.is-invalid {
	border: 1.5px solid #dc3545 !important;
	outline: none;
	background-color: #fff9f9;
}

.contact-section .contact.contact-standalone .contactus.is-invalid:focus,
.contact-section .contact.contact-standalone .textarea.is-invalid:focus {
	border-color: #dc3545 !important;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.15);
}

/*---------------------------------------------------------------------
    Scanly Update: Dashboard Preview Laptop Mockup Frame
---------------------------------------------------------------------*/

.laptop-device-wrap {
	max-width: 860px;
	width: 100%;
	margin: 0 auto;
	padding: 0 10px;
	box-sizing: border-box;
}

.laptop-device {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

/* Screen Lid / Bezel */
.laptop-lid {
	width: 88%;
	background: #14171c;
	border: 3px solid #232731;
	border-bottom: none;
	border-radius: 14px 14px 0 0;
	padding: 10px 12px 14px 12px;
	position: relative;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.22);
	box-sizing: border-box;
}

/* Web Camera Dot */
.laptop-camera {
	width: 6px;
	height: 6px;
	background: #363b47;
	border-radius: 50%;
	margin: 0 auto 8px auto;
	position: relative;
}

.laptop-camera::after {
	content: "";
	position: absolute;
	top: 1.5px;
	left: 1.5px;
	width: 2.5px;
	height: 2.5px;
	background: #3d6cb3;
	border-radius: 50%;
}

/* Screen Display Area */
.laptop-screen {
	background: #000000;
	border-radius: 4px;
	overflow: hidden;
	position: relative;
	box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.6);
}

.laptop-screen #main_slider {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.laptop-screen #main_slider.banner-main .carousel-item {
	min-height: auto !important;
	padding: 0 !important;
	text-align: center;
	background: #0b0e14;
}

.laptop-screen #main_slider.banner-main .carousel-item img {
	width: 100%;
	max-width: 100%;
	height: auto !important;
	min-height: auto !important;
	display: block;
	object-fit: contain;
	margin: 0 auto;
	border-radius: 0;
}

/* Sleek Carousel Arrows inside Laptop Screen */
.laptop-screen #main_slider .carousel-control-prev,
.laptop-screen #main_slider .carousel-control-next {
	width: 36px;
	height: 36px;
	background: rgba(15, 20, 28, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 50%;
	color: #ffffff;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0.85;
	transition: all 0.25s ease;
	z-index: 15;
}

.laptop-screen #main_slider .carousel-control-prev {
	left: 12px;
}

.laptop-screen #main_slider .carousel-control-next {
	right: 12px;
}

.laptop-screen #main_slider .carousel-control-prev:hover,
.laptop-screen #main_slider .carousel-control-next:hover,
.laptop-screen #main_slider .carousel-control-prev:focus,
.laptop-screen #main_slider .carousel-control-next:focus {
	background: #0fc690;
	border-color: #0fc690;
	color: #ffffff;
	opacity: 1;
	transform: translateY(-50%) scale(1.08);
}

/* Laptop Keyboard Deck / Base */
.laptop-base {
	width: 100%;
	height: 14px;
	background: linear-gradient(180deg, #d3d7df 0%, #b8bcc7 50%, #9ba1ad 100%);
	border-radius: 2px 2px 8px 8px;
	position: relative;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);
	box-sizing: border-box;
}

.laptop-notch {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 70px;
	height: 5px;
	background: #7a808e;
	border-radius: 0 0 5px 5px;
}

/* Laptop Bottom Rubber Foot & Ground Shadow */
.laptop-bottom {
	width: 95%;
	height: 4px;
	background: #6c717e;
	border-radius: 0 0 10px 10px;
	margin: 0 auto;
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.28);
}

/* Read More / Get Your QR Kit Button Layout & Positioning */
.download .read-more {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 38px;
	position: relative;
	z-index: 10;
}

.download .read-more a {
	background: #000000;
	width: 220px;
	text-transform: uppercase;
	color: #ffffff;
	text-align: center;
	padding: 14px 20px;
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	margin-top: 0;
	border-radius: 3px;
	display: inline-block;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
	transition: all 0.25s ease;
}

.download .read-more a:hover {
	background: #0fc690;
	color: #ffffff;
	box-shadow: 0 6px 18px rgba(15, 198, 144, 0.35);
	transform: translateY(-2px);
}

/* Mobile Responsiveness for Laptop */
@media (max-width: 767px) {
	.laptop-lid {
		width: 92%;
		padding: 7px 8px 10px 8px;
		border-radius: 10px 10px 0 0;
	}

	.laptop-camera {
		width: 4px;
		height: 4px;
		margin-bottom: 5px;
	}

	.laptop-base {
		height: 10px;
	}

	.laptop-notch {
		width: 50px;
		height: 4px;
	}

	.laptop-screen #main_slider .carousel-control-prev,
	.laptop-screen #main_slider .carousel-control-next {
		width: 28px;
		height: 28px;
		font-size: 13px;
	}

	.laptop-screen #main_slider .carousel-control-prev {
		left: 6px;
	}

	.laptop-screen #main_slider .carousel-control-next {
		right: 6px;
	}

	.download .read-more {
		margin-top: 28px;
	}

	.download .read-more a {
		width: 200px;
		padding: 12px 18px;
		font-size: 15px;
	}
}

@media (max-width: 575px) {
	.laptop-lid {
		width: 95%;
		padding: 5px 6px 8px 6px;
		border-radius: 8px 8px 0 0;
		border-width: 2px;
	}

	.laptop-base {
		height: 8px;
	}

	.laptop-notch {
		width: 40px;
		height: 3px;
	}

	.download .read-more {
		margin-top: 24px;
	}
}

/*---------------------------------------------------------------------
    Scanly Update: Footer 3-Column Balanced Grid Alignment
---------------------------------------------------------------------*/

.footer .footer-row {
	align-items: flex-start;
}

.footer .footer-col {
	margin-bottom: 28px;
}

.footer .footer-col:last-child {
	margin-bottom: 0;
}

@media (min-width: 992px) {
	.footer .footer-col {
		margin-bottom: 0;
	}

	.footer .footer-nav-col {
		padding-left: 28px;
	}

	.footer .footer-legal-col {
		padding-left: 36px;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.footer .footer-col {
		margin-bottom: 0;
	}

	.footer .footer-nav-col {
		padding-left: 10px;
	}

	.footer .footer-legal-col {
		padding-left: 15px;
	}
}

/*---------------------------------------------------------------------
    Scanly Update: Floating Social Media Icons
---------------------------------------------------------------------*/

.floating-social-bar {
	position: fixed;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	gap: 12px;
	z-index: 999;
}

.floating-social-btn {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: transparent;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	overflow: hidden;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	text-decoration: none !important;
}

.floating-social-btn img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	display: block;
	padding: 0;
	transition: transform 0.2s ease;
}

.floating-social-btn:hover {
	transform: scale(1.1) translateX(-3px);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28);
}

.floating-social-btn:hover img {
	transform: scale(1.06);
}

@media (max-width: 767px) {
	.floating-social-bar {
		right: 10px;
		top: auto;
		bottom: 20px;
		transform: none;
		gap: 8px;
		z-index: 999;
	}

	.floating-social-btn {
		width: 38px;
		height: 38px;
		box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
	}
}

@media (max-width: 480px) {
	.floating-social-bar {
		right: 8px;
		bottom: 18px;
		gap: 8px;
	}

	.floating-social-btn {
		width: 36px;
		height: 36px;
	}
}

/*---------------------------------------------------------------------
    Scanly Update: Footer Copyright Blue Link Styling
---------------------------------------------------------------------*/

.copyright {
	background-color: #ffffff;
	padding: 18px 0;
	margin-top: 40px;
}

.copyright p {
	color: #222222;
	font-size: 14.5px;
	line-height: 22px;
	text-align: center;
	margin: 0;
	padding: 0;
}

.copyright .copyright-blue-link {
	color: #007bff !important;
	font-weight: 600;
	text-decoration: none !important;
	transition: color 0.2s ease, text-decoration 0.2s ease;
}

.copyright .copyright-blue-link:hover,
.copyright .copyright-blue-link:focus {
	color: #0056b3 !important;
	text-decoration: underline !important;
}

/*---------------------------------------------------------------------
    Scanly Update: Direct Support Alignment & Responsive Spacing
---------------------------------------------------------------------*/

.footer-direct-support {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px 16px;
	font-size: 14.5px;
	color: #ffffff;
	text-align: center;
	margin-top: 35px;
	padding-top: 25px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.footer-direct-support .support-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

.footer-direct-support .support-label {
	color: #e2e8f0;
	font-weight: 500;
}

.footer-direct-support .support-link {
	color: #0fc690 !important;
	font-weight: 600;
	text-decoration: none !important;
	transition: color 0.2s ease, text-decoration 0.2s ease;
}

.footer-direct-support .support-link:hover {
	color: #ffffff !important;
	text-decoration: underline !important;
}

.footer-direct-support .support-divider {
	color: rgba(255, 255, 255, 0.45);
	margin: 0 4px;
	user-select: none;
}

@media (max-width: 575px) {
	.footer-direct-support {
		flex-direction: column;
		gap: 8px;
		font-size: 13.5px;
		margin-top: 25px;
		padding-top: 20px;
	}

	.footer-direct-support .support-divider {
		display: none;
	}

	.footer-direct-support .support-item {
		justify-content: center;
	}

	.copyright {
		margin-top: 28px;
		padding: 16px 0 25px 0;
	}

	.copyright p {
		font-size: 13px;
		line-height: 20px;
		padding: 0;
	}
}