/************************************/
/*** 	 01. Global Variables	  ***/
/************************************/	

:root{
	--primary-color			: #FFFFFF;
	--secondary-color		: #0b0d24;
	--text-color			: #F5F5F4;
	--accent-color			: #69BF62;
	--dark-color			: #0b0d24;
	--divider-color			: #FFFFFF1A;
	--dark-divider-color	: #F7FBFA1A;
	--error-color			: rgb(230, 87, 87);
	--default-font			: "Fustat", sans-serif;
	--hero-bg      : #f0f4f8;
	--hero-border  : rgba(105,191,98,0.2);
	--hero-mid     : #4a5568;
	--hero-navy    : #0d1b2a;
}

/************************************/
/*** 	   02. General css		  ***/
/************************************/

body{
	position: relative;
	font-family: var(--default-font);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6em;
	color: var(--text-color);
	background: url('../images/section-bg-shape.png') var(--dark-color);
	background-repeat: repeat-y;
	background-position: top 900px center;
	background-size: 100% auto;
}

p{
	line-height: 1.7em;
	margin-bottom: 1.6em;
}

h1,
h2,
h3,
h4,
h5,
h6{
	margin :0;
	font-weight: 700;
	line-height: 1.2em;
	color: var(--primary-color);
}

figure{
	margin: 0;
}

img{
	max-width: 100%;
}

a{
	text-decoration: none;
}

a:hover{
	text-decoration: none;
	outline: 0;
}

a:focus{
	text-decoration: none;
	outline: 0;
}

html,
body{
	width: 100%;
	overflow-x: clip;
}

.container{
	max-width: 1300px;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl{
    padding-right: 15px;
    padding-left: 15px;
}

.image-anime{
	position: relative;
	overflow: hidden;
}

.image-anime:after{
	content: "";
	position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255,255,255,.3);
    transform: translate(-50%,-50%) rotate(-45deg);
    z-index: 1;
}

.image-anime:hover:after{
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
}

.reveal{
	position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    visibility: hidden;
    overflow: hidden;
}

.reveal img{
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform-origin: left;
    transform-origin: left;
}

.row{
    margin-right: -15px;
    margin-left: -15px;
}

.row > *{
	padding-right: 15px;
	padding-left: 15px;
}

.row.no-gutters{
    margin-right: 0px;
    margin-left: 0px;
}

.row.no-gutters > *{
    padding-right: 0px;
    padding-left: 0px;
}

.btn-default{
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4em;
	text-transform: capitalize;
	background: transparent;
	color: var(--primary-color);
	border-radius: 100px;
	padding: 14px 25px;
	margin-right: 50px;
	border: none;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	transition: all 0.5s ease-in-out;
	position: relative;
	z-index: 1;
}

.btn-default::after{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: var(--primary-color);
	border-radius: 100px;
	opacity: 20%;
	width: 100%;
	height: 100%;
}

.btn-default::before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: var(--accent-color);
	background-image: url('../images/arrow-dark.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 24px auto;
	transform: translate(50px, 0px);
	transition: all 0.4s ease-in-out;
}

.btn-default:hover::before{
	background-color: var(--primary-color);
	transform: translate(50px, 0px) rotate(45deg);
}

.btn-highlighted{
	position: relative;
    display: inline-block;
    line-height: 1.3em;
	font-size: 16px;
    font-weight: 700;
    background: #1A1D50;
    color: var(--s-white);
    text-transform: capitalize;
    border-radius: 10px;
    padding: 15px 30px;
    border: none;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

.btn-highlighted:hover{
	background-color: var(--accent-color);
}

.preloader{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	background-color: var(--dark-color);
	display: flex;
	align-items: center;
	justify-content: center;
}

.loading-container,
.loading{
	height: 100px;
	position: relative;
	width: 100px;
	border-radius: 100%;
}

.loading-container{
	margin: 40px auto;
}

.loading{
	border: 1px solid transparent;
	border-color: transparent var(--accent-color) transparent var(--accent-color);
	animation: rotate-loading 1.5s linear 0s infinite normal;
	transform-origin: 50% 50%;
}

.loading-container:hover .loading,
.loading-container .loading{
	transition: all 0.5s ease-in-out;
}

#loading-icon{
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 66px;
	transform: translate(-50%, -50%);
}

@keyframes rotate-loading{
	0%{
		transform: rotate(0deg);
	}

	100%{
		transform: rotate(360deg);
	}
}

.section-row{
	margin-bottom: 80px;
}

.section-row .section-title{
	width: 100%;
	max-width: 605px;
	margin-bottom: 0;
}

.section-title{
	margin-bottom: 40px;
}

.section-title h3{
	display: inline-block;
	position: relative;
	font-size: 14px;
    font-weight: 600;
	line-height: normal;
	letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--primary-color);
	padding-left: 24px;
    margin-bottom: 20px;
}

.section-title h3::before{
	content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: url(../images/icon-sub-accent-heading.svg) no-repeat;
    background-position: left center;
    background-size: cover;
    width: 16px;
    height: 16px;
}

.section-title h1{
	font-size: 120px;
	font-weight: 300;
	line-height: 1.0em;
	color: var(--primary-color);
	margin-bottom: 0;
}

.section-title h1 span{
	font-weight: 800;
	color: var(--accent-color);
}

.section-title h2{
	font-size: 50px;
	font-weight: 300;
	line-height: 1.2em;
	color: var(--primary-color);
	margin-bottom: 0;
}

.section-title h2 span{
	font-weight: 700;
	color: var(--accent-color);
}

.section-title p{
	margin-top: 20px;
	margin-bottom: 0;
}

.section-content-btn .section-title-content{
	margin-bottom: 30px;
}

.section-title-content p{
	margin: 0;
}

.help-block.with-errors ul{
	margin: 0;
	text-align: left;
}

.help-block.with-errors ul li{
	color: var(--error-color);
	font-weight: 500;
	font-size: 14px;
}

/************************************/
/**** 	   03. Header css		 ****/
/************************************/

header.main-header{
	position: absolute;
	top: 0;
	width: 100%;
	/*border-bottom: 1px solid var(--divider-color);*/
	z-index: 100;
	/*background: #fff;*/
}

header.main-header .header-sticky{
	position: relative;
	top: 0;
	z-index: 100;
}

header.main-header .header-sticky.hide{
	transform: translateY(-100%);
	transition: transform 0.3s ease-in-out;
	border-radius: 0;
}

header.main-header .header-sticky.active{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	border-radius: 0;
    transform: translateY(0);
	background: var(--dark-color);
	border-bottom: 1px solid var(--divider-color);
	backdrop-filter: blur(30px);
	-webkit-backdrop-filter: blur(30px);
}

.navbar{
	padding: 18px 0;
	align-items: center;
}

.navbar-brand{
	padding: 0;
	margin: 0;
}

.main-menu .nav-menu-wrapper{
	flex: 1;
	text-align: left;
	margin-left: 40px;
}

.main-menu .nav-menu-wrapper > ul{
	align-items: center;
	display: inline-flex;
}

.main-menu ul li{
	margin: 0;
	position: relative;
}

.main-menu ul li.nav-item a{
	font-size: 16px;
	font-weight: 600;
	padding: 15px !important;
	color: #1A1D50;
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
}

.main-menu ul li.submenu > a:after{
	content: '\f107';
	font-family: 'FontAwesome';
	font-weight: 900;
	font-size: 14px;
	margin-left: 8px;
}

.main-menu ul li a:hover,
.main-menu ul li a:focus{
	color: var(--accent-color);
}

.main-menu ul ul{
	visibility: hidden;
	opacity: 0;
	transform: scaleY(0.8);
	transform-origin: top;
	padding: 0;
	margin: 0;
	list-style: none;
	width: 230px;
	border-radius: 20px;
	position: absolute;
	left: 0;
	top: 100%;
	background: var(--accent-color);
	text-align: left;
	transition: all 0.3s ease-in-out;
}

.main-menu ul li.submenu:first-child ul{
    width: 230px;
}

.main-menu ul ul ul{
	left: 100%;
	top: 0;
	text-align: left;
}
.main-menu ul li:hover > ul{
	visibility: visible;
	opacity: 1;
	transform: scaleY(1);
    padding: 5px 0;
}

.main-menu ul li.submenu ul li.submenu > a:after{
    content: '\f105';
    float: right;
}

.main-menu ul ul li{
	margin: 0;
	padding: 0;
}

.main-menu ul ul li.nav-item a{
	color: var(--dark-color);
	padding: 6px 20px !important;
	transition: all 0.3s ease-in-out;
}

.main-menu ul li:hover > ul{
	visibility: visible;
	opacity: 1;
	transform: scaleY(1);
    padding: 5px 0;
}

.main-menu ul ul li a:hover,
.main-menu ul ul li a:focus{
	color: var(--primary-color);
	background-color: transparent;
	padding: 6px 20px 6px 23px !important;
}

.header-social-box{
	align-items: center;
}

.header-social-links{
	margin-right: 20px;
}

.header-social-links ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
}

.header-social-links ul li{
	line-height: normal;
	margin-right: 15px;
	padding: 0;
}

.header-social-links ul li a{
	color: inherit;
}

.header-social-links ul li:last-child{
	margin: 0;
}

.header-social-links ul li i{
	font-size: 20px;
	color: #1A1D50;
	transition: all 0.4s ease-in-out;
	text-shadow: 2px 2px 4px #00000073;
}

.header-social-links ul li:hover i{
	color: var(--primary-color);
}

.header-btn .btn-popup{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	z-index: 100;
}

.header-btn .offcanvas-backdrop{
	z-index: 100;
}

.header-btn .btn-popup{
	background: var(--divider-color);
	border-radius: 50%;
	border: none;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.header-btn .btn-popup img{
	max-width: 14px;
	filter: invert(1);
}

body:has(:not(.offcanvas)){
	padding-right: initial !important;
}

body:has(.offcanvas){
	padding-right: 0 !important;
}

.header-btn .offcanvas{
	position: fixed;
	top: 0;
	bottom: 0;
	left: auto;
	right: -15px;
	background: var(--secondary-color) !important;
	border-radius: 0;
	opacity: 100%;
	width: 100% !important;
	height: 100% !important;
	max-width: 375px;
	border: none;
	padding: 150px 37px 150px 30px;
	transform: translateX(100%) !important;
	z-index: 101;
	transition: all 0.3s ease-in-out !important;
} 

.offcanvas.show:not(.hiding),
.offcanvas.showing{
    transform: translateX(0) !important;
}

.navbar-expand-lg .offcanvas .offcanvas-body{
	display: block;
}

.header-btn .offcanvas .btn-close{
	position: absolute;
	top: 30px;
	right: 37px;
	background-color: transparent;
	border: 1px solid var(--primary-color);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	filter: brightness(0) invert(1);
	opacity: 100%;
	box-shadow: none;
	padding: 0;
}

.header-contact-box{
	text-align: center;
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 30px;
	margin-bottom: 30px;
}

.header-contact-box .icon-box{
	margin-bottom: 20px;
}

.header-contact-box .icon-box img{
	max-width: 40px;
}

.header-contact-box-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.header-contact-box-content p{
	color: var(--text-color);
	margin: 0;
}

.header-social-links.sidebar-social-links{
	text-align: center;
	margin-right: 0;
}

.header-social-links.sidebar-social-links h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 20px;
}

.header-social-links.sidebar-social-links ul{
	justify-content: center;
}

.header-social-links.sidebar-social-links ul li a{
	background-color: transparent;
	border: 1px solid var(--accent-color);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.header-social-links.sidebar-social-links ul li a:hover{
	border-color: var(--primary-color);
}

.responsive-menu,
.navbar-toggle{
	display: none;
}

.responsive-menu{
	top: 0;
	position: relative;
}

.slicknav_btn{
	background: var(--accent-color);
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin: 0;
	border-radius: 8px;
}

.slicknav_icon .slicknav_icon-bar{
	display: block;
	width: 100%;
	height: 3px;
	width: 22px;
	background-color: var(--dark-color);
	border-radius: 6px;
	margin: 4px auto !important;
	transition: all 0.1s ease-in-out;
}

.slicknav_icon .slicknav_icon-bar:first-child{
	margin-top: 0 !important;
}

.slicknav_icon .slicknav_icon-bar:last-child{
	margin-bottom: 0 !important;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(1){
    transform: rotate(-45deg) translate(-5px, 5px);
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(2){
    opacity: 0;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(3){
    transform: rotate(45deg) translate(-5px, -5px);
}

.slicknav_menu{
	position: absolute;
    width: 100%;
	padding: 0;
	background: var(--accent-color);
}

.slicknav_menu ul{
	margin: 5px 0;
}

.slicknav_menu ul ul{
	margin: 0;
}

.slicknav_nav .slicknav_row,
.slicknav_nav li a{
	position: relative;
	font-size: 16px;
	font-weight: 600;
	text-transform: capitalize;
	padding: 8px 20px;
	color: var(--dark-color);
	line-height: normal;
	margin: 0;
	border-radius: 0 !important;
	transition: all 0.3s ease-in-out;
}

.slicknav_nav a:hover,
.slicknav_nav a:focus,
.slicknav_nav .slicknav_row:hover{
	background-color: transparent;
	color: var(--primary-color);
}

.slicknav_menu ul ul li a{
    padding: 8px 20px 8px 30px;
}

.slicknav_arrow{
	font-size: 0 !important;
}

.slicknav_arrow:after{
	content: '\f107';
	font-family: 'FontAwesome';
	font-weight: 900;
	font-size: 12px;
	margin-left: 8px;
	color: var(--dark-color);
	position: absolute;
	right: 15px;
    top: 15px;
	transition: all 0.3s ease-out;
}

.slicknav_open > a .slicknav_arrow:after{
    transform: rotate(-180deg);
	color: var(--primary-color);
}

/************************************/
/***        04. Hero css	      ***/
/************************************/

.hero{
	position: relative;
	padding: 215px 0 120px;
	min-height: 100vh;
}

.hero .hero-bg-video{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

.hero .hero-bg-video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.bg-image{
	position: relative;
	background: url('../images/hero-bg.jpg') no-repeat;
	background-position: center center;
	background-size: cover;
}

.hero.bg-image::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(270deg, rgba(0, 0, 0, 0) -73.04%, rgba(22, 22, 22, 0.3) 1.71%, var(--secondary-color) 100%);
	width: 100%;
	height: 100%;
	z-index: 0;
}

.hero.hero-slider-layout{
	background: none;
	padding: 0;
}

.hero.hero-slider-layout .hero-slide{
	position: relative;
	background: url('../images/hero-bg.jpg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
    padding: 215px 0 120px;
	min-height: 100vh;
}

.hero.hero-slider-layout .hero-slide.slide-2{
	background: url('../images/hero-bg-2.jpg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.hero.hero-slider-layout .hero-slide::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(270deg, rgba(0, 0, 0, 0) -73.04%, rgba(22, 22, 22, 0.3) 1.71%, var(--secondary-color) 100%);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.hero-slider-layout .hero-pagination{
	position: absolute;
    bottom: 30px;
	text-align: center;
	z-index: 2;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet{
    width: 12px;
    height: 12px;
    background: var(--primary-color);
    opacity: 1;
    transition: all 0.3s ease-in-out;
    margin: 0 5px;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet-active{
    background-color: var(--accent-color);
}

.hero-content{
	position: relative;
	z-index: 1;
}

.hero-content .section-title{
	width: 100%;
	margin-bottom: 35px;
}

.typing-title{
	display: none;
}

.section-title h1 span div{
	/*color: transparent;*/
}

.hero-content-body{
	display: flex;
	align-items: center;
	margin-left: 150px;
}

.hero-content-video{
	width: 35%;
	display: flex;
	align-items: center;
}

.hero-content-video .video-play-button a{
	background: var(--accent-color);
	border-radius: 50%;
	height: 100px;
	width: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.hero-content-video .video-play-button:hover a{
	background-position: right center;
}

.hero-content-video .video-play-button a i{
	font-size: 35px;
	color: var(--dark-color);
}

.learn-more-circle{
	margin-left: -20px;
}

.learn-more-circle img{
	max-width: 100px;
	animation: infiniterotate 30s infinite linear;
}

@keyframes infiniterotate{
	from{
		transform: rotate(0deg);
	  }
	to{
		transform: rotate(360deg);
	}
}

.hero-video-content{
	width: 65%;
}

.hero-video-content p{
	margin: 0;
}

.hero-btn{
	text-align: center;
	margin-top: 60px;
}

/************************************/
/***   05. Scrolling Ticker css   ***/
/************************************/

.our-scrolling-ticker{
	background-color: #3666AF;
	padding: 26px 0;
}

.scrolling-ticker-box{
	--gap: 40px;
	position: relative;
	display: flex;
	overflow: hidden;
	user-select: none;
	gap: var(--gap);
	align-items: center;
}

.scrolling-content{
	flex-shrink: 0;
	display: flex;
	gap: var(--gap);
	min-width: 100%;
	animation: scroll 40s linear infinite;
}

.scrolling-content span{
	display: inline-block;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2em;
	color: #fff;
	vertical-align: middle;
}

.scrolling-content span img{
	width: 100%;
	max-width: 15px;
	margin-right: 30px;
}

@keyframes scroll{
	from{
		transform: translateX(0);
	}

	to{
		transform: translateX(calc(-100% - var(--gap)));
	}
}

/************************************/
/***     06. About Agency css	  ***/
/************************************/

.about-agency{
	position: relative;
	padding: 160px 0 80px;
}

.about-agency::before{
	content: '';
	display: block;
	position: absolute;
	left: -120px;
	top: 50%;
	background: url('../images/about-agency-bg.png') no-repeat;
	background-position: left center;
	background-size: contain;
	opacity: 50%;
	width: 386px;
	height: 400px;
	animation: circlerotate 20s infinite linear;
	z-index: -1;
}

@keyframes circlerotate{
	from{
		transform: rotate(0deg);
	  }
	to{
		transform: rotate(360deg);
	}
}

.about-agency-content{
	position: sticky;
	top: 100px;
	padding-right: 35px;
}

.about-agency-list{
	border-left: 1px solid var(--divider-color);
	display: flex;
	flex-wrap: wrap;
	gap: 50px 30px;
	padding-left: 50px;
}

.about-agency-item{
	width: 100%;
}

.about-agency-item .icon-box{
	margin-bottom: 20px;
}

.about-agency-item .icon-box img{
	max-width: 40px;
}

.agency-item-content h3{
	position: relative;
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.agency-item-content h3:after{
	content: '';
	position: absolute;
	top: 0;
	left: -60px;
	background: url('../images/dot-green-icon.svg') no-repeat;
	background-position: left center;
	background-size: cover;
	width: 20px;
	height: 20px;
}

.agency-item-content p:last-child{
	margin: 0;
}

/************************************/
/***     07. Our Services css     ***/
/************************************/

.our-services{
	padding: 80px 0;
	background: #fff;
}

.service-item{
	position: relative;
	background: url('../images/service-bg.svg') no-repeat;
	background-position: top left;
	background-size: auto;
	border: 1px solid var(--divider-color);
	border-radius: 30px;
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	height: calc(100% - 30px);
	margin-bottom: 30px;
	padding: 40px;
	transition: all 0.4s ease-in-out;
	overflow: hidden;
}

.service-item:hover{
	transform: translateY(-5px);
}

.service-item::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(circle, rgb(0 0 0) 0%, #0c0e35 50%, #070816 100%);
	/*opacity: 40%;*/
}

.service-item-header{
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}

.service-item-header .icon-box img{
	max-width: 60px;
}

.service-arrow a img{
	max-width: 34px;
	transition: all 0.3s ease-in-out;
}

.service-item:hover .service-arrow a img{
	filter: brightness(0) invert(1);
	transform: rotate(45deg);
}

.service-item-body{
	position: relative;
}
.service-item-body h6 {
	margin-top: 18px;
}
.service-item-body h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 20px;
}

.service-item-body p{
	margin-bottom: 0;
}
.service-item-body p a {
	color: #69bf62;
}

.service-footer{
	margin-top: 20px;
}

.service-footer p{
	text-align: center;
	margin-bottom: 0;
}

.service-footer p a{
	font-weight: 700;
	text-transform: capitalize;
	text-decoration: underline;
	color: var(--accent-color);
	transition: all 0.3s ease-in-out;
}

.service-footer p a:hover{
	color: var(--primary-color);
}

/************************************/
/***    09. Digital Success css   ***/
/************************************/

.digital-success{
	padding: 80px 0;
}

.digital-success-box{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 80px;
	padding: 80px;
	position: relative;
	border-radius: 30px;
	background: linear-gradient(180deg, #3666AF 0%, rgba(0, 0, 0, 0) 90.04%);
}

.digital-success-box::before{
	content: "";
    position: absolute;
	left: 20px;
	top: 20px;
	border-radius: 16px;
	background: linear-gradient(180deg, #000000 75%, rgba(0, 0, 0, 0) 99.04%);
	width: calc(100% - 40px);
	height: calc(100% - 20px);
}

.digital-success-list,
.digital-success-content{
	position: relative;
	width: calc(50% - 40px);
	z-index: 1;
}

.digital-success-content::before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    right: -40px;
    border: 1px dashed var(--dark-divider-color);
    height: 100%;
    transition: all 0.4s ease-in-out;
}

.digital-success-content .section-title{
	margin-bottom: 80px;
}

.success-counter-box{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.success-counter-item{
	width: calc(50% - 15px);
}

.success-counter-item h2{
	font-size: 50px;
	color: #3666AF;
	margin-bottom: 10px;
}

.success-counter-item p{
	margin: 0;
}

.success-list-item{
	background: url('../images/icon-sub-accent-heading-blue.svg') no-repeat;
	background-position: left top 2px;
	background-size: 20px auto;
	padding-left: 30px;
	margin-bottom: 80px;
}

.success-list-item:last-child{
	margin-bottom: 0;
}

.success-list-item p{
	margin: 0;
}

.success-list-item p span{
	font-size: 22px;
	font-weight: 700;
	text-transform: capitalize;
}

/************************************/
/***     10. Why Choose Us css    ***/
/************************************/

.why-choose-us{
	position: relative;
	padding: 80px 0;
}

.why-choose-us::before{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: 50%;
    background: url(../images/why-choose-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 310px;
    height: 325px;
    animation: circlezoomrotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

@keyframes circlezoomrotate{
	from{
		transform: rotate(0deg) scale(0.5);
	  }
	to{
		transform: rotate(360deg) scale(1);
	}
}

.why-choose-content{
	margin-right: 30px;
}

.why-choose-item{
	position: relative;
	border: 1px solid var(--divider-color);
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 30px;
	padding: 25px 30px;
}

.why-choose-item:last-child{
	margin-bottom: 0;
}

.why-choose-item::before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
	bottom: 0;
	left: 0;
    right: 0;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0) 100%);
	width: 0;
    height: 100%;
    transition: all 0.4s ease-in-out;
}

.why-choose-item.active:before,
.why-choose-item:hover:before{
	width: 100%;
}

.why-choose-item h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.why-choose-item p{
	margin: 0;
}

.why-choose-image figure{
	display: block;
	border-radius: 30px;
	overflow: hidden;
}

.why-choose-image img{
	width: 100%;
	aspect-ratio: 1 / 0.93;
	object-fit: cover;
	border-radius: 30px;
}

/************************************/
/***      10. Join Agency css     ***/
/************************************/

.join-agency{
	padding: 80px 0 50px;
}

.agency-social-item{
	position: relative;
	border: 1px solid var(--divider-color);
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 30px 0 30px 30px;
	padding: 30px 40px 30px 70px;
	transition: all 0.3s ease-in-out;
}

.agency-social-item .icon-box{
	position: absolute;
	top: -30px;
	left: -30px;
}

.agency-social-item .icon-box a{
	position: relative;
	display: block;
	background-color: #3666AF;
	border-radius: 50%;
	width: 80px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: all 0.5s ease-in-out;
}

.agency-social-item:hover .icon-box a{
	background-color: transparent;
}

.agency-social-item .icon-box a::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--secondary-color);
    border-radius: 50%;
    transform: translate(100%, 100%);
    transition: all 0.4s ease-in-out;
}

.agency-social-item:hover .icon-box a::before{
    transform: translate(0);
}

.agency-social-item .icon-box i{
	position: relative;
	font-size: 40px;
	color: var(--dark-color);
	transition: all 0.4s ease-in-out;
	z-index: 1;
}

.agency-social-item:hover .icon-box a i{
	color: var(--primary-color);
}

.agency-social-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.agency-social-content p{
	margin: 0;
}

.agency-social-btn{
	margin-left: 10px;
}

.readmore-btn{
	border: 1px solid var(--primary-color);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.readmore-btn:hover{
	border-color: var(--accent-color);
}

.readmore-btn img{
	max-width: 24px;
	transition: all 0.3s ease-in-out;
}

.agency-social-item:hover .readmore-btn img{
	transform: rotate(45deg);
}

/************************************/
/***     11. How It Work css      ***/
/************************************/

.how-it-work{
	position: relative;
	padding: 80px 0 50px;
}

.how-it-work::before{
    content: '';
    display: block;
    position: absolute;
    left: -90px;
    top: 40%;
    background: url(../images/how-work-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 297px;
    height: 340px;
    animation: roundrotate 8s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

@keyframes roundrotate{
	from{
		transform: translateY(0) rotate(0);
	  }
	to{
		transform: translateY(100px) rotate(360deg);
	}
}

.work-process-item{
	position: relative;
    background: url(../images/service-bg.svg) no-repeat;
    background-position: top left;
    background-size: auto;
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
    height: calc(100% - 30px);
    margin-bottom: 30px;
    padding: 40px;
    transition: all 0.4s ease-in-out;
    overflow: hidden;
}

.work-process-item:hover{
	transform: translateY(-5px);
}

.work-process-item::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.work-process-header{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 40px;
}

.work-process-title h3{
	font-size: 22px;
	text-transform: capitalize;
}

.work-process-btn{
	margin-left: 10px;
}

.work-process-item:hover .work-process-btn .readmore-btn img{
	transform: rotate(45deg);
}

.work-process-content{
	margin-bottom: 80px;
}

.work-process-content p{
	margin: 0;
}

.work-process-body{
	display: flex;
	align-items: center;
	padding-top: 20px;
}

.work-process-no{
	width: 50%;
	padding-right: 10px;
}

.work-process-no h3{
	font-size: 22px;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.work-process-no h2{
	font-size: 40px;
	color: var(--accent-color);
}

.work-process-icon-box{
	width: 50%;
	position: absolute;
	display: block;
	bottom: 0;
	right: 0;
	text-align: center;
	background-color: var(--accent-color);
	border-radius: 30px 0 30px 0;
	padding: 40px;
	overflow: hidden;
}

.work-process-icon-box::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--primary-color);
    border-radius: 30px 0 30px 0;
    transform: translate(100%, 100%);
    transition: all 0.4s ease-in-out;
}

.work-process-item:hover .work-process-icon-box::before{
	transform: translate(0);
}

.work-process-icon-box img{
	position: relative;
	max-width: 60px;
}

/************************************/
/***     12. Our Features css     ***/
/************************************/

.our-features{
	position: relative;
	padding: 80px 0;
}

.our-features::before{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: 50%;
    background: url(../images/features-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 300px;
    height: 285px;
    animation: squrerotate 5s infinite linear;
	animation-iteration-count: infinite;
	animation-direction: alternate;
    z-index: -1;
}

@keyframes squrerotate{
	from{
		transform: translate(0, 0) rotate(0deg);
	  }
	to{
		transform: translate(-150px, 200px) rotate(180deg);
	}
}

.digital-features-box{
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
}

.digital-features-item.features-item-1{
	width: calc(60% - 30px);
}

.digital-features-item.features-item-2{
	width: calc(40% - 30px);
}

.digital-features-item{
	position: relative;
    padding: 60px;
    border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
    border-radius: 30px;
	overflow: hidden;
}

.digital-features-item::before{
    content: '';
	display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: 0;
}

.digital-features-image{
	position: relative;
	border-radius: 30px;
	overflow: hidden;
	margin-bottom: 40px;
	z-index: 1;
}

.digital-features-image img{
	width: 100%;
    object-fit: cover;
	border-radius: 30px;
	transition: all 0.4s ease-in-out;
}

.digital-features-item.features-item-1 .digital-features-image img{
	aspect-ratio: 1 / 0.46;
}

.digital-features-item.features-item-2 .digital-features-image img{
	aspect-ratio: 1 / 0.72;
}

.digital-features-item:hover .digital-features-image img{
	transform: scale(1.1);
}

.digital-features-content{
	position: relative;
	z-index: 1;
}

.digital-features-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.digital-features-content p{
	margin: 0;
}

.digital-features-item.agency-supports{
	padding: 60px 0;
}

.agency-supports-header{
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: 50px;
	padding: 0 60px;
	z-index: 1;
}

.agency-supports-content{
	width: 50%;
}

.agency-supports-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.agency-supports-content p{
	margin: 0;
}

.agency-free-consultation{
	width: 50%;
	text-align: right;
}

.agency-free-consultation img{
	max-width: 100px;
	animation: infiniterotate 30s infinite linear;
}

.agency-supports-slider{
	position: relative;
}

.agency-supports-slider::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	background: linear-gradient(280deg, #030709 0%, rgba(3, 7, 9, 0) 60.97%);
	width: 215px;
	height: 100%;
	z-index: 2;
}

.agency-supports-slider::after{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(90deg, #030709 0%, rgba(3, 7, 9, 0) 60.97%);
	width: 215px;
	height: 100%;
	z-index: 2;
}

.agency-supports-logo{
	background-color: var(--secondary-color);
	border-radius: 10px;
	text-align: center;
	padding: 25px 30px;
}

.agency-supports-logo img{
	max-height: 30px;
}

/************************************/
/***    13. Our Portfolio css     ***/
/************************************/

.our-portfolio{
	padding: 80px 0 40px;
}

.our-Project-nav{
	text-align: center;
	margin-bottom: 80px;
}

.our-Project-nav ul{
	list-style: none;
	text-align: center;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px 20px;
	padding: 0;margin: 0;
}

.our-Project-nav ul li a{
	position: relative;
	display: inline-block;
	background-color: transparent;
	border: 1px solid #00000014;
	border-radius: 10px;
	color: #343434;
	font-weight: 400;
	line-height: 1.2em;
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
	padding: 10px 20px;
    overflow: hidden;
}

.our-Project-nav ul li a.active-btn,
.our-Project-nav ul li a:hover{
	background-color: var(--accent-color);
	color: var(--dark-color);
}

.project-item{
	height: calc(100% - 40px);
	margin-bottom: 40px;
	text-align: center;
	overflow: hidden;
}

.project-image{
	position: relative;
	margin-bottom: 20px;
}

.project-image figure{
	display: block;
	border-radius: 30px;
	overflow: hidden;
}

.project-image img{
	width: 100%;
	aspect-ratio: 1 / 0.8;
	object-fit: cover;
	border-radius: 30px;
	transition: all 0.4s ease-in-out;
}

.project-item:hover .project-image figure img{
	transform: scale(1.1);
}

.project-tag{
	position: absolute;
	top: 25px;
	right: 25px;
	z-index: 1;
}

.project-tag a{
	display: block;
	background-color: var(--divider-color);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	color: var(--text-color);
	border-radius: 6px;
	font-size: 14px;
	text-transform: capitalize;
	padding: 6px 15px;
}

.project-btn{
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, -30%);
	transition: all 0.3s ease-in-out;
	z-index: 1;
}

.project-item:hover .project-btn{
	transform: translate(-50%, -50%);
	opacity: 1;
	visibility: visible;
} 

.project-btn a{
	border: 1px solid var(--primary-color);
	border-radius: 50%;
	width: 100px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.project-btn a:hover{
	background-color: var(--accent-color);
	border-color: var(--accent-color);
}

.project-btn a img{
	max-width: 42px;
	transition: all 0.3s ease-in-out;
}

.project-btn a:hover img{
	filter: brightness(1) invert(1);
	transform: rotate(45deg);
}

.project-content h3{
	font-size: 22px;
	text-transform: capitalize;
	color: #141414;
}

/************************************/
/***    14. Our Testimonial Css   ***/
/************************************/

.our-testimonial{
	position: relative;
	padding: 80px 0;
}

.our-testimonial::before{
    content: '';
    display: block;
    position: absolute;
    left: -70px;
    top: 50%;
    background: url(../images/testimonial-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 70%;
    width: 306px;
    height: 304px;
    animation: circlerotate 20s infinite linear;
    z-index: -1;
}

.our-testimonial .section-row .section-title{
	max-width: 100%;
}

.testimonial-review-box{
	position: relative;
	width: 100%;
	border: 1px solid var(--divider-color);
	border-radius: 30px;
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	text-align: center;
	overflow: hidden;
	padding: 50px;
}

.testimonial-review-box::before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.testimonial-review-header{
	margin-bottom: 30px;
}

.testimonial-review-header h2{
	font-size: 80px;
	font-weight: 600;
}

.testimonial-review-header .testimonial-rating{
	margin-bottom: 10px;
}

.testimonial-review-header p{
	margin: 0;
}

.testimonial-review-content{
	margin-bottom: 30px;
}

.testimonial-review-content h3{
	font-size: 22px;
}

.company-client-images{
	margin-bottom: 10px;
}

.satisfy-client-image{
    display: inline-block;
    margin-left: -14px;
    border: 1px solid var(--dark-color);
    border-radius: 50%;
    overflow: hidden;
}

.satisfy-client-image:first-child{
    margin: 0;
}

.satisfy-client-image figure{
	display: block;
}

.satisfy-client-image img{
    max-width: 40px;
}

.testimonial-slider{
	margin-left: 30px;
}



.testimonial-company-logo{
	margin-bottom: 30px;
}

.testimonial-company-logo img{
	max-width: 120px;
	max-height: 30px;
}

.testimonial-rating{
	margin-bottom: 20px;
}

.testimonial-rating i{
	font-size: 16px;
	color: var(--accent-color);
	margin-right: 2px;
}

.testimonial-rating i:last-child{
	margin-right: 0;
}

.testimonial-content{
	margin-bottom: 40px;
}

.testimonial-content p{
	font-size: 22px;
	font-weight: 600;
	color: var(--primary-color);
	margin-bottom: 0;
}

.testimonial-body{
	display: flex;
	align-items: center;
}

.author-image{
	margin-right: 15px;
}

.author-image figure{
	display: block;
	border-radius: 50%;
	overflow: hidden;
}

.author-image img{
	max-width: 60px;
	border-radius: 50%;
}

.author-content{
	width: calc(100% - 75px);
}

.author-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.author-content p{
	text-transform: capitalize;
	margin: 0;
}

.testimonial-btn{
	position: absolute;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: right;
	margin-top: 30px;
	z-index: 2;
}

.testimonial-slider .testimonial-button-next,
.testimonial-slider .testimonial-button-prev{
	position: relative;
	width: 60px;
	height: 60px;
	background: var(--secondary-color);
	border-radius: 14px;
	transition: all 0.4s ease-in-out;
}

.testimonial-slider .testimonial-button-next{
	margin-left: 30px;
}


.testimonial-slider .testimonial-button-next:hover,
.testimonial-slider .testimonial-button-prev:hover{
	background: var(--accent-color);
}

.testimonial-slider .testimonial-button-next::before,
.testimonial-slider .testimonial-button-prev::before{
	content: '';
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url("../images/arrow-white.svg") no-repeat center center;
    background-size: 30px auto;
    display: flex;
    align-items: center;
    justify-content: center;
	transform: rotate(45deg);
    transition: all 0.4s ease-in-out;
}

.testimonial-slider .testimonial-button-prev::before{
	transform: rotate(225deg);
}

.testimonial-slider .testimonial-button-next:hover:before,
.testimonial-slider .testimonial-button-prev:hover:before{
	filter: brightness(1) invert(1);
}

.testimonial-benefits-box{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 150px;
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	border: 1px solid var(--divider-color);
	border-radius: 30px;
	overflow: hidden;
	margin-top: 100px;
	padding: 60px;
}

.testimonial-benefits-box::before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
	bottom: 0;
	left: 0;
    right: 0;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.testimonial-benefits-item{
	position: relative;
	width: calc(25% - 112.5px);
}

.testimonial-benefits-item::before{
	content: '';
    display: block;
    position: absolute;
	top: 50%;
    right: -75px;
	transform: translateY(-50%);
    border-right: 1px solid var(--divider-color);
	height: 80%;
	z-index: 1;
}

.testimonial-benefits-item:last-child:before{
	display: none;
}

.testimonial-benefits-item .icon-box{
	margin-bottom: 30px;
}

.testimonial-benefits-item .icon-box img{
	max-width: 40px;
}

.testimonial-benefits-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 20px;
}

.testimonial-benefits-content ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.testimonial-benefits-content ul li{
	position: relative;
    padding-left: 25px;
	margin-bottom: 15px;
}

.testimonial-benefits-content ul li::before{
	content: "\2a";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px;
    color: var(--primary-color);
}

.testimonial-benefits-content ul li:last-child{
	margin-bottom: 0
}

/************************************/
/***    15. Agency Benefits Css   ***/
/************************************/

.agency-benefits{
	position: relative;
	padding: 80px 0 50px;
}

.agency-benefits::before{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: 10%;
    background: url(../images/agency-benefits-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 279px;
    height: 287px;
    animation: circlerotate 12s infinite linear;
    z-index: 0;
}

.benefits-steps-item{
	position: relative;
    width: 100%;
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
    overflow: hidden;
	height: calc(100% - 30px);
	margin-bottom: 30px;
    padding: 30px 25px;
}

.benefits-steps-item::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.benefits-steps-no{
	margin-bottom: 40px;
}

.benefits-steps-no h3{
	font-size: 22px;
}

.benefits-steps-item .icon-box{
	margin-bottom: 40px;
}

.benefits-steps-item .icon-box img{
	max-width: 60px;
}

.benefits-steps-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.benefits-steps-content p{
	margin: 0;
}

/************************************/
/***      16. Our Blog Css        ***/
/************************************/

.our-blog{
	padding: 80px 0 40px;
}

.our-blog .section-row .section-title{
	max-width: 100%;
}

.post-item{
	height: calc(100px - 30px);
	margin-bottom: 30px;
}

.post-featured-image{
	margin-bottom: 30px;
}

.post-featured-image figure a{

    display: block;
	border-radius: 30px;
    overflow: hidden;
}

.post-featured-image img{
    aspect-ratio: 1 / 0.75;
    object-fit: cover;
	border-radius: 30px;
    transition: all 0.5s ease-in-out;
}

.post-item:hover .post-featured-image img{
	transform: scale(1.1);
}

.post-item-content{
	margin-bottom: 20px;
}

.post-item-content h3{
    font-size: 22px;
}

.post-item-content h3 a{
    color: inherit;
}

.post-item-btn a{
    position: relative;
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2em;
    text-transform: capitalize;
    color: var(--accent-color);
    padding-right: 30px;
    border: none;
}

.post-item-btn a:hover{
	color: var(--primary-color);
}

.post-item-btn a::before{
	content: '';
    position: absolute;
    top: -2px;
    right: 0;
    background-image: url(../images/arrow-accent.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	width: 24px;
    height: 24px;
    transition: all 0.3s ease-in-out;
}

.post-item-btn a:hover::before{
	filter: brightness(0) invert(1);
    transform: rotate(45deg);
}

/************************************/
/***   	   17. Footer css         ***/
/************************************/

.footer-work-together{
	position: relative;
	padding: 80px 0;
}

.footer-work-together::before{
    content: '';
    display: block;
    position: absolute;
    left: -120px;
    top: 20%;
    background: url(../images/work-together-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 40%;
    width: 305px;
    height: 315px;
    animation: circlmoveerotate 12s infinite linear;
	animation-direction: alternate;
    z-index: -1;
}

@keyframes circlmoveerotate{
	from{
		transform: translateY(0) rotate(0deg);
	  }
	to{
		transform: translateY(160px) rotate(360deg);
	}
}

.work-together-box{
	position: relative;
}

.work-together-content{
	position: relative;
	background: url('../images/work-together-bg.png') no-repeat;
	background-position: center center;
	background-size: auto;
	text-align: center;
}

.work-together-content::before{
	content: '';
    display: block;
    position: absolute;
    left: 0;
	right: 0;
    top: 0;
	bottom: 0;
    background: url(../images/work-together-bg-gradient.png) no-repeat;
    background-position: center center;
    background-size: contain;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.footer-work-together{
	margin-bottom: 0;
}

.footer-work-together h3{
	font-size: 22px;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.footer-work-together h2{
	font-size: 180px;
	font-weight: 800;
    text-transform: uppercase;
}

.work-together-btn{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.footer-work-together .work-together-btn a{
	background-color: var(--accent-color);
	border-radius: 50%;
	width: 150px;
	height: 150px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	align-content: center;
	text-align: center;
	transition: all 0.3s ease-in-out;
}

.footer-work-together .work-together-btn a:hover{
	background-color: var(--secondary-color);
}

.footer-work-together .work-together-btn a img{
	width: 100%;
	max-width: 24px;
	height: 24px;
	color: var(--secondary-color);
	transition: all 0.3s ease-in-out;
}

.footer-work-together .work-together-btn a:hover img{
	filter: brightness(0) invert(1);
	transform: rotate(45deg);
}

.footer-work-together .work-together-btn a span{
	width: 100%;
	font-weight: 700;
	text-transform: capitalize;
	color: var(--dark-color);
	transition: all 0.3s ease-in-out;
}

.footer-work-together .work-together-btn a:hover span{
	color: var(--primary-color);
}

.footer-main{
	border-top: 1px solid var(--divider-color);
	padding: 60px 0 0;
	background-color: #fff;
}

.footer-logo{
	margin-bottom: 60px;
}

.footer-contact-item{
	display: flex;
	align-items: center;
	margin-bottom: 30px;
}

.footer-contact-item:last-child{
	margin-bottom: 0;
}

.footer-contact-item .icon-box{
	border: 1px solid var(--accent-color);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 20px;
	transition: all 0.3s ease-in-out;
}

.footer-contact-item:hover .icon-box{
	/*border-color: var(--primary-color);*/
}

.footer-contact-item .icon-box img{
	max-width: 18px;
	transition: all 0.3s ease-in-out;
	filter: brightness(0.5);
}

.footer-contact-item:hover .icon-box img{
	/*filter: brightness(0) invert(1)*/
}

.footer-contact-content{
	width: calc(100% - 60px);
}

.footer-contact-content p{
	font-size: 22px;
	font-weight: 600;
	margin: 0;
}

.footer-links h3{
	font-size: 22px;
	text-transform: capitalize;
	color: #000;
	margin-bottom: 40px;
}

.footer-links ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-links ul li{
	text-transform: capitalize;
	margin-bottom: 15px;
}

.footer-links ul li:last-child{
	margin-bottom: 0;
}

.footer-links ul li a{
	color: #000;
	transition: all 0.3s ease-in-out;
}

.footer-links ul li:hover a{
	color: var(--accent-color);
}

.footer-newsletter-form .form-group{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.footer-newsletter-form h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 40px;
}

.footer-newsletter-form .form-group .form-control{
	width: 64%;
	padding: 12px 20px;
	border: 1px solid #000;
	background: transparent;
	color: #000;
	border-radius: 10px;
	box-shadow: none;
}

.footer-newsletter-form .form-group .form-control::placeholder{
	color: #000;
}

.footer-newsletter-form .btn-highlighted{
	margin-left: 10px;
}

.footer-social-links{
	margin-top: 40px;
}

.footer-social-links ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-social-links ul li{
	display: inline-block;
	border-radius: 50%;
	margin-right: 15px;
}

.footer-social-links ul li:last-child{
	margin-right: 0;
}

.footer-social-links ul li a{
	border: 1px solid var(--accent-color);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.footer-social-links ul li:hover a{
	border-color: var(--primary-color);
}

.footer-social-links ul li a i{
	color: var(--accent-color);
	font-size: 18px;
	transition: all 0.3s ease-in-out;
}

.footer-social-links ul li:hover a i{
	color: var(--primary-color);
}

.footer-copyright{
	border-top: 1px solid var(--dark-divider-color);
	padding: 60px 0;
	margin-top: 60px;
}

.footer-copyright-text{
	text-align: center;
}

.footer-copyright-text p{
	margin: 0;
}

/************************************/
/***     18. About Us Page css    ***/
/************************************/

.page-header{
	position: relative;
	background: url('../images/page-header-bg.jpg') no-repeat center center;
	background-size: cover;
	padding: 245px 0 150px;
}

.page-header-box{
	text-align: center;
}

.page-header-box h1{
	display: inline-block;
	font-size: 80px;
	font-weight: 300;
	line-height: 1.1em;
	color: var(--primary-color);
	margin-bottom: 10px;

}

.page-header-box h1 span{
	color: var(--accent-color);
	font-weight: 800;
}

.page-header-box ol{
	margin: 0;
	padding: 0;
	justify-content: center;
}

.page-header-box ol li.breadcrumb-item{
	font-size: 18px;
	font-weight: 600;
	text-transform: capitalize;
	color: var(--primary-color);
}

.page-header-box ol li.breadcrumb-item a{
    color: inherit;
}

.page-header-box ol li.breadcrumb-item.active{
	color: var(--accent-color);
}

.page-header-box ol .breadcrumb-item+.breadcrumb-item::before{
	content: "\2a";
    font-family: "FontAwesome";
	font-size: 10px;
    color: var(--primary-color);
}

.our-scrolling-ticker.subpages-scrolling-ticker{
    padding: 15px 0;
}

.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-ticker-box{
    --gap: 20px;
}

.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-content span{
	font-size: 22px;
}

.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-content span img{
    max-width: 18px;
    margin-right: 20px;
}

.our-approach{
	padding: 80px 0 50px;
}

.mission-vision-item{
	position: relative;
	border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	border-radius: 30px;
	height: calc(100% - 30px);
	margin-bottom: 30px;
	padding: 40px;
    overflow: hidden;
}

.mission-vision-item::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.mission-vision-image{
	position: relative;
	border-radius: 20px;
	margin-bottom: 30px;
	overflow: hidden;
}
 
.mission-vision-img img{
	aspect-ratio: 1 / 0.78;
    object-fit: cover;
	border-radius: 20px;
	filter: brightness(80%);
	transition: all 0.4s ease-in-out;
}

.mission-vision-item:hover .mission-vision-img img{
	transform: scale(1.1);
}

.mission-vision-image .icon-box{
	position: absolute;
	bottom: 20px;
	left: 20px;
}

.mission-vision-image .icon-box img{
	max-width: 40px;
}

.mission-vision-content h3{
	font-size: 22px;
	text-transform: capitalize;
	margin-bottom: 20px;
}

.mission-vision-content p{
	margin: 0;
}

.who-we-are{
	position: relative;
	padding: 80px 0;
}

.who-we-are::before{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: -25%;
    background: url(../images/agency-benefits-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 279px;
    height: 287px;
    animation: circlerotate 8s infinite linear;
    z-index: -1;
}

.who-we-are .who-we-are-content{
	padding-right: 90px;
}

.experts-rating-video{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.experts-rating-video-image{
	width: 50%;
	position: relative;
	border-radius: 20px;

    overflow: hidden;
	z-index: 1;
}

.experts-rating-video-image .video-image img{
	width: 100%;
	filter: brightness(80%);
	aspect-ratio: 1 / 0.71;
	object-fit: cover;
	border-radius: 20px;
	transition: all 0.5s ease-in-out;
}

.experts-rating-video-image:hover .video-image img{
    transform: scale(1.1);
}

.experts-rating-video-image .video-image a{

	position: relative;
	z-index: 1;
}

.experts-rating-video-image .video-play-button{
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    transform: translate(-50%, -50%);
}

.experts-rating-video-image .video-play-button a{
	position: relative;
	background-color: var(--accent-color);
	border-radius: 100%;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;

}

.experts-rating-video-image .video-play-button a:before{
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 160%;
	height: 160%;
	border: 50px solid var(--primary-color);
	opacity: 30%;
	border-radius: 50%;
	transform: scale(0.6);
	z-index: -1;
	animation: border-zooming 1.2s infinite linear;
}

.experts-rating-video-image .video-play-button a:after{
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 160%;
	height: 160%;
	border: 50px solid var(--primary-color);
	opacity: 30%;
	border-radius: 50%;
	transform: scale(0.6);
	z-index: -1;
	animation: border-zooming 1.2s infinite linear;
	animation-delay: .3s;
}

@keyframes border-zooming{
	100%{
		transform: scale(1);
		opacity: 0;
	}
}

.experts-rating-video-image .video-play-button a i{
	font-size: 16px;
	color: var(--dark-color);
}

.who-we-are-client{
	width: 50%;
	padding-left: 50px;
}

.comapny-client-rating{
	margin-bottom: 20px;
}

.comapny-client-rating ul{
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 5px;
}

.comapny-client-rating ul li i{
	font-size: 14px;
	color: var(--accent-color);
	margin-right: 2px;
}

.comapny-client-rating p{
	margin: 0;
}

.company-client-images{
	margin-bottom: 20px;
}

.company-client-images .client-image{
    display: inline-block;
    margin-left: -18px;
    border: 1px solid var(--secondary-color);
    border-radius: 50%;
    overflow: hidden;
}

.company-client-images .client-image:first-child{
    margin: 0;
}

.company-client-images .client-image figure{
	display: block;
}

.company-client-images .client-image img{
    max-width: 40px;
}

.contact-now-btn a{
	position: relative;
	color: var(--accent-color);
	font-size: 16px;
	font-weight: 700;
	padding-right: 30px;
	text-transform: capitalize;
}

.contact-now-btn a:hover{
	color: var(--primary-color);
}

.contact-now-btn a:after{
	content: '';
    position: absolute;
    top: -2px;
    right: 0;
    background-image: url(../images/arrow-accent.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 24px;
    height: 24px;
    transition: all 0.3s ease-in-out;
}

.contact-now-btn a:hover:after{
	filter: brightness(0) invert(1);
	transform: rotate(45deg);
}

.experts-counters-list{
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	gap: 80px;
}

.experts-counter-box{
	width: calc(50% - 40px);
	display: flex;
	flex-wrap: wrap;
	gap: 80px;
}

.experts-counter-box:nth-child(even){
	margin-top: 60px;
}

.experts-counter-item{
	position: relative;
	width: 100%;
	background: url('../images/who-we-are-counter-bg.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	border-radius: 30px;
	padding: 30px;
	overflow: hidden;
}

.experts-counter-item:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: var(--secondary-color);
	opacity: 40%;
	z-index: -1;
}

.experts-counter-box.expert-box-1 .experts-counter-item:nth-child(even){
	background: transparent;
}

.experts-counter-box.expert-box-2 .experts-counter-item:nth-child(odd){
	background: transparent;
}

.experts-counter-item .icon-box{
	text-align: right;
	margin-bottom: 20px;
}

.experts-counter-item .icon-box img{
	max-width: 30px;
	transition: all 0.3s ease-in-out;
}

.experts-counter-item:hover .icon-box img{
	filter: brightness(0) invert(1);
}

.experts-counter-content h2{
	font-size: 50px;
	font-weight: 800;
	color: var(--accent-color);
	margin-bottom: 10px;
}

.experts-counter-content p{
	margin: 0;
}

.executive-partners{
	padding: 80px 0;
}

.executive-partners-box{
	position: relative;
	border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	border-radius: 30px;
	padding: 70px;
	overflow: hidden;
}

.executive-partners-box::before{
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.executive-partners-box .section-title{
	margin-bottom: 0;
}

.our-partners-list{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.our-partners-list .company-logo{
	width: calc(33.33% - 20px);
	background: var(--dark-color);
	border-radius: 10px;
	text-align: center;
	padding: 25px 35px;
}

.our-partners-list .company-logo img{
	width: 100%;
	height: 30px;
}

.our-team{
	position: relative;
	padding: 80px 0 50px;
}

.our-team::before{
    content: '';
    display: block;
    position: absolute;
    left: -90px;
    top: -25%;
    background: url(../images/why-choose-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 310px;
    height: 325px;
    animation: circlezoomrotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

.team-item{
    position: relative;
    border-radius: 30px;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    overflow: hidden;
}

.team-image a{
    position: relative;
    display: block;
}

.team-image a::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(181.78deg, rgba(0, 0, 0, 0) 47.87%, rgba(0, 0, 0, 0.8) 81.02%);
    z-index: 1;
}

.team-image figure, 
.team-image img{
    width: 100%;
    aspect-ratio: 1 / 1.38;
    object-fit: cover;
    display: block;
	transition: all 0.4s ease-in-out; 
}

.team-item:hover .team-image img{
	transform: scale(1.1);
}

.team-body{
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    transform: translateY(40px);
    text-align: center;
    transition: all 0.4s ease-in-out;
    z-index: 2;
}

.team-item:hover .team-body{
    transform: translateY(0);
}

.team-content h3{
    font-size: 22px;
    margin-bottom: 5px;
    text-transform: capitalize;
}

.team-content h3 a{
    color: inherit;
}

.team-content p{
    text-transform: capitalize;
    margin-bottom: 0;
}

.team-social-list{
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
}

.team-item:hover .team-social-list{
    margin-top: 15px;
    opacity: 1;
    visibility: visible;
}

.team-social-list ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

.team-social-list ul li{
    display: inline-block;
    margin-right: 10px;
}

.team-social-list ul li:last-child{
    margin: 0;
}

.team-social-list ul li a{
    border: 1px solid var(--accent-color);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}

.team-social-list ul li:hover a{
    background-color: var(--accent-color);
}

.team-social-list ul li a i{
    color: var(--accent-color);
    font-size: 18px;
    transition: all 0.3s ease-in-out;
}

.team-social-list ul li:hover a i{
    color: var(--dark-color);
}

.our-faqs{
    padding: 80px 0;
}

.faq-images{
    position: relative;
    margin-right: 30px;
    padding: 140px 80px 0 0;
}

.faq-img-1{
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.faq-img-1 figure{
    display: block;
    border-radius: 30px;
}

.faq-img-1 img{
    width: 100%;
    aspect-ratio: 1 / 1.02;
    object-fit: cover;
    border-radius: 30px;
}

.faq-img-2 figure{
    display: block;
    border-radius: 30px;
}

.faq-img-2 img{
	width: 100%;
    aspect-ratio: 1 / 1.06;
    object-fit: cover;
    border-radius: 30px;
}

.faq-cta-box{
    position: absolute;
    bottom: 0;
    right: 10%;
    transform: translate(0, -100%);
    animation: FaqCtaBoxMove 4s infinite linear;
}

@keyframes FaqCtaBoxMove{
	50%{
		right: 0;
	}
}

.faq-cta-box a{
    position: relative;
    display: block;
    color: var(--text-color);
    font-weight: 700;
    padding: 10px 18px;
    border: 1px solid var(--divider-color);
    border-radius: 10px;
    backdrop-filter: blur(60px);
    -webkit-backdrop-filter: blur(60px);
    overflow: hidden;
}

.faq-cta-box a::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--primary-color);
    opacity: 16%;
    z-index: -1;
}

.faq-cta-box img{
    max-width: 30px;
    margin-right: 10px;
}

.our-faq-section .accordion-item{
    border: 1px solid var(--divider-color);
	border-radius: 10px;
	margin-bottom: 30px;
    padding: 0;
	transition: all 0.3s ease-in-out;
	overflow: hidden;
}

.our-faq-section .accordion-item:last-child{
	margin-bottom: 0;
}

.our-faq-section .accordion-header .accordion-button{
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2em;
	background: transparent;
	color: var(--primary-color);
	padding: 17px 55px 17px 20px;
	transition: all 0.3s ease-in-out;
}

.our-faq-section .accordion-button:not(.collapsed){
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0) 100%);
}

.our-faq-section .accordion-header .accordion-button.collapsed{
	color: var(--primary-color);
}

.our-faq-section .accordion-item .accordion-button::after,
.our-faq-section .accordion-item .accordion-button.collapsed::after{
	content: '\f068';
	font-family: "FontAwesome";
	position: absolute;
	right: 20px;
	top: 50%;
	bottom: auto;
	transform: translate(0px, -12px);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 400;
    line-height: normal;
	width: 24px;
	height: 24px;
    color: var(--dark-color);
	background-color: var(--primary-color);
    border-radius: 50%;
}

.our-faq-section .accordion-item .accordion-button.collapsed::after{
	content: '\2b';
	background-color: var(--accent-color);
}

.our-faq-section .accordion-item .accordion-body{
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0) 100%);
	padding: 0 55px 18px 20px;
}

.our-faq-section .accordion-item .accordion-body p{
    color: var(--primary-color);
	margin: 0;
}

/************************************/
/***     19. Services Page css    ***/
/************************************/

.page-services{
	padding: 160px 0 50px;
}

.who-we-are.service-we-are::before{
	display: none;
}

/************************************/
/***    20. Services Single css   ***/
/************************************/

.page-service-single{
	position: relative;
    padding: 160px 0 80px;
}

.page-service-single::before{
    content: '';
    display: block;
    position: absolute;
    right: -120px;
    top: 15%;
    background: url(../images/about-agency-bg.png) no-repeat;
    background-position: right center;
    background-size: contain;
    opacity: 40%;
    width: 386px;
    height: 400px;
    animation: circlerotate 20s infinite linear;
    z-index: -1;
}

.page-service-single::after{
    content: '';
    display: block;
    position: absolute;
    left: -90px;
    top: 50%;
    background: url(../images/why-choose-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 310px;
    height: 325px;
    animation: circlezoomrotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

.service-single-content{
    margin-right: 30px;
}

.service-feature-image{
    margin-bottom: 40px;
}

.service-feature-image figure{
    display: block;
    border-radius: 30px;
}

.service-feature-image img{
    width: 100%;
    aspect-ratio: 1 / 0.67;
    object-fit: cover;
    border-radius: 30px;
}

.service-entry{
    margin-bottom: 40px;
}

.service-entry p{
    margin-bottom: 20px;
}

.service-entry p:last-child{
    margin-bottom: 0;
}

.service-entry h2{
    font-size: 50px;
    font-weight: 300;
    margin-bottom: 20px;
}

.service-entry h2 span{
    color: var(--accent-color);
    font-weight: 700;
}

.service-entry-list-image{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 40px;
    margin-bottom: 40px;
}

.service-entry-list{
    width: calc(55% - 20px);
}

.service-entry-list ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.service-entry-list ul li{
    position: relative;
    text-transform: capitalize;
    padding-left: 30px;
    margin-bottom: 24px;
}

.service-entry-list ul li:last-child{
    margin-bottom: 0;
}

.service-entry-list ul li::before{
    content: "\f192";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
    color: var(--accent-color);
}

.service-entry-image{
    width: calc(45% - 20px);
}

.service-entry-image figure{
    display: block;
    border-radius: 30px;
    overflow: hidden;
}

.service-entry-image img{
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 0.89;
    border-radius: 30px;
}

.service-process-steps{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin: 30px 0 40px;
}

.process-step-item{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.process-step-item:nth-of-type(even){
    flex-direction: row-reverse;
}

.process-step-content{
    position: relative;
    background: url(../images/service-bg.svg) no-repeat;
    background-size: auto;
    background-position: top left;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
    width: calc(50% - 15px);
    padding: 40px;
    border: 1px solid var(--divider-color);
    border-radius: 30px;
}

.process-step-content::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
    border-radius: 30px;
}

.process-step-header{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 70px;
}

.process-step-header .icon-box img{
    max-width: 60px;
}

.process-step-no h3{
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
}

.process-step-no h3 span{
    color: var(--accent-color);
    display: block;
}

.process-step-body{
    position: relative;
}

.process-step-body h3{
    font-size: 22px;
    font-weight: 700;
    text-transform: capitalize;
    margin-bottom: 20px;
}

.process-step-body p{
    margin-bottom: 0;
}

.process-step-image{
    width: calc(50% - 15px);
}

.process-step-image figure{
    display: block;
    height: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.process-step-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 0.9;
    border-radius: 30px;
}

.service-sidebar{
    position: sticky;
    top: 20px;
}

.service-catagery-list{
    position: relative;
    border-radius: 30px;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
    margin-bottom: 60px;
	overflow: hidden;
}

.service-catagery-list::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.service-catagery-list h3{
    font-size: 22px;
    text-transform: capitalize;
    padding: 40px 40px 30px;
    border-bottom: 1px solid var(--divider-color);
}

.service-catagery-list ul{
    list-style: none;
    margin: 0;
    padding: 30px 40px 40px;
}

.service-catagery-list ul li{
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 30px;
    margin-bottom: 30px;
    transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:last-child{
    margin: 0;
    padding: 0;
    border-bottom: none;
}

.service-catagery-list ul li a{
    position: relative;
    display: block;
    text-transform: capitalize;
    color: var(--text-color);
    transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:hover a{
    color: var(--accent-color);
}

.service-catagery-list ul li a::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/arrow-accent.svg) no-repeat;
    background-position: right center;
    background-size: cover;
    width: 26px;
    height: 26px;
    transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:hover a::before{
    transform: rotate(45deg);
}

.sidebar-cta-box{
    position: relative;
    background: url(../images/sidebar-cta-bg.svg) no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 50px;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    text-align: center;
    overflow: hidden;
}

.sidebar-cta-box::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.sidebar-cta-box .icon-box{
    position: relative;
    margin-bottom: 40px;
}

.sidebar-cta-box .icon-box img{
    max-width: 60px;
}

.cta-contact-content{
    position: relative;
    margin-bottom: 20px;
}

.cta-contact-content h3{
    font-size: 22px;
    font-weight: 700;
    color: var(--accent-color);
    margin-bottom: 20px;
}

.cta-contact-content p{
    margin-bottom: 0;
}

.cta-contact-btn{
    position: relative;
}

.cta-contact-btn a{
    display: inline-block;
    font-weight: 700;
    color: var(--dark-color);
    backdrop-filter: blur(60px);
    -webkit-backdrop-filter: blur(60px);
    background-color: var(--accent-color);
    border-radius: 10px;
    padding: 12px 35px;
    transition: all 0.4S ease-in-out;
}

.cta-contact-btn a:hover{
    background-color: var(--dark-divider-color);
    color: var(--primary-color);
}

.cta-contact-btn a img{
    margin-right: 12px;
    max-width: 30px;
    transition: all 0.4S ease-in-out;
}

.cta-contact-btn a:hover img{
    filter: brightness(1) invert(1);
}

/************************************/
/*** 	 21. Blog Archive Css	  ***/
/************************************/

.page-blog{
	position: relative;
    padding: 160px 0 80px;
}

.page-blog::before{
    content: '';
    display: block;
    position: absolute;
    right: -120px;
    top: 40%;
    background: url(../images/about-agency-bg.png) no-repeat;
    background-position: right center;
    background-size: contain;
    opacity: 40%;
    width: 386px;
    height: 400px;
    animation: circlerotate 20s infinite linear;
    z-index: -1;
}

.post-item{
    height: calc(100% - 40px);
    margin-bottom: 40px;
}

.page-pagination{
    margin-top: 20px;
    text-align: center;
}

.page-pagination ul{
    justify-content: center;
    padding: 0;
    margin: 0;
}

.page-pagination ul li a,
.page-pagination ul li span{
    display: flex;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    background: var(--secondary-color);
    color: var(--primary-color);
	border-radius: 10px;
    width: 40px;
    height: 40px;
    margin: 0 5px;
    font-weight: 700;
	line-height: 1em;
    transition: all 0.3s ease-in-out;
}

.page-pagination ul li.active a, 
.page-pagination ul li a:hover{
    background: var(--accent-color);
	color: var(--dark-color);
}

/************************************/
/***      22. Blog Single css	  ***/
/************************************/

.page-single-post{
	padding: 160px 0 80px;
}

.post-image{
	position: relative;
	margin-bottom: 30px;
}

.post-image figure{
	display: block;
}

.post-image figure,
.post-image img{
	aspect-ratio: 1 / 0.50;
	object-fit: cover;
	border-radius: 30px;
}

.post-content{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.post-entry{
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 30px;
    margin-bottom: 30px;
}

.post-entry:after{
    content: '';
    display: block;
    clear: both;
}

.post-entry a{
    color: var(--accent-color);
}

.post-entry h1,
.post-entry h2,
.post-entry h3,
.post-entry h4,
.post-entry h5,
.post-entry h6{
	font-weight: 300;
	line-height: 1.2em;
	margin: 0 0 0.6em;
}

.post-entry h1 span,
.post-entry h2 span{
	font-weight: 800;
}

.post-entry h1{
	font-size: 80px;
}

.post-entry h2{
	font-size: 50px;
}

.post-entry h3{
	font-size: 40px;
}

.post-entry h4{
	font-size: 30px;
}

.post-entry h5{
	font-size: 24px;
}

.post-entry h6{
	font-size: 18px;
}

.post-entry p{
	margin-bottom: 20px;
}

.post-entry p:last-child{
	margin-bottom: 0;
}

.post-entry p strong{
	color: var(--primary-color);
	font-size: 18px;
	font-weight: 600;
}

.post-entry ol{
    margin: 0 0 30px;
}

.post-entry ol li{
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 600;
    color: var(--text-color);
}

.post-entry ul{
	padding: 0;
	margin: 20px 0 20px;
	padding-left: 20px;
}

.post-entry ul li{
	font-size: 18px;
    font-weight: 500;
    color: var(--primary-color);
    position: relative;
    margin-bottom: 15px;
}

.post-entry ul li:last-child{
	margin-bottom: 0;
}

.post-entry ul ul,
.post-entry ul ol,
.post-entry ol ol,
.post-entry ol ul{
    margin-top: 20px;
    margin-bottom: 0;
}

.post-entry ul ul li:last-child,
.post-entry ul ol li:last-child,
.post-entry ol ol li:last-child,
.post-entry ol ul li:last-child{
    margin-bottom: 0;
}

.post-entry blockquote{
	position: relative;
	background: url(../images/icon-blockquote.svg) no-repeat;
	border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
	background-position: 35px 30px;
    background-size: 58px;
    border-radius: 20px;
    padding: 30px 30px 30px 100px;
    margin-bottom: 30px;
	overflow: hidden;
}

.post-entry blockquote::before{
	content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.post-entry blockquote p{
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4em;
	color: var(--primary-color);
}

.post-entry blockquote p:last-child{
	margin-bottom: 0;
}

.tag-links{
	font-size: 24px;
	font-weight: 600;
	color: var(--primary-color);
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.post-tags .tag-links a{
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    text-transform: capitalize;
    background: var(--accent-color);
    background-size: 200% auto;
    color: var(--dark-color);
	border-radius: 100px;
    padding: 8px 20px;
	transition: all 0.3s ease-in-out;
}

.post-tags .tag-links a:hover{
	background: var(--primary-color);
}

.post-social-sharing{
    text-align: right;
}

.post-social-sharing ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

.post-social-sharing ul li{
    display: inline-block;
    margin-right: 10px;
}

.post-social-sharing ul li:last-child{
	margin-right: 0;
}

.post-social-sharing ul li a{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
	background: var(--accent-color);
    background-size: 200% auto;
    color: var(--dark-color);
	border-radius: 50%;
    width: 36px;
    height: 36px;
    transition: all 0.3s ease-in-out;
}

.post-social-sharing ul li:hover a{
	background: var(--primary-color);
}

.post-social-sharing ul li a i{
    font-size: 18px;
    color: inherit;
}

/************************************/
/***      23. Project Page css	  ***/
/************************************/

.page-project{
	position: relative;
	padding: 160px 0 40px;
}

.page-project::before{
    content: '';
    display: block;
    position: absolute;
    right: -120px;
    top: 40%;
    background: url(../images/about-agency-bg.png) no-repeat;
    background-position: right center;
    background-size: contain;
    opacity: 40%;
    width: 386px;
    height: 400px;
    animation: circlerotate 20s infinite linear;
    z-index: -1;
}

/************************************/
/***     24. Project Single css	  ***/
/************************************/

.page-project-single{
	position: relative;
    padding: 160px 0 80px;
}

.page-project-single::before{
    content: '';
    display: block;
    position: absolute;
    left: -90px;
    top: 10%;
    background: url(../images/agency-benefits-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 279px;
    height: 287px;
    animation: circlerotate 8s infinite linear;
    z-index: -1;
}

.page-project-single::after{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: 60%;
    background: url(../images/why-choose-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 310px;
    height: 325px;
    animation: circlezoomrotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

.project-single-content{
    margin-right: 30px;
}

.project-single-image{
    margin-bottom: 40px;
}

.project-single-image figure{
    display: block;
    border-radius: 30px;
}

.project-single-image img{
    width: 100%;
    aspect-ratio: 1 / 0.67;
    object-fit: cover;
    border-radius: 30px;
}

.project-challenges,
.project-info,
.project-entry{
    margin-bottom: 60px;
}

.project-entry p{
    margin-bottom: 20px;
}

.project-entry p:last-child{
    margin-bottom: 0;
}

.project-entry h2{
    font-size: 50px;
    font-weight: 300;
    color: var(--primary-color);
    margin-bottom: 30px;
}

.project-entry h2 span{
    color: var(--accent-color);
    font-weight: 700;
}

.project-entry ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.project-entry ul li{
    position: relative;
    text-transform: capitalize;
    padding-left: 30px;
    margin-bottom: 24px;
}

.project-entry ul li:last-child{
    margin-bottom: 0;
}

.project-entry ul li::before{
    content: "\f192";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
    color: var(--accent-color);
}

.project-solution-rating{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 60px;
    margin-top: 30px;
}

.project-rating-content{
    width: calc(70% - 30px);
}

.project-rating-counter{
    width: calc(30% - 30px);
    display: flex;
    align-items: center;
}

.project-rating-counter .icon-box{
    margin-right: 20px;
}

.project-rating-counter .icon-box i{
    font-size: 48px;
    color: var(--accent-color);
}

.project-counter-content{
    width: calc(100% - 68px);
}

.project-counter-content h3{
    font-size: 40px;
}

.project-sidebar{
	position: sticky;
	top: 20px;
}

.project-catagery-list{
	position: relative;
    border: 1px solid var(--divider-color);
	backdrop-filter: blur(100px);
	-webkit-backdrop-filter: blur(100px);
    border-radius: 30px;
    margin-bottom: 60px;
	overflow: hidden;
}

.project-catagery-list::before{
    content: '';
	display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.category-item-list{
    padding: 40px 40px 30px;
}

.category-list-item{
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.category-list-item:last-child{
    margin: 0;
    padding: 0;
    border-bottom: none;
}

.category-list-item h3{
    font-size: 22px;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.category-list-item p{
    text-transform: capitalize;
    margin-bottom: 0;
}

.category-social-link{
    border-top: 1px solid var(--divider-color);
	display: flex;
    align-items: center;
    padding: 30px 40px 40px;
}

.category-social-link span{
    font-size: 22px;
    font-weight: 700;
	margin-right: 15px;
}

.category-social-link ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.category-social-link ul li{
	display: inline-block;
	margin-right: 5px;
}

.category-social-link ul li:last-child{
	margin-right: 0;
}

.category-social-link ul li a{
    border: 1px solid var(--accent-color);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}

.category-social-link ul li a:hover{
    border-color: var(--primary-color);
}

.category-social-link ul li a i{
    color: var(--accent-color);
    font-size: 18px;
    transition: all 0.3s ease-in-out;
}

.category-social-link ul li a:hover i{
    color: var(--primary-color);
}

/************************************/
/***      25. Team Page css	      ***/
/************************************/

.page-team{
	position: relative;
	padding: 160px 0 50px;
}

.page-team::before{
    content: '';
    display: block;
    position: absolute;
    right: -120px;
    top: 50%;
    background: url(../images/work-together-bg-shape.png) no-repeat;
    background-position: right center;
    background-size: contain;
    opacity: 40%;
    width: 305px;
    height: 315px;
    animation: circlmoveerotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

/************************************/
/***      26. Team Single css	  ***/
/************************************/

.page-team-single{
	position: relative;
    padding: 160px 0 80px;
}

.page-team-single::before{
    content: '';
    display: block;
    position: absolute;
    right: -90px;
    top: 60%;
    background: url(../images/why-choose-bg-shape.png) no-repeat;
    background-position: left center;
    background-size: contain;
    opacity: 50%;
    width: 310px;
    height: 325px;
    animation: circlezoomrotate 10s infinite linear;
    animation-direction: alternate;
    z-index: -1;
}

.team-single-content{
    margin-right: 30px;
}

.team-single-content h2{
    font-size: 50px;
    font-weight: 300;
    margin-bottom: 20px;
}

.team-single-content h2 span{
    color: var(--accent-color);
    font-weight: 700;
}

.team-single-content p{
    margin-bottom: 20px;
}

.team-single-content p:last-child{
    margin-bottom: 0;
}

.team-info-box{
    margin-bottom: 60px;
}

.team-info-header{
	display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 30px;
    margin-bottom: 40px;
}

.team-info-title{
    width: calc(75% - 15px);
}

.team-info-title p{
    color: var(--accent-color);
    text-transform: capitalize;
    margin-bottom: 5px;
}

.team-info-title h2{
    font-weight: 700;
    text-transform: capitalize;
    margin: 0;
}

.team-info-social-list{
    width: calc(25% - 15px);
}

.team-info-social-list ul{
    margin: 0;
    padding: 0;
    list-style: none;
	text-align: end;
}

.team-info-social-list ul li{
    display: inline-block;
    margin-right: 10px;
}

.team-info-social-list ul li:last-child{
    margin: 0;
}

.team-info-social-list ul li a{
    border: 1px solid var(--accent-color);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}

.team-info-social-list ul li:hover a{
    background-color: var(--accent-color);
}

.team-info-social-list ul li a i{
    font-size: 18px;
    color: var(--accent-color);
    transition: all 0.3s ease-in-out;
}

.team-info-social-list ul li:hover a i{
    color: var(--dark-color);
}

.team-contact-box{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 30px;
    margin-bottom: 30px;
}

.team-contact-box:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.team-contact-box .icon-box{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    margin-right: 30px;
    border: 1px solid var(--dark-divider-color);
    border-radius: 50%;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
	overflow: hidden;
}

.team-contact-box .icon-box::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 30%;
	z-index: -1;
}

.team-contact-box .icon-box img{
    max-width: 36px;
}

.team-contact-content{
    width: calc(100% - 110px);
}

.team-contact-content h3{
    font-size: 22px;
    font-weight: 600;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.team-contact-content p{
	margin: 0;
}

.team-personal-info{
    margin-bottom: 60px;
}

.team-career-list ul{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.team-career-list ul li{
    position: relative;
    width: calc(50% - 15px);
    text-transform: capitalize;
    padding-left: 30px;
}

.team-career-list ul li::before{
    content: "\f192";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
    color: var(--accent-color);
}

.team-single-sidebar{
    position: sticky;
    top: 30px;
}

.team-single-image{
    margin-bottom: 60px;
}

.team-single-image figure{
    display: block;
    border-radius: 30px;
    overflow: hidden;
	visibility: visible;
}

.team-single-image img{
    width: 100%;
    aspect-ratio: 1 / 1.22;
    object-fit: cover;
    border-radius: 30px
}

.team-single-contact-form{
    position: relative;
    border-radius: 30px;
    border: 1px solid var(--divider-color);
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
	overflow: hidden;
}

.team-single-contact-form::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.team-single-contact-form h3{
    position: relative;
    font-size: 34px;
    font-weight: 300;
    padding: 40px 40px 30px;
    border-bottom: 1px solid var(--divider-color);
}

.team-single-contact-form h3 span{
    font-weight: 700;
    color: var(--accent-color);
}

.team-single-contact-form form{
    position: relative;
    padding: 40px;
}

.team-single-contact-form form .form-control{
    font-size: 16px;
    font-weight: 400;
    color: var(--text-color);
    padding: 16px 20px;
    background-color: transparent;
    border: 1px solid var(--divider-color);
    border-radius: 10px;
    outline: none;
    box-shadow: none;
}

.team-single-contact-form form .form-control::placeholder{
    color: var(--text-color);
}

.contact-form-btn .btn-highlighted{
	width: 100%;
	text-align: center;
}

/************************************/
/***      27. Pricing Page css	  ***/
/************************************/

.page-pricing{
    padding: 160px 0 80px;
}

.pricing-box-list{
    display: flex;
    flex-wrap: wrap;
    gap: 40px 60px;
}

.pricing-box{
    position: relative;
    background: url(../images/service-bg.svg) no-repeat;
    background-position: top left;
    background-size: auto;
    width: calc(50% - 30px);
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    padding: 50px;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
	overflow: hidden;
}

.pricing-box::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.pricing-box-content{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 30px;
    border-bottom: 1px solid var(--divider-color);
    margin-bottom: 40px;
    padding-bottom: 40px;
}

.pricing-title{
    width: calc(60% - 15px);
}

.pricing-title h3{
    font-size: 30px;
    text-transform: capitalize;
    margin-bottom: 10px; 
}

.pricing-title p{
    margin-bottom: 0;
}

.pricing-price{
    width: calc(40% - 15px);
    text-align: end;
}

.pricing-price h2{
    font-size: 50px;
    color: var(--accent-color);
}

.pricing-price h2 sup{
    font-size: 22px;
    color: var(--primary-color);
}

.pricing-price h2 sub{
    bottom: 0;
    font-size: 16px;
    font-weight: 400;
    color: var(--primary-color);
}

.pricing-list{
    margin-bottom: 40px;
}

.pricing-list ul{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pricing-list ul li{
    position: relative;
    width: calc(50% - 15px);
    text-transform: capitalize;
    padding-left: 30px;
}

.pricing-list ul li::before{
    content: "\f192";
    font-family: "FontAwesome";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
    color: var(--accent-color);
}

.pricing-btn .btn-highlighted{
	width: 100%;
	text-align: center;
}

/************************************/
/***    28. Testimonial Page css  ***/
/************************************/

.page-testimonial{
    padding: 160px 0 80px;
}

.testimonial-box-list{
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
}

.testimonial-box-item{
    position: relative;
    display: flex;
	align-items: center;
    flex-wrap: wrap;
    gap: 50px;
    width: 100%;
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
    padding: 80px;
	overflow: hidden;
}

.testimonial-box-item::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
    z-index: -1;
}

.client-author-image{
    width: calc(27% - 25px);
}

.client-author-image figure{
    display: block;
    border-radius: 50%;
    overflow: hidden;
}

.client-author-image img{
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
}

.client-testimonial-content{
    width: calc(73% - 25px);
}

.client-testimonial-rating{
    margin-bottom: 20px;
}

.client-testimonial-rating ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.client-testimonial-rating ul li{
    display: inline-block;
}

.client-testimonial-rating ul li i{
    font-size: 12px;
	color: var(--accent-color);
    margin-right: 2px;
}

.client-testimonial-rating ul li:last-child i{
    margin: 0;
}

.client-testimonial-info{
    margin-bottom: 20px;
}

.client-testimonial-info p{
	font-size: 20px;
}

.client-testimonial-info p:last-child{
    margin: 0;
}

.client-author-content{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    align-items: center;
}

.client-author-title{
    width: calc(65% - 15px);
}

.client-author-title h3{
    font-size: 22px;
    text-transform: capitalize;
    margin-bottom: 5px;
}

.client-author-title p{
    text-transform: capitalize;
    margin-bottom: 0;
}

.client-author-logo{
    width: calc(35% - 15px);
    text-align: end;
}

.client-author-logo img{
	max-width: 125px;
	max-height: 30px;
}

/************************************/
/***     27. Image Gallery css    ***/
/************************************/

.page-gallery{
	padding: 160px 0 50px;
}

.page-gallery-box .photo-gallery{
	height: calc(100% - 30px);
	margin-bottom: 30px;
}



.page-gallery-box .photo-gallery figure{
	border-radius: 20px;
}

.page-gallery-box .photo-gallery img{
	aspect-ratio: 1 / 0.8;
	object-fit: cover;
	border-radius: 20px;
}

/************************************/
/***     30. Video Gallery css    ***/
/************************************/

.page-video-gallery{
	padding: 160px 0 50px;
}

.video-gallery-image{
	border-radius: 20px;
	overflow: hidden;
	height: calc(100% - 30px);
	margin-bottom: 30px;
}

.video-gallery-image a{
	position: relative;
	display: block;

}

.video-gallery-image a::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--secondary-color);
    border-radius: 20px;
    opacity: 0%;
    visibility: hidden;
    width: 100%;
    height: 100%;
    z-index: 1;
    transform: scale(0);
    transition: all 0.4s ease-in-out;
}

.video-gallery-image:hover a::before{
    opacity: 50%;
    visibility: visible;
    transform: scale(1);
}

.video-gallery-image a::after{
    content: '\f04b';
	font-family: 'FontAwesome';
    position: absolute;
    top: 50%;
    left: 50%;
    right: 0;
    transform: translate(-50%, -50%);
	font-size: 20px;
	background: var(--accent-color);
	color: var(--dark-color);
    border-radius: 50%;
    height: 60px;
    width: 60px;

	display: flex;
	align-items: center;
	justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-in-out;
    z-index: 1;
}

.video-gallery-image:hover a::after{
    opacity: 1;
    visibility: visible;
}

.video-gallery-image img{
	aspect-ratio: 1 / 0.8;
	object-fit: cover;
	border-radius: 20px;
}

/************************************/
/***       31. FAQs Page css      ***/
/************************************/

.page-faqs{
    padding: 160px 0 80px;
}

.page-faqs-catagery{
    margin-right: 30px;
}

.page-faq-accordion{
    margin-bottom: 80px;
}

.page-faq-accordion:last-child{
    margin-bottom: 0;
}

.faq-sidebar{
    position: sticky;
    top: 20px;
}

.faq-catagery-list{
    position: relative;
    border-radius: 30px;
    backdrop-filter: blur(100px);
    -webkit-backdrop-filter: blur(100px);
    margin-bottom: 60px;
	overflow: hidden;
}

.faq-catagery-list::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
	z-index: -1;
}

.faq-catagery-list ul{
    list-style: none;
    margin: 0;
    padding: 40px;
}

.faq-catagery-list ul li{
    border-bottom: 1px solid var(--divider-color);
    padding-bottom: 30px;
    margin-bottom: 30px;
    transition: all 0.3s ease-in-out;
}

.faq-catagery-list ul li:last-child{
    margin: 0;
    padding: 0;
    border-bottom: none;
}

.faq-catagery-list ul li a{
    position: relative;
    display: block;
    text-transform: capitalize;
    color: var(--text-color);
    transition: all 0.3s ease-in-out;
}

.faq-catagery-list ul li:hover a{
    color: var(--accent-color);
}

.faq-catagery-list ul li a::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/arrow-accent.svg) no-repeat;
    background-position: right center;
    background-size: cover;
    width: 26px;
    height: 26px;
    transition: all 0.3s ease-in-out;
}

.faq-catagery-list ul li:hover a::before{
    transform: rotate(45deg);
}

/************************************/
/***    32. Contact Us Page css   ***/
/************************************/

.page-contact-us{
    padding: 160px 0 80px;
}

.contact-info-box{
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.contact-info-box .info-box-1{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.contact-info-box .info-box-1,
.contact-info-box .info-box-2{
    position: relative;
    width: 100%;
	border: 1px solid var(--divider-color);
	border-radius: 30px;
    padding: 30px 40px;
	overflow: hidden;
}

.contact-info-box .info-box-1::before,
.contact-info-box .info-box-2::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 30%;
    z-index: -1;
}

.contact-info-item{
    text-align: center;
    width: 100%;
}

.contact-info-box .info-box-1 .contact-info-item{
    position: relative;
    width: calc(50% - 15px);
}

.contact-info-box .info-box-1 .contact-info-item::before{
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(15px, -50%);
    height: 80%;
    width: 1px;
    background-color: var(--divider-color);
}

.contact-info-box .info-box-1 .contact-info-item:nth-child(2n + 2):before{
	display: none;
}

.contact-info-box .info-box-2 .contact-info-item{
    display: flex;
    text-align: left;
}

.contact-info-item .icon-box{
    margin-bottom: 30px;
}

.contact-info-box .info-box-2 .icon-box{
    margin: 0 30px 0 0;
}

.contact-info-item .icon-box img{
    max-width: 50px;
}

.contact-info-box .info-box-2 .contact-item-content{
    width: calc(100% - 80px);
}

.contact-item-content h3{
    font-size: 22px;
    font-weight: 600;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.contact-item-content p{
    margin: 0;
}

.contact-us-form{
    position: relative;
    padding: 50px;
    border: 1px solid var(--divider-color);
    border-radius: 30px;
    margin-left: 30px;
}

.contact-us-form::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    opacity: 40%;
    border-radius: 30px;
    z-index: -1;
}

.contact-us-form form .form-control{
    font-size: 16px;
    font-weight: 400;
    color: var(--text-color);
    padding: 16px 20px;
    background-color: transparent;
    border: 1px solid var(--divider-color);
    border-radius: 10px;
    outline: none;
    box-shadow: none;
}

.contact-us-form form .form-control::placeholder{
    color: var(--text-color);
}

.google-map{
	padding: 80px 0;
}

.google-map-iframe,
.google-map-iframe iframe{
    width: 100%;
    height: 600px;
    border-radius: 30px;
}

.google-map-iframe iframe{
    filter: grayscale(1);
    transition: all 0.4s ease-in-out;
}

.google-map-iframe iframe:hover{
    filter: grayscale(0);
}

/************************************/
/*** 	   33. 404 Page css       ***/
/************************************/

.error-page{
	padding: 160px 0 80px;
}

.error-page-image{
	text-align: center;
	margin-bottom: 30px;
}

.error-page-image img{
	width: 100%;
	max-width: 50%;
}

.error-page .error-page-content{
	text-align: center;
}

.error-page-content-heading{
	margin-bottom: 30px;
}

.error-page-content-body p{
	margin-bottom: 30px;
}

/************************************/
/***      34. Responsive css      ***/
/************************************/

@media only screen and (max-width: 991px){

	.navbar{
		padding: 20px 0;
	}

	.slicknav_nav li,
	.slicknav_nav ul{
        display: block;
    }

	.responsive-menu,
    .navbar-toggle{
        display: block;
    }

	.header-social-links{
		display: none;
	}

	.section-row{
		margin-bottom: 40px;
	}

	.section-row .section-title{
		max-width: 100%;
	}

	.section-title{
		margin-bottom: 30px;
	}

	.section-title h3{
		margin-bottom: 15px;
	}

	.section-title h3::before{
		width: 14px;
		height: 14px;
	}

	.section-title h1{
		font-size: 70px;
	}

	.section-title h2{
		font-size: 40px;
	}

	.section-title p{
		margin-top: 15px;
	}

	.section-content-btn .section-title-content{
		margin-bottom: 20px;
	}

	.section-title-content{
		margin-top: 15px;
	}

	.hero{
		padding: 180px 0 90px;
		min-height: auto;
	}

	.hero.hero-slider-layout .hero-slide{
		padding: 180px 0 90px;
		min-height: auto;
	}

	.hero-content .section-title{
		margin-bottom: 40px;
	}

	.hero-content-body{
		margin-left: 0px;
	}

	.hero-content-video{
		width: 37%;
	}

	.hero-video-content{
		width: 63%;
	}

	.hero-btn{
		margin-top: 30px;
	}

	.our-scrolling-ticker{
		padding: 22px 0;
	}

	.scrolling-content span{
		font-size: 34px;
	}

	.about-agency{
		padding: 80px 0 40px;
	}

	.about-agency::before{
		width: 300px;
		height: 330px;
	}

	.about-agency-content{
		position: initial;
		padding-right: 0px;
		margin-bottom: 30px;
	}

	.about-agency-list{
		gap: 30px;
		padding-left: 30px;
		margin-left: 10px;
	}

	.agency-item-content h3:after{
		left: -40px;
	}

	.agency-item-content h3{
		font-size: 20px;
	}

	.our-services{
		padding: 40px 0;
	}

	.service-item{
		padding: 30px;
	}

	.service-item-header{
		margin-bottom: 40px;
	}

	.service-item-header .icon-box img{
		max-width: 50px;
	}

	.service-item-body h3{
		font-size: 20px;
		margin-bottom: 15px;
	}

	.service-footer{
		margin-top: 10px;
	}

	.digital-success{
		padding: 40px 0;
	}

	.digital-success-box{
		gap: 40px;
		padding: 50px;
	}

	.digital-success-list,
	.digital-success-content{
		width: 100%;
	}

	.digital-success-content::before{
		display: none;
	}

	.digital-success-content .section-title{
		margin-bottom: 40px;
	}

	.success-counter-item h2{
		font-size: 40px;
	}

	.success-list-item{
		margin-bottom: 40px;
	}

	.success-list-item p span{
		font-size: 20px;
	}

	.why-choose-us{
		padding: 40px 0;
	}

	.why-choose-us::before{
		top: 20%;
		width: 250px;
		height: 280px;
	}

	.why-choose-content{
		margin-right: 0;
		margin-bottom: 30px;
	}

	.why-choose-item{
		padding: 15px 20px;
	}

	.why-choose-item h3{
		font-size: 20px;
	}

	.why-choose-image img{
		aspect-ratio: 1 / 0.73;
	}

	.join-agency{
		padding: 40px 0 10px;
	}

	.agency-social-item{
		padding: 20px 30px 20px 50px;
		margin: 20px 0 30px 20px;
	}

	.agency-social-item .icon-box{
		top: -20px;
		left: -20px;
	}

	.agency-social-item .icon-box a{
		width: 60px;
		height: 60px;
	}

	.agency-social-item .icon-box i{
		font-size: 30px;
	}

	.agency-social-content h3{
		font-size: 20px;
	}

	.how-it-work{
		padding: 40px 0 10px;
	}

	.how-it-work::before{
		top: 0;
		width: 240px;
		height: 280px;
	}

	.work-process-item{
		padding: 30px;
	}

	.work-process-header{
		margin-bottom: 30px;
	}

	.work-process-title h3{
		font-size: 20px;
	}

	.work-process-content{
		margin-bottom: 40px;
	}

	.work-process-body{
		padding-top: 10px;
	}

	.work-process-no h3{
		font-size: 20px;
	}

	.work-process-no h2{
		font-size: 34px;
	}

	.work-process-icon-box{
		padding: 30px;
	}

	.work-process-icon-box img{
		max-width: 50px;
	}

	.our-features{
		padding: 40px 0;
	}

	.our-features::before{
		top: 15%;
		width: 250px;
		height: 225px;
	}

	.digital-features-box{
		gap: 30px;
	}

	.digital-features-item.features-item-1{
		width: calc(55% - 15px);
	}

	.digital-features-item.features-item-2{
		width: calc(45% - 15px);
	}

	.digital-features-item{
		padding: 30px;
	}

	.digital-features-content h3{
		font-size: 20px;
	}

	.digital-features-image{
		margin-bottom: 30px;
	}

	.digital-features-item.features-item-1 .digital-features-image img{
		aspect-ratio: 1 / 0.62;
	}

	.digital-features-item.agency-supports{
		padding: 30px 0;
	}

	.agency-supports-header{
		margin-bottom: 30px;
		padding: 0 30px;
	}

	.agency-supports-content{
		width: 70%;
	}

	.agency-supports-content h3{
		font-size: 20px;
	}

	.agency-free-consultation{
		width: 30%;
	}

	.agency-free-consultation img{
		max-width: 80px;
	}

	.agency-supports-logo{
		padding: 20px 25px;
	}

	.agency-supports-logo img{
		max-height: 25px;
	}

	.our-portfolio{
		padding: 40px 0 10px;
	}

	.our-Project-nav{
		margin-bottom: 40px;
	}

	.our-Project-nav ul{
		gap: 10px 20px;
	}

	.our-Project-nav ul li a{
		font-size: 14px;
		padding: 10px 15px;
	}

	.project-item{
		height: calc(100% - 30px);
		margin-bottom: 30px;
	}

	.project-btn a{
		width: 80px;
		height: 80px;
	}

	.project-btn a img{
		max-width: 34px;
	}

	.project-content h3{
		font-size: 20px;
	}

	.our-testimonial{
		padding: 40px 0;
	}

	.our-testimonial::before{
		width: 250px;
		height: 245px;
	}

	.testimonial-review-box{
		padding: 30px;
		margin-bottom: 30px;
	}

	.testimonial-review-content,
	.testimonial-review-header{
		margin-bottom: 20px;
	}

	.testimonial-review-header h2{
		font-size: 60px;
	}

	.testimonial-review-content h3{
		font-size: 20px;
	}

	.testimonial-slider{
		margin-left: 0px;
	}

	.testimonial-company-logo{
		margin-bottom: 20px;
	}

	.testimonial-content{
		margin-bottom: 30px;
	}

	.testimonial-content p{
		font-size: 20px;
	}

	.author-content h3{
		font-size: 20px;
	}

	.testimonial-slider .testimonial-button-next,
	.testimonial-slider .testimonial-button-prev{
		width: 50px;
		height: 50px;
	}

	.testimonial-slider .testimonial-button-next::before,
	.testimonial-slider .testimonial-button-prev::before{
		background-size: 24px auto;
	}

	.testimonial-benefits-box{
		gap: 20px;
		margin-top: 50px;
		padding: 30px 15px;
	}

	.testimonial-benefits-item{
		width: calc(25% - 15px);
	}

	.testimonial-benefits-item::before{
		right: -10px;
	}

	.testimonial-benefits-item .icon-box{
		margin-bottom: 20px;
	}

	.testimonial-benefits-content h3{
		font-size: 20px;
		margin-bottom: 15px;
	}

	.testimonial-benefits-content ul li{
		font-size: 14px;
		padding-left: 18px;
		margin-bottom: 10px;
	}

	.testimonial-benefits-content ul li::before{
		font-size: 14px;
	}

	.agency-benefits{
		padding: 40px 0 10px;
	}

	.agency-benefits::before{
		width: 210px;
		height: 220px;
	}
	
	.benefits-steps-item{
		padding: 20px;
	}

	.benefits-steps-item .icon-box,
	.benefits-steps-no{
		margin-bottom: 30px;
	}

	.benefits-steps-item .icon-box img{
		max-width: 50px;
	}

	.benefits-steps-content h3{
		font-size: 20px;
	}

	.our-blog{
		padding: 40px 0 10px;
	}

	.post-featured-image{
		margin-bottom: 20px;
	}

	.post-item-content{
		margin-bottom: 15px;
	}

	.post-item-content h3{
		font-size: 20px;
	}

	.footer-work-together{
		padding: 40px 0;
	}

	.footer-work-together::before{
		top: 0;
		width: 245px;
		height: 355px;
	}

	@keyframes circlmoveerotate{
		from{
			transform: translateY(0) rotate(0deg);
		  }
		to{
			transform: translateY(100px) rotate(360deg);
		}
	}

	.work-together-content{
		background-size: cover;
	}

	.footer-work-together h3{
		font-size: 20px;
		margin-bottom: 10px;
	}

	.footer-work-together h2{
		font-size: 120px;
	}

	.footer-work-together .work-together-btn a{
		width: 120px;
		height: 120px;
	}

	.footer-main{
		padding: 40px 0 0;
	}

	.footer-logo{
		margin-bottom: 40px;
	}

	.footer-contact-item{
		margin-bottom: 20px;
	}

	.footer-contact-content p{
		font-size: 20px;
	}

	.footer-newsletter-form h3,
	.footer-links h3{
		font-size: 20px;
		margin-bottom: 20px;
	}

	.footer-links ul li{
		margin-bottom: 10px;
	}

	.footer-newsletter-form{
		margin-top: 30px;
	}

	.footer-newsletter-form .form-group .form-control{
		width: 80%;
	}

	.footer-social-links{
		margin-top: 30px;
	}

	.footer-copyright{
		padding: 30px 0;
		margin-top: 40px;
	}

	.page-header{
		padding: 182px 0 80px;
	}

	.page-header-box h1{
		font-size: 70px;
	}

	.page-header-box ol li.breadcrumb-item{
		font-size: 16px;
	}

	.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-content span{
		font-size: 20px;
	}

	.our-approach{
		padding: 40px 0 10px;
	}

	.mission-vision-item{
		padding: 30px;
	}

	.mission-vision-image{
		margin-bottom: 15px;
	}

	.mission-vision-item .mission-vision-content h3{
		font-size: 20px;
		margin-bottom: 15px;
	}

	.who-we-are{
		padding: 40px 0;
	}

	.who-we-are::before{
		top: -13%;
		width: 210px;
		height: 220px;
	}

	.who-we-are .who-we-are-content{
		padding-right: 0px;
		margin-bottom: 30px;
	}

	.experts-counters-list{
		gap: 40px;
	}

	.experts-counter-box{
		width: calc(50% - 20px);
		gap: 40px;
	}

	.experts-counter-box:nth-child(even){
		margin-top: 40px;
	}

	.experts-counter-content h2{
		font-size: 40px;
	}

	.executive-partners{
		padding: 40px 0;
	}

	.executive-partners-box{
		padding: 50px;
	}

	.executive-partners-box .section-title{
		margin-bottom: 30px;
	}

	.our-team{
		padding: 40px 0 10px;
	}

	.our-team::before{
		top: -5%;
		width: 250px;
        height: 280px;
	}

    .team-image figure, .team-image img{
        aspect-ratio: 1 / 1.3;
    }

    .team-content h3{
        font-size: 20px;
    }

	.our-faqs{
        padding: 40px 0;
    }

    .faq-images{
        max-width: 80%;
        margin: 0 auto 30px;
        padding: 100px 80px 0 0;
    }

    .faq-img-1 img{
        max-width: 285px;
    }

    .faq-img-2 img{
        aspect-ratio: 1 / 0.9;
    }

    .our-faq-section .accordion-header .accordion-button{
        font-size: 20px;
    }

	.page-services{
		padding: 80px 0 10px;
	}

	.page-service-single{
        padding: 80px 0 40px;
    }

	.page-service-single::before{
        width: 300px;
        height: 330px;
    }

	.page-service-single::after{
        width: 250px;
        height: 280px;
    }

    .service-single-content{
        margin: 0 0 40px 0;
    }

	.service-feature-image{
        margin-bottom: 30px;
    }

    .service-feature-image img{
        aspect-ratio: 1 / 0.59;
    }

    .service-entry{
        margin-bottom: 30px;
    }

    .service-entry h2{
        font-size: 40px;
    }

    .service-entry-list-image{
        margin: 30px 0;
		gap: 20px;
    }

	.service-entry-list{
		width: calc(55% - 10px);
	}

    .service-entry-list ul li{
        margin-bottom: 15px;
		padding-left: 25px;
    }

    .service-entry-list ul li::before{
        font-size: 16px;
    }

	.service-entry-image{
		width: calc(45% - 10px);
	}

    .process-step-content{
        padding: 30px;
    }

    .process-step-header{
        margin-bottom: 50px;
    }

    .process-step-header .icon-box img{
        max-width: 48px;
    }

    .process-step-no h3{
        font-size: 20px;
    }

    .process-step-body h3{
        font-size: 20px;
    }

	.process-step-image img{
		aspect-ratio: 1 / 0.8;
	}

	.service-sidebar{
		position: initial;
	}

    .service-catagery-list{
        margin-bottom: 40px;
    }

    .service-catagery-list h3{
        font-size: 20px;
        padding: 30px 30px 20px;
    }

    .service-catagery-list ul{
        padding: 20px 30px 30px;
    }

    .service-catagery-list ul li{
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .sidebar-cta-box{
        padding: 30px;
    }

    .sidebar-cta-box .icon-box{
        margin-bottom: 30px;
    }

    .sidebar-cta-box .icon-box img{
        max-width: 50px;
    }

    .cta-contact-content h3{
        font-size: 20px;
        margin-bottom: 10px;
    }

	.page-blog{
		padding: 80px 0 40px;
	}
	
	.page-blog::before{
		width: 300px;
		height: 330px;
	}
	
	.post-item{
		height: calc(100% - 30px);
		margin-bottom: 30px;
	}

	.page-pagination{
		margin-top: 10px;
	}

	.page-single-post{
		padding: 80px 0 40px;
	}

	.post-image{
		margin-bottom: 20px;
	}

	.post-entry blockquote{
		background-position: 25px 25px;
        background-size: 50px;
        padding: 25px 25px 25px 90px;
        margin-bottom: 20px;
	}

	.post-entry blockquote p{
		font-size: 18px;
	}

	.post-entry h2{
		font-size: 40px;
	}

	.post-entry ul li{
		font-size: 16px;
	}

	.post-tags{
		margin-bottom: 20px;
	}

	.post-social-sharing ul{
		text-align: left;
	}

	.tag-links{
		font-size: 22px;
	}

	.post-tags .tag-links a{
		font-size: 16px;
		padding: 6px 15px;
	}

	.page-project{
		padding: 80px 0 10px;
	}

	.page-project::before{
        width: 300px;
        height: 330px;
    }

	.page-project-single{
        padding: 80px 0 40px;
    }

	.page-project-single::before{
		top: 20%;
        width: 210px;
        height: 220px;
    }

	.page-project-single::after{
        width: 250px;
        height: 280px;
    }

    .project-single-content{
        margin-right: 0;
        margin-bottom: 30px;
    }

    .project-single-image{
        margin-bottom: 30px;
    }

    .project-single-content img{
        aspect-ratio: 1 / 0.57;
    }

	.project-challenges,
	.project-info,
    .project-entry{
        margin-bottom: 30px;
    }

    .project-entry p{
        margin-bottom: 20px;
    }

    .project-entry h2{
        font-size: 40px;
        margin-bottom: 20px;
    }

    .project-entry ul li{
        margin-bottom: 15px;
		padding-left: 25px;
    }

	.project-entry ul li::before{
		font-size: 16px;
	}

    .project-solution-rating{
        margin-top: 0;
    }

    .project-counter-content h3{
        font-size: 34px;
    }

	.project-sidebar{
		position: initial;
	}

    .project-catagery-list{
        margin-bottom: 40px;
    }

    .category-item-list{
        padding: 30px 30px 20px;
    }

    .category-list-item h3{
        font-size: 20px;
        margin-bottom: 5px;
    }

    .category-social-link{
        padding: 30px;
    }

    .category-social-link .social-links{
        font-size: 20px;
    }

	.page-team{
		padding: 80px 0 10px;
	}

	.page-team::before{
        width: 245px;
        height: 355px;
    }

	.page-team-single{
        padding: 80px 0 40px;
    }

	.page-team-single::before{
		top: 40%;
		width: 250px;
        height: 280px;
	}

    .team-single-content{
        margin-right: 0;
    }

    .team-info-box{
        margin-bottom: 40px;
    }

    .team-info-header{
		align-items: center;
        margin-bottom: 30px;
    }

    .team-single-content h2{
        font-size: 40px;
    }

    .team-contact-box{
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .team-contact-box .icon-box{
        width: 65px;
        height: 65px;
    }

    .team-contact-box .icon-box img{
        max-width: 30px;
    }

    .team-contact-content{
        width: calc(100% - 95px);
    }

    .team-contact-content h3{
        font-size: 20px;
        margin-bottom: 5px;
    }

    .team-personal-info{
        margin-bottom: 40px;
    }

    .team-career-list{
        margin-top: 20px;
    }

    .team-career-list ul{
        row-gap: 15px;
    }

	.team-single-sidebar{
		position: initial;
		margin-bottom: 30px;
	}

    .team-single-image{
        margin-bottom: 40px;
    }

    .team-single-image img{
        aspect-ratio: 1 / 0.8;
        object-position: top center;
    }

    .team-single-contact-form h3{
        font-size: 28px;
        padding: 30px;
    }

    .team-single-contact-form form{
        padding: 30px;
    }

	.page-pricing{
        padding: 80px 0 40px;
    }

    .pricing-box-list{
        gap: 30px;
    }

    .pricing-box{
        width: calc(50% - 15px);
        padding: 30px;
    }

    .pricing-box-content{
        gap: 15px;
        margin-bottom: 30px;
        padding-bottom: 30px;
    }

    .pricing-title{
        width: calc(52% - 7.5px);
    }

    .pricing-title h3{
        font-size: 26px;
        margin-bottom: 5px;
    }

    .pricing-price{
        width: calc(48% - 7.5px);
    }
    
    .pricing-price h2{
        font-size: 40px;
    }

    .pricing-price h2 sup{
        font-size: 20px;
    }

    .pricing-price h2 sub{
        font-size: 14px;
    }

    .pricing-list ul{
        gap: 15px;
    }

    .pricing-list ul li{
        width: 100%;
    }

    .pricing-list{
        margin-bottom: 30px;
    }

	.page-testimonial{
        padding: 80px 0 40px;
    }

    .testimonial-box-list{
        gap: 40px;
    }

    .testimonial-box-item{
        padding: 40px 30px;
        gap: 30px;
    }

    .client-author-image{
        width: calc(32% - 15px);
    }

    .client-testimonial-content{
        width: calc(68% - 15px);
    }

    .client-testimonial-rating{
        margin-bottom: 10px;
    }

	.client-testimonial-info p{
		font-size: 18px;
	}

    .client-author-title h3{
        font-size: 20px;
    }

	.page-gallery{
		padding: 80px 0 10px;
	}

	.page-video-gallery{
		padding: 80px 0 10px;
	}

	.page-faqs{
        padding: 80px 0 40px;
	}

	.page-faqs-catagery{
		margin-right: 0px;
	}

    .page-faq-accordion{
        margin-bottom: 40px;
    }

    .faq-sidebar{
        position: initial;
		margin-bottom: 30px;
    }

    .faq-catagery-list{
        margin-bottom: 40px;
    }

    .faq-catagery-list ul{
        padding: 30px;
    }

    .faq-catagery-list ul li{
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

	.page-contact-us{
        padding: 80px 0 40px;
    }

    .contact-information{
        margin-bottom: 30px;
    }

    .contact-info-box{
        gap: 20px;
    }

    .contact-info-box .info-box-1, 
    .contact-info-box .info-box-2{
        padding: 20px 30px;
    }

    .contact-info-item .icon-box{
        margin-bottom: 20px;
    }

    .contact-info-item .icon-box img{
        max-width: 40px;
    }

    .contact-info-box .info-box-2 .contact-item-content{
        width: calc(100% - 70px);
    }

    .contact-item-content h3{
        font-size: 20px;
    }

    .contact-us-form{
        margin: 0;
        padding: 30px;
    }

	.google-map{
		padding: 40px 0;
	}

    .google-map-iframe,
	.google-map-iframe iframe{
        height: 450px;
    }

	.error-page{
		padding: 80px 0 40px;
	}
	
	.error-page-image{
		margin-bottom: 20px;
	}

	.error-page-image img{
		max-width: 80%;
	}

	.error-page-content-heading{
		margin-bottom: 15px;
	}

	.error-page-content-body p{
		margin-bottom: 20px;
	}
}

@media only screen and (max-width: 767px){

	body{
		background-size: 200% auto;
	}

	.section-title h1{
        font-size: 34px;
    }

	.section-title h2{
        font-size: 30px;
    }

	.hero-content{
		text-align: center;
	}

	.hero-content .section-title{
        margin-bottom: 30px;
    }

	.hero-content-body{
		display: block;
	}

	.hero-content-video{
		width: 100%;
		justify-content: center;
		margin-bottom: 30px;
	}

	.hero-content-video .video-play-button a{
		height: 80px;
		width: 80px;
	}

	.hero-content-video .video-play-button a i{
		font-size: 25px;
	}

	.learn-more-circle img{
		max-width: 80px;
	}

	.hero-video-content{
        width: 100%;
    }

	.scrolling-ticker-box{
		--gap: 20px;
	}

	.scrolling-content span{
        font-size: 28px;
    }

	.scrolling-content span img{
		max-width: 20px;
		margin-right: 20px;
	}

	.about-agency::before{
        width: 250px;
        height: 280px;
    }

	.about-agency-list{
        padding-left: 20px;
    }

	.agency-item-content h3:after{
        left: -30px;
    }

	.agency-item-content h3{
        font-size: 18px;
    }

	.service-item{
        padding: 20px;
    }

	.service-item-body h3{
        font-size: 18px;
    }

	.service-footer p{
		font-size: 12px;
	}

	.digital-success-box{
        gap: 30px;
        padding: 40px 30px;
    }

	.digital-success-box::before{
		left: 10px;
		top: 10px;
		border-radius: 20px;
		width: calc(100% - 20px);
		height: calc(100% - 10px);
	}

	.success-counter-box{
		gap: 20px;
	}

	.success-counter-item{
		width: 100%;
	}

	.success-counter-item h2{
        font-size: 30px;
    }

	.success-list-item{
		background-size: 18px auto;
		margin-bottom: 30px;
	}

	.success-list-item p span{
        font-size: 18px;
    }

	.why-choose-us::before{
        top: 30%;
        width: 200px;
        height: 230px;
    }

	.why-choose-item h3{
        font-size: 18px;
    }

	.agency-social-item{
        margin: 15px 0 30px 15px;
    }

	.agency-social-item .icon-box{
        top: -15px;
        left: -15px;
    }

	.agency-social-item .icon-box a{
        width: 50px;
        height: 50px;
    }

	.agency-social-item .icon-box i{
        font-size: 20px;
    }

	.agency-social-content h3{
        font-size: 18px;
    }

	.how-it-work::before{
        width: 180px;
        height: 220px;
    }

	.work-process-header{
        margin-bottom: 20px;
    }

	.work-process-title h3{
        font-size: 18px;
    }

	.work-process-content{
        margin-bottom: 30px;
    }

	.work-process-body{
        padding-top: 20px;
    }

	.work-process-no h3{
        font-size: 18px;
    }

	.work-process-no h2{
        font-size: 28px;
    }

	.our-features::before{
		right: -70px;
		top: 13%;
		width: 150px;
		height: 135px;
	}

	.digital-features-item.features-item-2,
	.digital-features-item.features-item-1{
		width: 100%;
	}

	.digital-features-item.features-item-1 .digital-features-image img{
        aspect-ratio: 1 / 0.72;
    }

	.digital-features-item{
        padding: 20px;
    }

	.digital-features-image{
        margin-bottom: 20px;
    }

	.digital-features-content h3{
		font-size: 18px;
	}

	.agency-supports-header{
		display: block;
	}

	.agency-supports-content,
	.agency-free-consultation{
        width: 100%;
    }

	.agency-supports-content h3{
        font-size: 18px;
    }

	.agency-free-consultation{
		text-align: left;
		margin-top: 20px;
	}

	.agency-supports-slider::before{
		background: linear-gradient(280deg, #030709 0%, rgba(3, 7, 9, 0) 60.97%);
		width: 150px;
	}

	.agency-supports-slider::after{
		background: linear-gradient(90deg, #030709 0%, rgba(3, 7, 9, 0) 60.97%);
		width: 150px;
	}

	.project-btn a{
        width: 60px;
        height: 60px;
    }

	.project-btn a img{
        max-width: 26px;
    }

	.project-content h3{
        font-size: 18px;
    }

	.testimonial-review-box{
        padding: 20px;
    }

	.testimonial-review-header h2{
        font-size: 40px;
    }

	.testimonial-review-content h3{
        font-size: 18px;
    }

	.testimonial-company-logo,
	.testimonial-rating{
		margin-bottom: 15px;
	}

	.testimonial-content p{
        font-size: 18px;
    }

	.author-content h3{
        font-size: 18px;
    }

	.testimonial-btn{
		position: relative;
		justify-content: center;
		margin-top: 30px;
	}

	.testimonial-slider .testimonial-button-next,
	.testimonial-slider .testimonial-button-prev{
        width: 45px;
        height: 45px;
    }

	.testimonial-benefits-box{
		gap: 30px;
		padding: 30px 20px;
	}

	.testimonial-benefits-item{
        width: 100%;
    }

	.testimonial-benefits-item::before{
		top: auto;
		bottom: -15px;
		right: 0;
		border-right: none;
		border-bottom: 1px solid var(--divider-color);
		width: 100%;
		height: 1px;
		z-index: 1;
	}

	.testimonial-benefits-item:last-child:before{
		display: none;
	}

	.testimonial-benefits-content h3{
        font-size: 18px;
		margin-bottom: 10px;
    }

	.benefits-steps-item .icon-box,
	.benefits-steps-no{
        margin-bottom: 20px;
    }

	.benefits-steps-no h3{
		font-size: 18px;
	}

	.benefits-steps-content h3{
        font-size: 18px;
    }

	.post-item-content h3{
		font-size: 18px;
	}

	.footer-work-together::before{
		left: -90px;
        width: 180px;
        height: 190px;
    }

	.footer-work-together h3{
        font-size: 18px;
    }

	.footer-work-together h2{
        font-size: 55px;
    }

	.work-together-btn{
		top: 56%;
	}

	.footer-work-together .work-together-btn a{
        width: 85px;
        height: 85px;
    }

	.footer-work-together .work-together-btn a span{
		font-size: 12px;
	}

	.about-footer{
		margin-bottom: 30px;
	}

	.footer-contact-content p{
        font-size: 18px;
    }

	.footer-logo{
        margin-bottom: 30px;
    }

	.footer-newsletter-form h3,
	.footer-links h3{
        font-size: 18px;
        margin-bottom: 15px;
    }

	.footer-newsletter-form .form-group .form-control{
        width: 57%;
    }

	.footer-copyright{
        padding: 20px 0;
        margin-top: 30px;
    }

	.page-header-box h1{
		font-size: 34px;
	}

	.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-content span{
		font-size: 18px;
	}

	.our-scrolling-ticker.subpages-scrolling-ticker .scrolling-content span img{
		max-width: 16px;
	}

	.mission-vision-item{
        padding: 20px;
    }

	.mission-vision-item .mission-vision-content h3{
		font-size: 18px;
	}

	.experts-rating-video-image{
		width: 100%;
		margin-bottom: 20px;
	}

	.who-we-are-client{
		width: 100%;
		padding-left: 0px;
	}

	.experts-counter-box{
        width: 100%;
        gap: 30px;
    }

	.experts-counter-box:nth-child(even){
        margin-top: 0px;
    }

	.experts-counter-item{
		padding: 20px;
	}

	.experts-counter-box.expert-box-2 .experts-counter-item:nth-child(odd){
		background: url(../images/who-we-are-counter-bg.png);
	}

	.experts-counter-box.expert-box-2 .experts-counter-item:nth-child(even){
		background: transparent;
	}

	.experts-counter-content h2{
        font-size: 30px;
    }

	.executive-partners-box{
        padding: 30px;
    }

	.our-partners-list{
		gap: 20px;
	}

	.our-partners-list .company-logo{
		width: calc(50% - 10px);
		padding: 15px;
	}

	.faq-images{
        max-width: 100%;
        padding: 80px 50px 0 0;
    }

    .faq-img-1 img{
        max-width: 185px;
    }

    .faq-cta-box a{
        font-size: 14px;
        padding: 8px 15px;
    }

    .our-faq-section .accordion-item{
        margin-bottom: 20px;
    }

    .our-faq-section .accordion-header .accordion-button{
        font-size: 18px;
        padding: 12px 40px 12px 12px;
    }

    .our-faq-section .accordion-item .accordion-button::after,
    .our-faq-section .accordion-item .accordion-button.collapsed::after{
        right: 12px;
        font-size: 12px;
        width: 20px;
        height: 20px;
    }

    .our-faq-section .accordion-item .accordion-body{
        padding: 0 12px 12px 12px;
    }

	.page-service-single::before{
        width: 250px;
        height: 280px;
    }

	.page-service-single::after{
        width: 250px;
        height: 280px;
    }

	.service-feature-image img{
        aspect-ratio: 1 / 0.78;
    }

    .service-entry h2{
        font-size: 30px;
    }

    .service-entry-list-image{
        gap: 30px;
    }

    .service-entry-list,
    .service-entry-image{
        width: 100%;
    }

    .service-entry-list ul li{
        font-size: 14px;
		padding-left: 20px;
    }

	.service-entry-list ul li::before{
        font-size: 14px;
    }

    .service-entry-image img{
        aspect-ratio: 1 / 0.68;
        object-position: top center;
    }

    .service-process-steps{
        gap: 20px;
        margin: 0;
    }

    .process-step-item{
        gap: 20px;
    }

    .process-step-content,
    .process-step-image{
        width: 100%;
    }

    .process-step-content{
        padding: 20px;
    }

    .process-step-header{
        margin-bottom: 50px;
    }

    .process-step-header .icon-box img{
        max-width: 36px;
    }

    .process-step-no h3{
        font-size: 18px;
    }

    .process-step-body h3{
        font-size: 18px;
        margin-bottom: 15px;
    }

    .process-step-image img{
        aspect-ratio: 1 / 0.72;
    }

    .service-catagery-list{
        margin-bottom: 30px;
    }

    .service-catagery-list h3{
        font-size: 18px;
        padding: 20px;
    }

    .service-catagery-list ul{
        padding: 20px;
    }

	.service-catagery-list ul li{
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

    .service-catagery-list ul li a::before{
        width: 22px;
        height: 22px;
    }
    
    .sidebar-cta-box{
        padding: 20px;
    }

    .sidebar-cta-box .icon-box{
        margin-bottom: 25px;
    }

    .sidebar-cta-box .icon-box img{
        max-width: 40px;
    }

    .cta-contact-content h3{
        font-size: 18px;
    }

    .cta-contact-btn a{
        padding: 10px 25px;
    }

    .cta-contact-btn a img{
        max-width: 22px;
        margin-right: 10px;
    }

	.page-blog::before{
        width: 250px;
        height: 280px;
    }

	.post-image figure,
	.post-image img{
		aspect-ratio: 1 / 0.70;
	}

	.post-entry blockquote{
		background-position: 20px 20px;
        padding: 70px 20px 20px 20px;
	}
	
	.post-entry h2{
		font-size: 28px;
	}

	.tag-links{
		font-size: 20px;
	}

	.page-project::before{
        width: 250px;
        height: 280px;
    }

	.page-project-single::before{
		width: 210px;
        height: 220px;
    }

	.page-project-single::after{
		top: 53%;
        width: 200px;
        height: 230px;
    }

	.project-single-content{
        margin-bottom: 20px;
    }

    .project-single-content img{
        aspect-ratio: 1 / 0.67;
    }

    .project-entry h2{
        font-size: 30px;
    }

    .project-entry ul li{
        font-size: 14px;
        margin-bottom: 10px;
    }

    .project-solution-rating{
        gap: 15px;
    }

    .project-rating-counter .icon-box i{
        font-size: 36px;
    }

    .project-counter-content{
        width: calc(100% - 56px);
    }

    .project-counter-content h3{
        font-size: 28px;
    }

    .project-rating-content,
    .project-rating-counter{
        width: 100%;
    }

    .category-item-list{
        padding: 20px;
    }

    .category-list-item{
        padding-bottom: 15px;
        margin-bottom: 15px;
    }

    .category-list-item h3{
        font-size: 18px;
    }

    .category-social-link{
        padding: 20px;
    }

	.category-social-link span{
		font-size: 20px;
	}

	.page-team::before{
        width: 180px;
        height: 190px;
    }

	.page-team-single::before{
		width: 200px;
        height: 230px;
    }

	.team-info-box{
        margin-bottom: 30px;
    }

    .team-info-header{
        margin-bottom: 30px;
        gap: 10px;
    }

    .team-info-title,
    .team-info-social-list{
        width: 100%;
    }

	.team-info-social-list ul{
		text-align: left;
	}

    .team-single-content p{
        margin-bottom: 15px;
    }

    .team-single-content h2{
        font-size: 30px;
    }

    .team-contact-box{
        padding-bottom: 15px;
        margin-bottom: 15px;
    }

	.team-contact-box .icon-box{
		margin-right: 20px;
	}

    .team-contact-content{
        width: calc(100% - 85px);
    }

    .team-contact-content h3{
        font-size: 18px;
    }

    .team-personal-info{
        margin-bottom: 30px;
    }

    .team-career-list ul{
        gap: 10px;
    }

    .team-career-list ul li{
        width: 100%;
		padding-left: 25px;
    }

    .team-career-list ul li::before{
        font-size: 16px;
    }

    .team-single-image{
        margin-bottom: 25px;
    }

    .team-single-image img{
        aspect-ratio: 1 / 1.08;
    }

    .team-single-contact-form h3{
        font-size: 30px;
        padding: 20px;
    }

    .team-single-contact-form form{
        padding: 20px;
    }

	.pricing-box{
        width: 100%;
        padding: 20px;
    }

    .pricing-box-content{
        margin-bottom: 20px;
        padding-bottom: 20px;
    }

    .pricing-title h3{
        font-size: 22px;
    }

    .pricing-price h2{
        font-size: 30px;
    }

    .pricing-price h2 sup{
        font-size: 16px;
	}

	.pricing-list ul li{
		padding-left: 25px;
	}

    .pricing-list ul li::before{
        font-size: 16px;
    }

	.testimonial-box-item{
        padding: 20px 15px;
        gap: 20px;
        text-align: center;
    }

    .client-author-image{
        width: 100%;
        max-width: 120px;
        margin: 0 auto;
    }

    .client-testimonial-content{
        width: 100%;
    }

    .client-testimonial-info p{
        font-size: 16px;
    }

    .client-author-content{
        gap: 15px;
    }

    .client-author-title,
    .client-author-logo{
        width: 100%;
        text-align: center;
    }

    .client-author-title h3{
        font-size: 18px;
    }

	.page-faq-accordion{
        margin-bottom: 30px;
    }

    .faq-catagery-list{
        margin-bottom: 30px;
    }

	.faq-catagery-list ul{
        padding: 20px;
    }

	.contact-info-box .info-box-1,
    .contact-info-box .info-box-2{
        padding: 20px;
        gap: 40px;
    }

    .contact-info-box .info-box-1 .contact-info-item::before{
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 20px);
		height: 1px;
		width: 100%;
    }

	.contact-info-box .info-box-1 .contact-info-item:nth-child(2n + 2):before{
		display: block;
	}

	.contact-info-box .info-box-1 .contact-info-item:last-child:before{
		display: none;
	}

    .contact-info-box .info-box-1 .contact-info-item{
        display: flex;
        width: 100%;
    }

    .contact-info-item .icon-box img{
        max-width: 32px;
    }

    .contact-info-box .info-box-1 .icon-box,
    .contact-info-box .info-box-2 .icon-box{
        margin: 0 25px 0 0;
    }

    .contact-info-box .info-box-1 .contact-item-content,
    .contact-info-box .info-box-2 .contact-item-content{
        width: calc(100% - 57px);
        text-align: left;
    }

    .contact-item-content h3{
        font-size: 18px;
    }

    .contact-us-form{
        padding: 20px;
    }

    .google-map-iframe,
    .google-map-iframe iframe{
        height: 350px;
    }
}
.apx-slider-wrapper {
    position: relative;
    height: 100vh;
    overflow: hidden;
}

.apx-slider-container {
    position: relative;
    width: 100vw;
    height: 100vh;
}

/* Smooth Slides Transitions */
.apx-slide {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease-in-out, visibility 0.8s ease-in-out;
    overflow: hidden;
}

.apx-slide.apx-active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

/* When slide becomes active, animate background with smooth parallax flow */
.apx-slide.apx-active .apx-slide-background {
    animation: parallaxFlowIn 2s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

/* When slide exits, animate background out smoothly */
.apx-slide.apx-exiting .apx-slide-background {
    animation: parallaxFlowOut 2s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.apx-slide.apx-active .apx-slide-content > * {
    animation: apxFadeInUp 1s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.apx-slide.apx-active .apx-slide-subtitle {
    animation-delay: 0.5s;
}

.apx-slide.apx-active .apx-slide-title {
    animation-delay: 0.7s;
}

.apx-slide.apx-active .apx-slide-description {
    animation-delay: 0.9s;
}

/* Background layer - Ultra smooth multi-layer parallax effect */
.apx-slide-background {
    position: absolute;
    width: 120%;
    height: 120%;
    left: -10%;
    top: -10%;
    background-size: cover;
    background-position: center;
    transition: transform 0.3s cubic-bezier(0.19, 1, 0.22, 1);
    transform: translateY(10%) scale(1.15);
    will-change: transform;
}

/* Add overlay layers for depth effect */
.apx-slide-background::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.3) 100%);
    z-index: 1;
    transition: opacity 0.5s ease;
}

/* Ultra smooth parallax flow animation - slower and more fluid */
@keyframes parallaxFlowIn {
    0% {
        transform: translateY(10%) scale(1.15);
        opacity: 0.5;
    }
    50% {
        transform: translateY(5%) scale(1.08);
        opacity: 0.8;
    }
    100% {
        transform: translateY(0%) scale(1);
        opacity: 1;
    }
}

@keyframes parallaxFlowOut {
    0% {
        transform: translateY(0%) scale(1);
        opacity: 1;
    }
    50% {
        transform: translateY(-5%) scale(0.95);
        opacity: 0.5;
    }
    100% {
        transform: translateY(-10%) scale(0.9);
        opacity: 0;
    }
}

/* Parallax images */
.apx-parallax-container {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.apx-parallax-image {
    position: absolute;
    transition: transform 0.3s cubic-bezier(0.19, 1, 0.22, 1);
    will-change: transform;
    opacity: 0;
    transform: translateY(15%) scale(0.9);
}

/* Animate parallax images when slide is active - ultra smooth */
.apx-slide.apx-active .apx-parallax-image {
    animation: parallaxImageFlow 1.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.apx-slide.apx-active .apx-parallax-image:nth-child(1) {
    animation-delay: 0.4s;
}

.apx-slide.apx-active .apx-parallax-image:nth-child(2) {
    animation-delay: 0.6s;
}

.apx-slide.apx-active .apx-parallax-image:nth-child(3) {
    animation-delay: 0.8s;
}

/* Ultra smooth parallax image flow animation */
@keyframes parallaxImageFlow {
    0% {
        opacity: 0;
        transform: translateY(15%) scale(0.9);
    }
    50% {
        opacity: 0.6;
        transform: translateY(8%) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0%) scale(1);
    }
}

/* Slide Content */
.apx-slide-content {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 50px;
    z-index: 10;
}

.apx-slide-subtitle {
    font-size: 11px;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 15px;
    opacity: 0;
    transform: translateY(40px);
    font-weight: 500;
    text-shadow: 2px 2px 4px #00000073;
}

.apx-slide-title {
    font-size: clamp(60px, 12vw, 90px);
    font-weight: 700;
    color: white;
    line-height: 0.95;
    margin-bottom: 0;
    opacity: 0;
    transform: translateY(40px);
    text-shadow: 2px 2px 4px #00000073;
}

.apx-slide-title-line {
    display: block;
}

/* Description Box */
.apx-slide-description {
    max-width: 380px;
    opacity: 0;
    transform: translateY(40px);
}

.apx-slide-description p {
    color: rgba(255, 255, 255, 0.95);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 25px;
    font-weight: 300;
    text-shadow: 2px 2px 4px #00000073;
}

.apx-btn-more {
    display: inline-block;
    color: white;
    text-decoration: none;
    text-transform: capitalize;
    letter-spacing: 1px;
    font-size: 13px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
    padding-bottom: 3px;
    transition: all 0.3s;
    cursor: pointer;
}

.apx-btn-more:hover {
    opacity: 0.7;
    transform: translateX(5px);
}

/* Footer Navigation */
.apx-footer-nav {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 35px 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
}

.apx-slide-counter {
    color: rgba(255, 255, 255, 0.8);
    font-size: 13px;
    letter-spacing: 1px;
    font-weight: 300;
}

.apx-social-links {
    display: flex;
    gap: 20px;
    align-items: center;
}

.apx-social-links a {
    color: rgba(255, 255, 255, 0.7);
    font-size: 15px;
    transition: all 0.3s;
    text-decoration: none;
}

.apx-social-links a:hover {
    color: white;
    transform: translateY(-2px);
}

.apx-slider-controls {
    display: flex;
    gap: 12px;
    align-items: center;
}

.apx-control-btn {
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    background: transparent;
    color: white;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.apx-control-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: white;
    transform: scale(1.05);
}

.apx-contact-link {
    color: white;
    text-transform: lowercase;
    letter-spacing: 1px;
    font-size: 12px;
    cursor: pointer;
    transition: opacity 0.3s;
    text-decoration: none;
}

.apx-contact-link:hover {
    opacity: 0.7;
}

/* Animations */
@keyframes apxFadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Slide-specific backgrounds - Beautiful gradients with images */
#apxSlide1 .apx-slide-background {
    background: linear-gradient(135deg, rgb(0 0 0 / 23%) 0%, rgb(63 2 10 / 0%) 100%), url(../images/840820_1234.jpg) center / cover;
}

#apxSlide2 .apx-slide-background {
    background: linear-gradient(180deg, rgb(255 255 255 / 0%) 0%, rgba(255, 255, 255, 1) 50%, rgb(113 0 0 / 5%) 100%), url(../images/3824501_106.jpg) center / cover;
}

#apxSlide3 .apx-slide-background {
    background: linear-gradient(135deg, rgb(0 0 0 / 23%) 0%, rgb(63 2 10 / 0%) 100%), url(../images/4328338_1136.jpg) center / cover;
}

#apxSlide4 .apx-slide-background {
    background: linear-gradient(180deg, rgb(255 255 255 / 23%) 0%, rgba(255, 255, 255, 1) 50%, rgb(113 0 0 / 12%) 100%), url(../images/6938855_3449860.jpg) center / cover;
}

#apxSlide5 .apx-slide-background {
    background: linear-gradient(135deg, rgb(0 0 0 / 23%) 0%, rgb(63 2 10 / 0%) 100%), url(../images/19335179_6090732.jpg) center / cover;
}

/* Beautiful Parallax Images - Use your own images */
.apx-car-cloud {
    width: 600px;
    height: 400px;
    right: 5%;
    top: 25%;
    background: url('../images/branding.jpg') center/contain no-repeat;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}

.apx-pink-clouds {
    width: 500px;
    height: 600px;
    right: 5%;
    bottom: 12%;
    background: url('../images/ecommerce.jpg') center/contain no-repeat;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}

.apx-pink-clouds-ui {
    width: 500px;
    height: 600px;
    right: 5%;
    bottom: 12%;
    background: url('../images/webdev.jpg') center/contain no-repeat;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}
.apx-ufos {
    width: 600px;
    height: 520px;
    right: 10%;
    top: 25%;
    background: url('../images/social.jpg') center/contain no-repeat;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}

.apx-person-field {
    width: 600px;
    height: 550px;
    right: 8%;
    bottom: 15%;
    background: url('../images/print.jpg') center/contain no-repeat;
    filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}

/* Content Section After Slides */
.apx-content-section {
    background: #f8f9fa;
    padding: 100px 50px;
    min-height: 100vh;
    position: relative;
}

.apx-content-section h2 {
    font-size: 60px;
    text-align: center;
    margin-bottom: 20px;
    font-weight: 700;
    line-height: 1.2;
}

.apx-content-section h2 .apx-gradient-text {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 50%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-style: italic;
}

.apx-content-section h2 .apx-dark-text {
    color: #1a1a2e;
}

.apx-content-section .apx-subtitle {
    text-align: center;
    color: #666;
    font-size: 18px;
    margin-bottom: 80px;
}

.apx-features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 50px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.apx-feature-card {
    text-align: center;
    padding: 40px 30px;
}

.apx-feature-card i {
    font-size: 48px;
    color: #f5576c;
    margin-bottom: 25px;
}

.apx-feature-card h3 {
    font-size: 22px;
    color: #1a1a2e;
    margin-bottom: 15px;
    font-weight: 600;
}

.apx-feature-card p {
    color: #666;
    font-size: 15px;
    line-height: 1.7;
}
/* Smooth background zoom effect when slide is active */
.apx-slide.apx-active .apx-slide-background {
    animation: backgroundZoom 20s ease-in-out infinite;
}
@keyframes backgroundZoom {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

.our-services .section-title h3 {
	color: #000;
}
.our-services .section-title h2 {
	color: #000;
}
.our-services .section-title-content p {
	color: #000;
}
.our-services .btn-default {
	background: #000;
}
.service-footer p {
	color: #000;
}
.digital-success .section-title h2 span {
	color: #3666AF;
}
.join-agency .section-title h2 span {
	color: #3666AF;
}
.join-agency .section-title h3::before {
	background: url(../images/icon-sub-accent-heading-blue.svg) no-repeat;
}










/* ── Hero shell (overrides dark .hero) ── */
.hero.hero-light {
  background: var(--hero-bg);
  padding: 140px 0 90px;
  min-height: 100vh;
}
 
/* Remove the dark video bg if present */
.hero.hero-light .hero-bg-video { display: none; }
 
/* ── Canvas / animation layer ── */
.hl-canvas {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}
 
/* Glow blobs */
.hl-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  animation: hlBlobDrift 14s ease-in-out infinite alternate;
}
.hl-blob--a {
  width: 560px; height: 560px;
  background: radial-gradient(circle, rgba(105,191,98,0.2), transparent 70%);
  top: -150px; left: -100px;
}
.hl-blob--b {
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(37,99,235,0.1), transparent 70%);
  bottom: -80px; right: 8%;
  animation-duration: 11s;
  animation-delay: -5s;
}
.hl-blob--c {
  width: 280px; height: 280px;
  background: radial-gradient(circle, rgba(105,191,98,0.12), transparent 70%);
  top: 40%; right: 25%;
  animation-duration: 17s;
  animation-delay: -8s;
}
@keyframes hlBlobDrift {
  from { transform: translate(0,0) scale(1); }
  to   { transform: translate(30px,22px) scale(1.06); }
}
 
/* Dot grid */
.hl-grid {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(105,191,98,0.3) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 20%, transparent 100%);
}
 
/* Orbital rings */
.hl-rings {
  position: absolute;
  right: -80px; top: 50%;
  transform: translateY(-50%);
  width: 680px; height: 680px;
}
.hl-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid transparent;
  transform: scale(var(--rs)) rotate(var(--ra));
  animation: hlRingRotate var(--rd) linear infinite;
  animation-direction: var(--rdir, normal);
}
.hl-ring::before {
  content: '';
  position: absolute;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: var(--accent-color);
  box-shadow: 0 0 0 3px rgba(105,191,98,0.2);
  top: -5px; left: 50%;
  transform: translateX(-50%);
}
.hl-ring:nth-child(1) { --rs:1;    --ra:0deg;   --rd:22s; --rdir:normal;  border-color:rgba(105,191,98,0.2); }
.hl-ring:nth-child(2) { --rs:0.76; --ra:50deg;  --rd:15s; --rdir:reverse; border-color:rgba(37,99,235,0.15); }
.hl-ring:nth-child(2)::before { background:#4d94ff; box-shadow:0 0 0 3px rgba(37,99,235,0.15); }
.hl-ring:nth-child(3) { --rs:0.54; --ra:22deg;  --rd:10s; --rdir:normal;  border-color:rgba(105,191,98,0.18); }
.hl-ring:nth-child(3)::before { background:#00c9a7; box-shadow:0 0 0 3px rgba(0,201,167,0.15); }
.hl-ring:nth-child(4) { --rs:1.16; --ra:-25deg; --rd:32s; --rdir:reverse; border-color:rgba(105,191,98,0.07); }
.hl-ring:nth-child(4)::before { display:none; }
@keyframes hlRingRotate { to { transform: scale(var(--rs)) rotate(calc(var(--ra) + 360deg)); } }
 
/* Particles */
.hl-particles { position: absolute; inset: 0; }
.hl-particle {
  position: absolute;
  width: var(--ps, 3px); height: var(--ps, 3px);
  border-radius: 50%;
  background: var(--accent-color);
  opacity: 0;
  animation: hlParticleFloat var(--pd, 8s) ease-in-out var(--pdelay, 0s) infinite;
}
@keyframes hlParticleFloat {
  0%   { transform:translate(0,0) scale(0);  opacity:0; }
  20%  { opacity:0.55; }
  80%  { opacity:0.28; }
  100% { transform:translate(var(--px,40px),var(--py,-120px)) scale(0); opacity:0; }
}
.hl-particle:nth-child(1)  { left:12%; top:70%; --px:30px;  --py:-140px; --pd:9s;  --pdelay:0s;   --ps:3px; }
.hl-particle:nth-child(2)  { left:22%; top:60%; --px:-20px; --py:-100px; --pd:7s;  --pdelay:1s;   --ps:4px; }
.hl-particle:nth-child(3)  { left:35%; top:80%; --px:50px;  --py:-160px; --pd:11s; --pdelay:2s;   --ps:3px; }
.hl-particle:nth-child(4)  { left:55%; top:75%; --px:-30px; --py:-130px; --pd:8s;  --pdelay:0.5s; --ps:5px; }
.hl-particle:nth-child(5)  { left:65%; top:55%; --px:20px;  --py:-80px;  --pd:6s;  --pdelay:3s;   --ps:3px; }
.hl-particle:nth-child(6)  { left:78%; top:85%; --px:-40px; --py:-150px; --pd:10s; --pdelay:1.5s; --ps:4px; }
.hl-particle:nth-child(7)  { left:8%;  top:40%; --px:60px;  --py:-110px; --pd:12s; --pdelay:4s;   --ps:3px; }
.hl-particle:nth-child(8)  { left:45%; top:50%; --px:-15px; --py:-90px;  --pd:7s;  --pdelay:2.5s; --ps:4px; }
.hl-particle:nth-child(9)  { left:90%; top:30%; --px:-50px; --py:-70px;  --pd:9s;  --pdelay:0.8s; --ps:3px; background:#4d94ff; }
.hl-particle:nth-child(10) { left:30%; top:20%; --px:25px;  --py:-120px; --pd:8s;  --pdelay:3.5s; --ps:4px; background:#00c9a7; }
 
/* Sweeping lines */
.hl-lines { position:absolute; inset:0; overflow:hidden; }
.hl-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(105,191,98,0.4), transparent);
  animation: hlLineSweep var(--ld,7s) ease-in-out var(--ldelay,0s) infinite;
  opacity: 0;
}
.hl-line:nth-child(1) { width:40%; top:22%; left:-40%; --ld:7s;  --ldelay:0s; }
.hl-line:nth-child(2) { width:30%; top:50%; left:-30%; --ld:9s;  --ldelay:2s; background:linear-gradient(90deg,transparent,rgba(37,99,235,0.25),transparent); }
.hl-line:nth-child(3) { width:50%; top:73%; left:-50%; --ld:6s;  --ldelay:4s; }
@keyframes hlLineSweep {
  0%   { transform:translateX(0);    opacity:0; }
  10%  { opacity:1; }
  90%  { opacity:0.5; }
  100% { transform:translateX(250vw); opacity:0; }
}
 
/* Spinning dashed shapes */
.hl-shape {
  position: absolute;
  border: 1.5px dashed rgba(105,191,98,0.22);
  animation: hlShapeSpin var(--ss,20s) linear infinite;
  animation-direction: var(--sdir,normal);
}
.hl-shape--1 { width:80px; height:80px; border-radius:50%; top:18%; left:4%; --ss:24s; }
.hl-shape--2 { width:52px; height:52px; border-radius:50%; top:62%; left:6%; --ss:17s; --sdir:reverse; }
.hl-shape--3 { width:60px; height:60px; border-radius:0; bottom:22%; right:4%; --ss:21s; border-color:rgba(37,99,235,0.18); }
@keyframes hlShapeSpin { to { transform:rotate(360deg); } }
 
/* ── Content ── */
.hero.hero-light .hero-content { z-index: 1; }
 
/* Label pill — reuse your section-title h3 style but as a badge */
.hl-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--hero-border);
  background: rgb(33 53 101);
  border-radius: 100px;
  padding: 5px 16px 5px 8px;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #ffffffde;
  margin-bottom: 15px;
  animation: hlFadeUp 0.8s ease both;
}
.hl-badge__dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--accent-color);
  box-shadow: 0 0 0 3px rgba(105,191,98,0.25);
  animation: hlPulse 2s ease infinite;
      margin-top: -2px;
}
@keyframes hlPulse {
  0%,100% { transform:scale(1);   opacity:1; }
  50%      { transform:scale(1.6); opacity:0.35; }
}
 
/* Hero title — dark text on light bg */
.hero.hero-light .section-title h1 {
  font-size: clamp(2.4rem, 5vw, 4.6rem);
  font-weight: 300;
  color: var(--hero-navy);
  animation: hlFadeUp 0.8s 0.15s ease both;
}
.hero.hero-light .section-title h1 span {
  font-weight: 800;
  color: #1A1D50;
  position: relative;
  display: inline-block;
}
/* underline reveal on accent word */
.hero.hero-light .section-title h1 span::after {
  content: '';
  position: absolute;
  left: 0; bottom: 2px;
  width: 100%; height: 3px;
  background: linear-gradient(90deg, #1A1D50, #f3f3f3);
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: left;
  animation: hlLineReveal 0.7s 1.1s cubic-bezier(.22,1,.36,1) forwards;
}
@keyframes hlLineReveal { to { transform:scaleX(1); } }
 
/* Cycling sub-headline */
.hl-typed-wrap {
  display: inline-flex;
  gap: 10px;
  font-size: clamp(0.95rem, 1.8vw, 1.25rem);
  color: var(--hero-mid);
  margin-bottom: 6px;
  animation: hlFadeUp 0.8s 0.3s ease both;
}
.hl-typed-words {
  position: relative;
  height: 1.5em;
  overflow: hidden;
  display: inline-block;
  min-width: 220px;
}
.hl-typed-words span {
  position: absolute;
  top:0; left:0;
  white-space: nowrap;
  color: var(--hero-navy);
  font-weight: 700;
  animation: hlWordCycle 9s ease-in-out infinite;
  opacity: 0;
}
.hl-typed-words span:nth-child(1) { animation-delay:0s; }
.hl-typed-words span:nth-child(2) { animation-delay:3s; }
.hl-typed-words span:nth-child(3) { animation-delay:6s; }
@keyframes hlWordCycle {
  0%   { opacity:0; transform:translateY(60%) skewY(6deg); }
  8%   { opacity:1; transform:translateY(0)   skewY(0deg); }
  30%  { opacity:1; transform:translateY(0)   skewY(0deg); }
  38%  { opacity:0; transform:translateY(-60%) skewY(-6deg); }
  100% { opacity:0; }
}
 
/* Body copy */
.hero.hero-light .hero-video-content p {
  color: var(--hero-mid);
  animation: hlFadeUp 0.8s 0.45s ease both;
}
 
/* CTA row — reuse .btn-highlighted and .btn-default but style ghost variant */
.hero.hero-light .hero-btn {
  text-align: left;
  margin-top: 12px;
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  animation: hlFadeUp 0.8s 0.6s ease both;
}
 
/* Override btn-default for light theme */
.hero.hero-light .btn-default {
  background: var(--hero-navy);
  color: #fff;
  margin-right: 0;
}
.hero.hero-light .btn-default::after {
  background-color: var(--hero-navy);
}
 
/* Ghost video button */
.hl-btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1.5px solid rgba(13,27,42,0.15);
  color: var(--hero-navy);
  font-size: 0.9rem;
  font-weight: 600;
  padding: 13px 24px;
  border-radius: 100px;
  text-decoration: none;
  background: #fff;
  box-shadow: 0 2px 12px rgba(13,27,42,0.07);
  transition: border-color 0.3s, box-shadow 0.3s, color 0.3s;
}
.hl-btn-ghost:hover { border-color:var(--accent-color); color:var(--accent-color); box-shadow:0 4px 20px rgba(105,191,98,0.18); }
.hl-play-icon {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(105,191,98,0.1);
  border: 1.5px solid rgba(105,191,98,0.3);
  display: grid;
  place-items: center;
  font-size: 0.6rem;
  color: var(--accent-color);
  transition: background 0.3s, color 0.3s;
}
.hl-btn-ghost:hover .hl-play-icon { background:var(--accent-color); color:#fff; border-color:var(--accent-color); }
 
/* Stats row */
.hl-stats {
  display: flex;
  gap: 36px;
  flex-wrap: wrap;
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1.5px solid rgba(13,27,42,0.08);
  animation: hlFadeUp 0.8s 0.75s ease both;
}
.hl-stat__num {
  font-size: 2rem;
  font-weight: 800;
  color: var(--hero-navy);
  line-height: 1;
  letter-spacing: -0.03em;
}
.hl-stat__num span { color: var(--accent-color); }
.hl-stat__label {
  font-size: 0.72rem;
  color: var(--hero-mid);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-top: 4px;
}
 
/* ── Right analytics card ── */
.hl-visual {
  position: relative;
  z-index: 5;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-left: 40px;
  animation: hlFadeUp 0.8s 0.5s ease both;
}
.hl-card {
  position: relative;
  width: 408px;
  border: 1.5px solid rgba(13,27,42,0.08);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(13,27,42,0.1), 0 4px 16px rgba(105,191,98,0.08);
  padding: 28px;
  overflow: hidden;
}
/* top accent stripe */
.hl-card::after {
  content: '';
  position: absolute;
  top: 0; left: 38px;
  width: 68px; height: 3px;
  background: linear-gradient(90deg, var(--accent-color), #00c9a7);
  border-radius: 0 0 4px 4px;
}
.hl-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, rgba(105,191,98,0.04) 0%, transparent 50%);
  pointer-events: none;
  border-radius: 20px;
}
 
.hl-card__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(105,191,98,0.1);
  border: 1px solid rgba(105,191,98,0.22);
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 0.65rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--accent-color);
  font-weight: 700;
  margin-bottom: 18px;
}
.hl-card__badge-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--accent-color);
  animation: hlPulse 2s ease infinite;
}
.hl-card__title { font-size:1.05rem; font-weight:700; color:var(--hero-navy); margin-bottom:4px; }
.hl-card__sub   { font-size:0.76rem; color:var(--hero-mid); margin-bottom:20px; }
 
/* Bars */
.hl-bar-wrap { margin-bottom: 13px; }
.hl-bar-label {
  display: flex;
  justify-content: space-between;
  font-size: 0.72rem;
  color: var(--hero-mid);
  margin-bottom: 5px;
}
.hl-bar-label span { color:var(--hero-navy); font-weight:700; }
.hl-bar-track {
  height: 5px;
  background: rgba(13,27,42,0.07);
  border-radius: 4px;
  overflow: hidden;
}
.hl-bar-fill {
  height: 100%;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--accent-color), #00c9a7);
  transform: scaleX(0);
  transform-origin: left;
  animation: hlBarGrow 1.2s cubic-bezier(.22,1,.36,1) var(--bd,1s) forwards;
}
.hl-bar-fill--blue { background:linear-gradient(90deg,#2563eb,#60a5fa); }
@keyframes hlBarGrow { to { transform:scaleX(1); } }
 
.hl-card__divider { height:1px; background:rgba(13,27,42,0.07); margin:16px 0; }
 
.hl-card__metrics { display:flex; gap:14px; }
.hl-card__metric {
  flex:1;
  background: #f4f6fb;
  border: 1px solid rgba(13,27,42,0.07);
  border-radius: 12px;
  padding: 12px;
}
.hl-card__metric-val {
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--hero-navy);
  letter-spacing: -0.03em;
  line-height: 1;
}
.hl-card__metric-val em { font-style:normal; color:var(--accent-color); font-size:0.9em; }
.hl-card__metric-key {
  font-size: 0.65rem;
  color: var(--hero-mid);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-top: 4px;
}
 
/* Avatars */
.hl-avatars { display:flex; align-items:center; margin-top:18px; }
.hl-avatar {
  width: 32px; height: 32px;
  border-radius: 50%;
  border: 2.5px solid #fff;
  margin-right: -10px;
  display: grid;
  place-items: center;
  font-size: 0.55rem;
  font-weight: 800;
}
.hl-avatar:nth-child(1) { background:linear-gradient(135deg,#a7f3d0,#6ee7b7); color:#065f46; }
.hl-avatar:nth-child(2) { background:linear-gradient(135deg,#bfdbfe,#93c5fd); color:#1e3a8a; }
.hl-avatar:nth-child(3) { background:linear-gradient(135deg,#fde68a,#fcd34d); color:#92400e; }
.hl-avatars__label { margin-left:22px; font-size:0.72rem; color:var(--hero-mid); }
.hl-avatars__label strong { color:var(--hero-navy); }
 
/* ── Ticker (reuse your existing ticker style) ── */
.hl-ticker {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  background: rgba(105,191,98,0.07);
  border-top: 1.5px solid var(--hero-border);
  overflow: hidden;
  height: 46px;
  display: flex;
  align-items: center;
  z-index: 10;
}
.hl-ticker__track {
  display: flex;
  white-space: nowrap;
  animation: hlTickerScroll 28s linear infinite;
}
.hl-ticker__track:hover { animation-play-state:paused; }
.hl-ticker__item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 30px;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--hero-mid);
  font-weight: 600;
}
.hl-ticker__item::before {
  content: '';
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--accent-color);
  flex-shrink: 0;
}
@keyframes hlTickerScroll {
  from { transform:translateX(0); }
  to   { transform:translateX(-50%); }
}
 
/* ── Shared entrance ── */
@keyframes hlFadeUp {
  from { opacity:0; transform:translateY(24px); }
  to   { opacity:1; transform:translateY(0); }
}
 
/* ── Responsive ── */
@media (max-width:991px) {
  .hl-rings   { display:none; }
  .hl-visual  { padding-left:0; margin-top:48px; justify-content:center; }
  .hl-card    { width:100%; max-width:380px; }
}
@media (max-width:767px) {
  .hero.hero-light .hero-btn { justify-content:center; }
  .hl-stats  { justify-content:center; }
  .hl-typed-wrap { flex-wrap:wrap; justify-content:center; }
  .hl-badge  { display:none; }
}
@media (max-width:576px) {
  .hl-stats  { gap:20px; }
  .hero.hero-light .hero-btn { flex-direction:column; align-items:center; }
}

/* ══════════════════════════════════════════════
   TOKENS
══════════════════════════════════════════════ */
.our-services {
    --s-bg:       #f4f6fb;
    --s-white:    #ffffff;
    --s-navy:     #0d1b2a;
    --s-mid:      #334155;
    --s-muted:    #64748b;
    --s-faint:    #94a3b8;
    --s-green:    #3db84a;
    --s-green-l:  rgba(61,184,74,0.12);
    --s-green-b:  rgba(61,184,74,0.22);
    --s-teal:     #00b896;
    --s-blue:     #2563eb;
    --s-blue-l:   rgba(37,99,235,0.1);
    --s-line:     rgba(13,27,42,0.07);
    --s-sh:       0 2px 16px rgba(13,27,42,0.06);
    --s-sh-h:     0 20px 50px rgba(13,27,42,0.11), 0 0 0 1.5px rgba(61,184,74,0.3);
}
 
/* ══════════════════════════════════════════════
   SHELL
══════════════════════════════════════════════ */
.our-services {
    position: relative;
    padding: 110px 0 90px;
    overflow: hidden;
}
 
/* Soft radial blobs — very subtle on light */
.our-services > .s-blobs {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}
.s-blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(70px);
    animation: sBlobDrift var(--bd,18s) ease-in-out infinite alternate;
}
.s-blob--1 { width:480px;height:480px; top:-120px; right:-80px;  background:rgba(61,184,74,0.07);  --bd:20s; }
.s-blob--2 { width:360px;height:360px; bottom:-80px; left:-60px;  background:rgba(37,99,235,0.06);  --bd:15s; }
.s-blob--3 { width:280px;height:280px; top:40%;  left:40%;       background:rgba(0,184,150,0.05);  --bd:23s; }
@keyframes sBlobDrift {
    0%   { transform: translate(0, 0) scale(1); }
    50%  { transform: translate(30px, -20px) scale(1.06); }
    100% { transform: translate(-15px, 25px) scale(0.96); }
}
 
/* Fine dot-grid texture */
.our-services > .s-dotgrid {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(61,184,74,0.18) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
    pointer-events: none;
    z-index: 0;
}
 
/* ══════════════════════════════════════════════
   ANIMATED GEO CANVAS
══════════════════════════════════════════════ */
.s-geo {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    overflow: hidden;
}
 
/* Orbiting rings */
.s-ring {
    position: absolute;
    border-radius: 50%;
    animation: sRingSpin var(--rs,22s) linear infinite;
    animation-direction: var(--rsd,normal);
}
.s-ring::after {
    content:'';
    position:absolute;
    width:10px; height:10px;
    border-radius:50%;
    top:-5px; left:50%;
    transform:translateX(-50%);
    background: var(--rc, #3db84a);
    box-shadow: 0 0 0 3px rgba(61,184,74,0.15), 0 0 14px rgba(61,184,74,0.35);
}
.s-ring--a { width:500px;height:500px; top:-140px;right:-140px; border:1.5px solid rgba(61,184,74,0.1);  --rs:30s; }
.s-ring--b { width:330px;height:330px; top:-60px; right:-60px;  border:1px   solid rgba(37,99,235,0.09); --rs:20s; --rsd:reverse; --rc:#2563eb; }
.s-ring--b::after { background:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,0.12),0 0 12px rgba(37,99,235,0.3); }
.s-ring--c { width:190px;height:190px; top:5px;   right:5px;   border:1.5px solid rgba(0,184,150,0.12); --rs:13s; --rc:#00b896; }
.s-ring--c::after { background:#00b896; box-shadow:0 0 0 3px rgba(0,184,150,0.12),0 0 10px rgba(0,184,150,0.3); }
.s-ring--d { width:420px;height:420px; bottom:-150px;left:-130px; border:1px solid rgba(61,184,74,0.07); --rs:38s; --rsd:reverse; }
.s-ring--d::after { opacity:0.4; }
@keyframes sRingSpin { to { transform:rotate(360deg); } }
 
/* Floating particles */
.s-ptcl {
    position:absolute;
    border-radius:50%;
    opacity:0;
    animation:sPtclFloat var(--pt,9s) ease-in-out var(--pd,0s) infinite;
}
@keyframes sPtclFloat {
    0%   { transform:translate(0,0) scale(0);    opacity:0; }
    12%  { opacity:0.55; }
    88%  { opacity:0.2; }
    100% { transform:translate(var(--px,20px),var(--py,-110px)) scale(0); opacity:0; }
}
.s-ptcl:nth-child(5)  { width:3px;height:3px;left:12%;top:82%;--px:18px; --py:-120px;--pt:8s; --pd:0s;   background:var(--s-green);}
.s-ptcl:nth-child(6)  { width:4px;height:4px;left:26%;top:70%;--px:-14px;--py:-90px; --pt:11s;--pd:1.4s; background:var(--s-green);}
.s-ptcl:nth-child(7)  { width:3px;height:3px;left:43%;top:87%;--px:36px; --py:-145px;--pt:7s; --pd:2.8s; background:var(--s-teal);}
.s-ptcl:nth-child(8)  { width:4px;height:4px;left:60%;top:75%;--px:-22px;--py:-105px;--pt:10s;--pd:0.7s; background:var(--s-blue);}
.s-ptcl:nth-child(9)  { width:3px;height:3px;left:74%;top:65%;--px:12px; --py:-78px; --pt:6s; --pd:1.9s; background:var(--s-teal);}
.s-ptcl:nth-child(10) { width:3px;height:3px;left:88%;top:90%;--px:-30px;--py:-135px;--pt:9s; --pd:3.8s; background:var(--s-green);}
 
/* Sweeping horizontal lines */
.s-sweep {
    position:absolute;
    height:1px;
    opacity:0;
    animation:sSweepMove var(--sd,9s) ease-in-out var(--sdd,0s) infinite;
}
@keyframes sSweepMove {
    0%   { transform:translateX(0);      opacity:0; }
    7%   { opacity:1; }
    93%  { opacity:0.45; }
    100% { transform:translateX(290vw);  opacity:0; }
}
.s-sweep--1 { width:30%;top:25%;   left:-30%;background:linear-gradient(90deg,transparent,rgba(61,184,74,0.45),transparent);  --sd:10s;--sdd:0s; }
.s-sweep--2 { width:22%;top:55%;   left:-22%;background:linear-gradient(90deg,transparent,rgba(37,99,235,0.35),transparent);  --sd:12s;--sdd:3.5s; }
.s-sweep--3 { width:36%;bottom:20%;left:-36%;background:linear-gradient(90deg,transparent,rgba(0,184,150,0.35),transparent);  --sd:8.5s;--sdd:6.5s;}
 
/* Morphing blobs left side */
.s-morph {
    position:absolute;
    border:1.5px solid rgba(61,184,74,0.14);
    animation:sMorphSpin var(--ms,24s) linear infinite;
    animation-direction:var(--msd,normal);
}
.s-morph--1 { width:80px;height:80px;top:9%;   left:2%;   border-radius:30% 70% 70% 30%/30% 30% 70% 70%; --ms:28s; }
.s-morph--2 { width:50px;height:50px;top:17%;  left:5.5%; border-radius:50%; border-color:rgba(37,99,235,0.14); --ms:20s; --msd:reverse; }
.s-morph--3 { width:64px;height:64px;bottom:13%;left:3%;  border-radius:50% 50% 30% 70%/50% 70% 30% 50%; border-color:rgba(0,184,150,0.14); --ms:26s; }
@keyframes sMorphSpin { to { transform:rotate(360deg); } }
 
/* ══════════════════════════════════════════════
   CONTAINER Z
══════════════════════════════════════════════ */
.our-services .container { position:relative; z-index:2; }
 
/* ══════════════════════════════════════════════
   SECTION HEADER OVERRIDES
══════════════════════════════════════════════ */
.our-services .section-title h3         { color:#0f253b; }
.our-services .section-title h2         { color:var(--s-navy); font-weight:300; }
.our-services .section-title h2 span    { color:#1A1D50; font-weight:800; }
.our-services .section-title-content p  { color:var(--s-muted); }
.our-services .btn-default              { background:var(--s-navy); color:#fff; margin-right:0; border-radius:100px; }
.our-services .btn-default::after       { background:var(--s-navy); }
 
/* ══════════════════════════════════════════════
   STATS BAR
══════════════════════════════════════════════ */
.s-stats {
    display:flex;
    background:var(--s-white);
    border:1.5px solid var(--s-line);
    border-radius:16px;
    overflow:hidden;
    margin-bottom:56px;
    box-shadow: var(--s-sh);
}
.s-stat {
    flex:1;
    padding:24px 20px;
    text-align:center;
    border-right:1.5px solid var(--s-line);
    position:relative;
    overflow:hidden;
    transition:background .3s;
}
.s-stat:last-child { border-right:none; }
.s-stat:hover      { background:rgba(61,184,74,0.04); }
.s-stat::after {
    content:'';
    position:absolute;
    bottom:0; left:50%;
    transform:translateX(-50%);
    width:0; height:2.5px;
    background:linear-gradient(90deg,var(--s-green),var(--s-teal));
    border-radius:2px;
    transition:width .4s ease;
}
.s-stat:hover::after { width:48%; }
.s-stat__num {
    font-size:1.85rem;
    font-weight:800;
    color:var(--s-navy);
    line-height:1;
    letter-spacing:-0.03em;
}
.s-stat__num b { color:var(--s-green); font-weight:800; }
.s-stat__lbl {
    font-size:.65rem;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--s-faint);
    margin-top:5px;
}
 
/* ══════════════════════════════════════════════
   GRID
══════════════════════════════════════════════ */
.s-grid   { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.s-grid-2 { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:20px; }
 
/* ══════════════════════════════════════════════
   CARD BASE
══════════════════════════════════════════════ */
.s-card {
    position:relative;
    border-radius:20px;
    padding:32px 28px 28px;
    display:flex;
    flex-direction:column;
    background:linear-gradient(135deg, #d7e2ff 0%, #f8fbff 60%, #f4f6fb 100%);
    border:1.5px solid var(--s-line);
    box-shadow:var(--s-sh);
    overflow:hidden;
    cursor:pointer;
    transition:transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease, border-color .35s ease;
}
.s-card:hover {
    transform:translateY(-8px);
    box-shadow:var(--s-sh-h);
    border-color:rgba(61,184,74,0.3);
}
 
/* inner corner glow */
.s-card::before {
    content:'';
    position:absolute;
    top:-60px; left:-60px;
    width:180px; height:180px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(61,184,74,0.09),transparent 70%);
    opacity:0;
    transition:opacity .5s ease;
    pointer-events:none;
}
.s-card:hover::before { opacity:1; }
 
/* animated top bar */
.s-card__bar {
    position:absolute;
    top:0; left:0; right:0;
    height:2.5px;
    background:linear-gradient(90deg,transparent,var(--s-green),var(--s-teal),transparent);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .5s cubic-bezier(.22,1,.36,1);
    border-radius:2px 2px 0 0;
}
.s-card:hover .s-card__bar { transform:scaleX(1); }
 
/* pulsing status dot */
.s-card__dot {
    position:absolute;
    top:17px; right:17px;
    width:7px; height:7px;
    border-radius:50%;
    background:var(--s-green);
    animation:sDotPulse 3s ease infinite;
    animation-delay:var(--dd,0s);
}
@keyframes sDotPulse {
    0%,100% { box-shadow:0 0 0 0   rgba(61,184,74,.4); }
    50%      { box-shadow:0 0 0 8px rgba(61,184,74,0); }
}
 
/* ── head ── */
.s-card__head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:26px;
}
 
/* icon box */
.s-card__icon {
    width:80px; height:80px;
    border-radius:14px;
    display:flex; align-items:center; justify-content:center;
    background:radial-gradient(circle, rgb(0 0 0) 0%, #0c0e35 50%, #070816 100%);
    border:1.5px solid rgba(61,184,74,.2);
    position:relative; overflow:hidden;
    transition:background .3s, box-shadow .3s, border-color .3s;
}
.s-card:hover .s-card__icon {
    background:radial-gradient(circle, rgb(0 0 0) 0%, #0c0e35 50%, #070816 100%);
    box-shadow:0 4px 18px rgba(61,184,74,.2);
    border-color:rgba(61,184,74,.4);
}
.s-card__icon img { max-width:60px; position:relative; z-index:1; }
.s-card__icon::after {
    content:'';
    position:absolute;
    top:-50%; left:-60%;
    width:40%; height:200%;
    background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);
    transform:skewX(-20deg);
    opacity:0;
    transition:left .45s ease, opacity .01s;
}
.s-card:hover .s-card__icon::after { opacity:1; left:130%; }
 
/* meta: number + arrow */
.s-card__meta { display:flex; flex-direction:column; align-items:flex-end; gap:9px; }
.s-card__num {
    font-size:.6rem; font-weight:800;
    letter-spacing:.15em;
    color:rgba(13,27,42,.14);
    transition:color .3s;
}
.s-card:hover .s-card__num { color:rgba(61,184,74,.55); }
 
.s-card__arrow {
    width:33px; height:33px;
    border-radius:50%;
    border:1.5px solid var(--s-line);
    background:#f8fafc;
    display:flex; align-items:center; justify-content:center;
    transition:background .3s, border-color .3s, transform .3s;
}
.s-card__arrow img { max-width:14px; transition:transform .35s ease, filter .3s; }
.s-card:hover .s-card__arrow { background:var(--s-green); border-color:var(--s-green); transform:scale(1.1); }
.s-card:hover .s-card__arrow img { filter:brightness(0) invert(1); transform:rotate(45deg); }
 
/* ── body ── */
.s-card__body { flex:1; }
.s-card__tag {
    display:inline-flex; align-items:center; gap:6px;
    font-size:.59rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
    color:var(--s-green); margin-bottom:9px;
}
.s-card__tag::before { content:''; width:13px; height:1.5px; background:var(--s-green); border-radius:1px; display:block; }
.s-card__title {
    font-size:1.08rem; font-weight:700;
    color:var(--s-navy); margin-bottom:13px; line-height:1.3; letter-spacing:-.01em;
}
.s-card__sep { display:flex; align-items:center; gap:6px; margin-bottom:12px; }
.s-card__sep-ln {
    height:1.5px;
    background:linear-gradient(90deg,var(--s-green),transparent);
    width:28px; border-radius:1px;
    transition:width .4s ease;
}
.s-card:hover .s-card__sep-ln { width:48px; }
.s-card__sep-dt { width:4px;height:4px;border-radius:50%;background:var(--s-green);opacity:.5; }
.s-card__txt {
    font-size:.83rem; line-height:1.8;
    color:var(--s-muted); margin:0;
    transition:color .3s;
}
.s-card:hover .s-card__txt { color:var(--s-mid); }
 
/* ══════════════════════════════════════════════
   FEATURED CARD  (spans 2 cols)
══════════════════════════════════════════════ */
.s-card--feat {
    grid-column:span 2;
    background:linear-gradient(135deg, #e3eaf7 0%, #f8fbff 60%, #f4f6fb 100%);
    border-color:rgba(61,184,74,.22);
    box-shadow:0 6px 28px rgba(61,184,74,.08), 0 2px 8px rgba(13,27,42,.05);
}
.s-card--feat:hover {
    box-shadow:0 28px 60px rgba(61,184,74,.14),0 0 0 1.5px rgba(61,184,74,.3);
}
.s-card--feat::before { width:280px;height:280px;top:-90px;left:-70px; background:radial-gradient(circle,rgba(61,184,74,.11),transparent 70%); }
.s-card--feat .s-card__bar { background:linear-gradient(90deg,transparent,var(--s-green),var(--s-teal),var(--s-blue),transparent); }
.s-card--feat .s-card__title { font-size:1.25rem; }
 
/* inner flex layout */
.s-card--feat .s-feat-inner { display:flex; gap:26px; align-items:flex-start; }
.s-card--feat .s-card__body { flex:1; }
.s-feat-pills {
    width:122px; flex-shrink:0;
    display:flex; flex-direction:column; gap:9px;
    justify-content:center; align-self:stretch;
}
.s-pill {
    background:#fff;
    border:1.5px solid rgba(61,184,74,.18);
    border-radius:12px;
    padding:10px 12px; text-align:center;
    box-shadow:0 2px 8px rgba(61,184,74,.07);
    transition:box-shadow .3s, border-color .3s;
}
.s-card--feat:hover .s-pill { box-shadow:0 4px 16px rgba(61,184,74,.14); border-color:rgba(61,184,74,.32); }
.s-pill__val { font-size:1.05rem; font-weight:800; color:var(--s-navy); letter-spacing:-.03em; line-height:1; }
.s-pill__val em { font-style:normal; color:var(--s-green); font-size:.86em; }
.s-pill__key { font-size:.56rem; text-transform:uppercase; letter-spacing:.1em; color:var(--s-faint); margin-top:4px; }
 
/* ══════════════════════════════════════════════
   CTA STRIP
══════════════════════════════════════════════ */
.s-cta {
    position:relative;
    border-radius:22px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:28px;
    padding:44px 48px;
    margin-top:20px;
    background:linear-gradient(130deg,#f0fdf4 0%,#e8f9f0 30%,#f0f6ff 70%,#f4f6fb 100%);
    border:1.5px solid rgba(61,184,74,.28);
    box-shadow:0 8px 40px rgba(61,184,74,.1), 0 2px 10px rgba(13,27,42,.04);
    transition:transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease;
}
.s-cta:hover { transform:translateY(-4px); box-shadow:0 24px 60px rgba(61,184,74,.18); }
 
/* CTA rings */
.s-cta__ring {
    position:absolute; border-radius:50%;
    animation:sCtaRing linear infinite;
    animation-duration:var(--cr,12s);
    animation-direction:var(--crd,normal);
    pointer-events:none;
}
.s-cta__ring:nth-child(1) { width:260px;height:260px;top:-110px;right:-70px; border:1.5px solid rgba(61,184,74,.14); --cr:16s; }
.s-cta__ring:nth-child(2) { width:160px;height:160px;top:-55px; right:-15px; border:1px   solid rgba(0,184,150,.18);  --cr:10s;--crd:reverse; }
.s-cta__ring:nth-child(3) { width:85px; height:85px; top:-5px;  right:45px;  border:1.5px solid rgba(61,184,74,.25); --cr:7s; }
.s-cta__ring:nth-child(4) { width:200px;height:200px;bottom:-90px;left:-70px;border:1px   solid rgba(37,99,235,.09); --cr:22s;--crd:reverse; }
@keyframes sCtaRing { to { transform:rotate(360deg); } }
 
.s-cta__left  { position:relative; z-index:1; }
.s-cta__right { position:relative; z-index:1; display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
 
.s-cta__eyebrow {
    font-size:.63rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
    color:var(--s-green); margin-bottom:10px;
    display:flex; align-items:center; gap:8px;
}
.s-cta__eyebrow::before { content:''; width:20px; height:1.5px; background:var(--s-green); border-radius:1px; }
 
.s-cta__title {
    font-size:1.6rem; font-weight:800;
    color:var(--s-navy); line-height:1.2; letter-spacing:-.025em; margin:0;
}
.s-cta__title span { color:var(--s-green); }
 
.s-cta__body p {
    font-size:.83rem; color:var(--s-muted); margin:0;
    max-width:250px; line-height:1.65;
}
 
/* Primary button */
.s-cta__btn {
    display:inline-flex; align-items:center; gap:10px;
    background:var(--s-navy); color:#fff;
    font-size:.83rem; font-weight:800; letter-spacing:.03em;
    padding:14px 26px; border-radius:100px;
    text-decoration:none; white-space:nowrap;
    position:relative; overflow:hidden;
    box-shadow:0 4px 20px rgba(13,27,42,.18);
    transition:transform .25s, box-shadow .3s;
}
.s-cta__btn::before {
    content:'';
    position:absolute; inset:0;
    background:linear-gradient(135deg,var(--s-green),var(--s-teal));
    transform:scaleX(0); transform-origin:left;
    transition:transform .4s cubic-bezier(.22,1,.36,1);
    border-radius:100px;
}
.s-cta__btn:hover { transform:translateY(-2px); box-shadow:0 10px 32px rgba(61,184,74,.35); color:#fff; }
.s-cta__btn:hover::before { transform:scaleX(1); }
.s-cta__btn span, .s-cta__btn svg { position:relative; z-index:1; }
.s-cta__btn svg { transition:transform .3s; }
.s-cta__btn:hover svg { transform:translate(3px,-3px); }
 
/* Ghost button */
.s-cta__ghost {
    display:inline-flex; align-items:center; gap:8px;
    border:1.5px solid rgba(61,184,74,.35);
    background:rgba(61,184,74,.07);
    color:var(--s-green);
    font-size:.81rem; font-weight:700;
    padding:13px 22px; border-radius:100px;
    text-decoration:none; white-space:nowrap;
    transition:background .3s, border-color .3s, box-shadow .3s;
}
.s-cta__ghost:hover { background:rgba(61,184,74,.14); border-color:rgba(61,184,74,.5); box-shadow:0 4px 18px rgba(61,184,74,.15); color:var(--s-green); }
 
/* ══════════════════════════════════════════════
   FOOTER ROW
══════════════════════════════════════════════ */
.s-footer {
    display:flex; align-items:center; justify-content:center; gap:16px;
    margin-top:52px; padding-top:36px;
    border-top:1.5px solid var(--s-line);
    flex-wrap:wrap;
}
.s-footer p { font-size:.93rem; color:var(--s-faint); margin:0; }
.s-footer a {
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(61,184,74,.07); border:1.5px solid rgba(61,184,74,.25);
    border-radius:100px; padding:8px 20px;
    font-size:.81rem; font-weight:700; color:var(--s-green); text-decoration:none;
    transition:background .3s, box-shadow .3s;
}
.s-footer a:hover { background:rgba(61,184,74,.14); box-shadow:0 4px 16px rgba(61,184,74,.18); color:var(--s-green); }
.s-footer a svg { transition:transform .3s; }
.s-footer a:hover svg { transform:translate(3px,-3px); }
 
/* ══════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════ */
@media(max-width:991px){
    .s-grid,.s-grid-2               { grid-template-columns:repeat(2,1fr); }
    .s-card--feat                   { grid-column:span 2; }
    .s-card--feat .s-feat-pills     { display:none; }
    .s-stats                        { flex-wrap:wrap; }
    .s-stat                         { min-width:50%; border-bottom:1.5px solid var(--s-line); }
    .s-stat:nth-child(3),
    .s-stat:nth-child(4)            { border-bottom:none; }
    .s-ring--a,.s-ring--b           { display:none; }
    .s-cta                          { padding:32px 28px; }
    .s-cta__title                   { font-size:1.3rem; }
}
@media(max-width:767px){
    .our-services                   { padding:80px 0 60px; }
    .s-grid,.s-grid-2               { grid-template-columns:1fr; }
    .s-card--feat                   { grid-column:span 1; }
    .s-stat                         { min-width:100%; }
    .s-stat:nth-child(3)            { border-bottom:1.5px solid var(--s-line); }
    .s-geo                          { display:none; }
    .s-cta                          { padding:28px 22px; flex-direction:column; align-items:flex-start; }
    .s-cta__right                   { width:100%; }
}
@media(max-width:480px){
    .s-cta__btn,.s-cta__ghost       { width:100%; justify-content:center; }
}


:root {
    --lt-bg:      #f4f6fb;
    --lt-white:   #ffffff;
    --lt-navy:    #0d1b2a;
    --lt-mid:     #334155;
    --lt-muted:   #64748b;
    --lt-faint:   #94a3b8;
    --lt-green:   #3db84a;
    --lt-teal:    #00b896;
    --lt-blue:    #2563eb;
    --lt-line:    rgba(13,27,42,0.07);
    --lt-sh:      0 2px 16px rgba(13,27,42,0.06);
    --lt-sh-h:    0 20px 50px rgba(13,27,42,0.11), 0 0 0 1.5px rgba(61,184,74,0.3);
}
 
/* ══════════════════════════════════════════════════════════
JOIN AGENCY
══════════════════════════════════════════════════════════ */
 
.join-agency {
    position: relative;
    padding: 110px 0 90px;
    background: var(--lt-bg);
    overflow: hidden;
}
 
/* Background blobs */
.ja-blobs { position:absolute; inset:0; pointer-events:none; z-index:0; }
.ja-blob  {
    position:absolute; border-radius:50%; filter:blur(70px);
    animation: jaBlobDrift var(--bd,18s) ease-in-out infinite alternate;
}
.ja-blob--1 { width:450px;height:450px; top:-100px; left:-80px;  background:rgba(61,184,74,0.07); --bd:22s; }
.ja-blob--2 { width:320px;height:320px; bottom:-80px;right:-60px; background:rgba(37,99,235,0.06); --bd:17s; }
.ja-blob--3 { width:260px;height:260px; top:35%; right:25%;       background:rgba(0,184,150,0.05); --bd:25s; }
@keyframes jaBlobDrift {
    0%   { transform:translate(0,0) scale(1); }
    50%  { transform:translate(25px,-18px) scale(1.05); }
    100% { transform:translate(-12px,22px) scale(0.97); }
}
 
/* Dot grid */
.ja-dotgrid {
    position:absolute; inset:0; z-index:0; pointer-events:none;
    background-image: radial-gradient(circle, rgba(61,184,74,0.18) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
}
 
/* Geo canvas */
.ja-geo { position:absolute; inset:0; pointer-events:none; z-index:1; overflow:hidden; }
 
/* Rings */
.ja-ring {
    position:absolute; border-radius:50%;
    animation: jaRingSpin var(--rs,24s) linear infinite;
    animation-direction: var(--rsd,normal);
}
.ja-ring::after {
    content:''; position:absolute;
    width:10px; height:10px; border-radius:50%;
    top:-5px; left:50%; transform:translateX(-50%);
    background:var(--rc, #3db84a);
    box-shadow:0 0 0 3px rgba(61,184,74,0.15), 0 0 14px rgba(61,184,74,0.35);
}
.ja-ring--a { width:480px;height:480px; top:-140px;  left:-140px;  border:1.5px solid rgba(61,184,74,0.09);  --rs:32s; }
.ja-ring--b { width:300px;height:300px; top:-55px;   left:-55px;   border:1px solid rgba(37,99,235,0.08);     --rs:22s;--rsd:reverse;--rc:#2563eb; }
.ja-ring--b::after { background:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,0.12),0 0 12px rgba(37,99,235,0.3); }
.ja-ring--c { width:180px;height:180px; top:0;       left:0;        border:1.5px solid rgba(0,184,150,0.11);  --rs:14s;--rc:#00b896; }
.ja-ring--c::after { background:#00b896; box-shadow:0 0 0 3px rgba(0,184,150,0.12),0 0 10px rgba(0,184,150,0.28); }
.ja-ring--d { width:400px;height:400px; bottom:-130px;right:-120px; border:1px solid rgba(61,184,74,0.07);    --rs:40s;--rsd:reverse; }
.ja-ring--d::after { opacity:0.4; }
@keyframes jaRingSpin { to { transform:rotate(360deg); } }
 
/* Particles */
.ja-ptcl {
    position:absolute; border-radius:50%; opacity:0;
    animation: jaPtclFloat var(--pt,9s) ease-in-out var(--pd,0s) infinite;
}
@keyframes jaPtclFloat {
    0%   { transform:translate(0,0) scale(0); opacity:0; }
    12%  { opacity:0.5; }
    88%  { opacity:0.18; }
    100% { transform:translate(var(--px,20px),var(--py,-110px)) scale(0); opacity:0; }
}
.ja-ptcl:nth-child(5)  { width:3px;height:3px;left:20%;top:80%;--px:16px; --py:-120px;--pt:8s; --pd:0s;   background:var(--lt-green); }
.ja-ptcl:nth-child(6)  { width:4px;height:4px;left:38%;top:72%;--px:-13px;--py:-90px; --pt:11s;--pd:1.4s; background:var(--lt-green); }
.ja-ptcl:nth-child(7)  { width:3px;height:3px;left:55%;top:85%;--px:34px; --py:-140px;--pt:7s; --pd:2.8s; background:var(--lt-teal);  }
.ja-ptcl:nth-child(8)  { width:4px;height:4px;left:72%;top:70%;--px:-20px;--py:-100px;--pt:10s;--pd:0.7s; background:var(--lt-blue);  }
.ja-ptcl:nth-child(9)  { width:3px;height:3px;left:85%;top:60%;--px:11px; --py:-75px; --pt:6s; --pd:2s;   background:var(--lt-teal);  }
 
/* Sweeps */
.ja-sweep {
    position:absolute; height:1px; opacity:0;
    animation:jaSweepMove var(--sd,9s) ease-in-out var(--sdd,0s) infinite;
}
@keyframes jaSweepMove {
    0%   { transform:translateX(0);      opacity:0; }
    7%   { opacity:1; }
    93%  { opacity:0.4; }
    100% { transform:translateX(290vw);  opacity:0; }
}
.ja-sweep--1 { width:30%;top:28%;   left:-30%;background:linear-gradient(90deg,transparent,rgba(61,184,74,0.4),transparent);  --sd:10s;--sdd:0s;   }
.ja-sweep--2 { width:22%;top:60%;   left:-22%;background:linear-gradient(90deg,transparent,rgba(37,99,235,0.3),transparent);  --sd:13s;--sdd:3.5s; }
.ja-sweep--3 { width:34%;bottom:22%;left:-34%;background:linear-gradient(90deg,transparent,rgba(0,184,150,0.3),transparent);  --sd:8s; --sdd:6.5s; }
 
/* Morphing shapes */
.ja-morph {
    position:absolute;
    animation:jaMorphSpin var(--ms,24s) linear infinite;
    animation-direction:var(--msd,normal);
}
.ja-morph--1 { width:80px;height:80px;top:8%;   right:3%;  border:1.5px solid rgba(61,184,74,0.13);  border-radius:30% 70% 70% 30%/30% 30% 70% 70%; --ms:28s; }
.ja-morph--2 { width:50px;height:50px;top:17%;  right:6%;  border:1px   solid rgba(37,99,235,0.12);  border-radius:50%; --ms:20s;--msd:reverse; }
.ja-morph--3 { width:65px;height:65px;bottom:14%;right:3%; border:1.5px solid rgba(0,184,150,0.13);  border-radius:50% 50% 30% 70%/50% 70% 30% 50%; --ms:26s; }
@keyframes jaMorphSpin { to { transform:rotate(360deg); } }
 
.join-agency .container { position:relative; z-index:2; }
 
/* Section header overrides */
.join-agency .section-title h3        { color:#0f253b; }
.join-agency .section-title h2        { color:var(--lt-navy); font-weight:300; }
.join-agency .section-title h2 span   { color:#1A1D50; font-weight:800; }
.join-agency .section-title-content p { color:var(--lt-muted); }
 
/* ── Social Cards ── */
.ja-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 22px;
    margin-top: 8px;
}
 
.ja-card {
    position: relative;
    background: var(--lt-white);
    border: 1.5px solid var(--lt-line);
    border-radius: 20px;
    padding: 36px 30px 32px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow: hidden;
    box-shadow: var(--lt-sh);
    cursor: pointer;
    transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease, border-color .35s ease;
}
.ja-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--lt-sh-h);
    border-color: rgba(61,184,74,0.3);
}
 
/* corner glow */
.ja-card::before {
    content:''; position:absolute; top:-70px; left:-70px;
    width:180px; height:180px; border-radius:50%;
    background:radial-gradient(circle,rgba(61,184,74,0.09),transparent 70%);
    opacity:0; transition:opacity .5s ease; pointer-events:none;
}
.ja-card:hover::before { opacity:1; }
 
/* animated top bar */
.ja-card__bar {
    position:absolute; top:-1px; left:0; right:0; height:2.5px;
    background:linear-gradient(90deg, transparent, #3d69b8, #4073f7, transparent);
    transform:scaleX(0); transform-origin:left;
    transition:transform .5s cubic-bezier(.22,1,.36,1);
    border-radius:2px 2px 0 0;
}
.ja-card:hover .ja-card__bar { transform:scaleX(1); }
 
/* pulsing dot */
.ja-card__dot {
    position:absolute; top:18px; right:18px;
    width:7px; height:7px; border-radius:50%;
    background:var(--lt-green);
    animation:ltDotPulse 3s ease infinite;
    animation-delay:var(--dd,0s);
}
@keyframes ltDotPulse {
    0%,100% { box-shadow:0 0 0 0   rgba(61,184,74,.4); }
    50%      { box-shadow:0 0 0 8px rgba(61,184,74,0); }
}
 
/* card body layout */
.ja-card__body { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
 
/* platform icon */
.ja-card__icon {
    width: 56px; height: 56px; flex-shrink:0;
    border-radius: 16px;
    display: flex; align-items:center; justify-content:center;
    font-size: 1.4rem;
    position:relative; overflow:hidden;
    transition:background .3s, box-shadow .3s, border-color .3s;
}
/* icon shimmer */
.ja-card__icon::after {
    content:''; position:absolute; top:-50%;left:-60%;
    width:40%;height:200%;
    background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);
    transform:skewX(-20deg); opacity:0;
    transition:left .45s ease, opacity .01s;
}
.ja-card:hover .ja-card__icon::after { opacity:1; left:130%; }
 
/* platform colours */
.ja-card--twitter .ja-card__icon {
    background:linear-gradient(135deg,rgba(0,0,0,0.07),rgba(0,0,0,0.02));
    border:1.5px solid rgba(0,0,0,0.1);
    color:#0f1419;
}
.ja-card--twitter:hover .ja-card__icon { background:linear-gradient(135deg,rgba(0,0,0,0.12),rgba(0,0,0,0.04)); box-shadow:0 4px 18px rgba(0,0,0,0.12); }
 
.ja-card--linkedin .ja-card__icon {
    background:linear-gradient(135deg,rgba(0,119,181,0.1),rgba(0,119,181,0.03));
    border:1.5px solid rgba(0,119,181,0.2);
    color:#0077b5;
}
.ja-card--linkedin:hover .ja-card__icon { background:linear-gradient(135deg,rgba(0,119,181,0.18),rgba(0,119,181,0.06)); box-shadow:0 4px 18px rgba(0,119,181,0.18); }
 
.ja-card--instagram .ja-card__icon {
    background:radial-gradient(circle at 30% 107%, #fdf49733 0%, #fdf49747 5%, #fd59493b 45%, #d6249f42 60%, #285aeb3b 90%);
    border:1.5px solid rgba(225,48,108,0.18);
    color:#e1306c;
}
.ja-card--instagram:hover .ja-card__icon { background:linear-gradient(135deg,rgba(225,48,108,0.15),rgba(193,53,132,0.06)); box-shadow:0 4px 18px rgba(225,48,108,0.18); }
 
/* arrow button */
.ja-card__arrow {
    width:36px; height:36px; flex-shrink:0; border-radius:50%;
    border:1.5px solid var(--lt-line); background:#f8fafc;
    display:flex; align-items:center; justify-content:center;
    transition:background .3s, border-color .3s, transform .3s;
    margin-top:4px;
}
.ja-card__arrow img { max-width:15px; transition:transform .35s ease, filter .3s; }
.ja-card:hover .ja-card__arrow { background:var(--lt-green); border-color:var(--lt-green); transform:scale(1.1); }
.ja-card:hover .ja-card__arrow img { filter:brightness(0) invert(1); transform:rotate(45deg); }
 
/* text */
.ja-card__text { flex:1; }
.ja-card__platform {
    font-size:.6rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
    color:#3d5cb8; margin-bottom:8px;
    display:flex; align-items:center; gap:6px;
}
.ja-card__platform::before { content:''; width:13px; height:1.5px; background:#3d5cb8; border-radius:1px; display:block; }
 
.ja-card__title {
    font-size:1.12rem; font-weight:700; color:var(--lt-navy);
    margin-bottom:8px; line-height:1.3; letter-spacing:-.01em;
}
 
/* separator */
.ja-card__sep { display:flex; align-items:center; gap:6px; margin-bottom:10px; }
.ja-card__sep-ln { height:1.5px; background:linear-gradient(90deg,var(--lt-green),transparent); width:28px; border-radius:1px; transition:width .4s ease; }
.ja-card:hover .ja-card__sep-ln { width:48px; }
.ja-card__sep-dt { width:4px;height:4px;border-radius:50%;background:var(--lt-green);opacity:.5; }
 
.ja-card__handle {
    font-size:.84rem; color:var(--lt-muted);
    transition:color .3s;
}
.ja-card:hover .ja-card__handle { color:var(--lt-mid); }
 
/* handle pill */
.ja-card__pill {
    display:inline-flex; align-items:center; gap:6px;
    background:rgb(33 53 101); border:1.5px solid rgba(61,184,74,0.2);
    border-radius:100px; padding:5px 12px;
    font-size:.72rem; font-weight:600; color:var(--s-white);
    margin-top:12px;
    transition:background .3s, box-shadow .3s;
}
.ja-card:hover .ja-card__pill { background:rgb(33 53 101 / 89%); box-shadow:0 3px 12px rgba(61,184,74,0.15); }
.ja-card__pill::before { content:''; width:6px;height:6px;border-radius:50%;background:var(--lt-green);opacity:.7; }
 
/* CTA row at bottom */
.ja-cta-row {
    display:flex; align-items:center; justify-content:center; gap:16px;
    margin-top:52px; padding-top:36px;
    border-top:1.5px solid var(--lt-line);
    flex-wrap:wrap;
}
.ja-cta-row p { font-size:.94rem; color:var(--lt-faint); margin:0; }
.ja-cta-btn {
    display:inline-flex; align-items:center; gap:10px;
    background:var(--lt-navy); color:#fff;
    font-size:.83rem; font-weight:800; letter-spacing:.03em;
    padding:13px 26px; border-radius:100px;
    text-decoration:none; white-space:nowrap;
    position:relative; overflow:hidden;
    box-shadow:0 4px 20px rgba(13,27,42,0.18);
    transition:transform .25s, box-shadow .3s;
}
.ja-cta-btn::before {
    content:''; position:absolute; inset:0;
    background:linear-gradient(135deg,var(--lt-green),var(--lt-teal));
    transform:scaleX(0); transform-origin:left;
    transition:transform .4s cubic-bezier(.22,1,.36,1);
    border-radius:100px;
}
.ja-cta-btn:hover { transform:translateY(-2px); box-shadow:0 10px 32px rgba(61,184,74,0.35); color:#fff; }
.ja-cta-btn:hover::before { transform:scaleX(1); }
.ja-cta-btn span, .ja-cta-btn svg { position:relative; z-index:1; }
.ja-cta-btn svg { transition:transform .3s; }
.ja-cta-btn:hover svg { transform:translate(3px,-3px); }
 
/* responsive */
@media(max-width:991px) { .ja-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:767px) {
    .join-agency { padding:80px 0 60px; }
    .ja-grid { grid-template-columns:1fr; }
    .ja-geo { display:none; }
}
 
 
 
/* ══════════════════════════════════════════════════════════
 OUR PORTFOLIO
══════════════════════════════════════════════════════════ */
 
.our-portfolio {
    position:relative;
    padding:110px 0 90px;
    background:var(--lt-white);   /* alternating section: pure white */
    overflow:hidden;
}
 
/* Blobs — blue-shifted for variety */
.pf-blobs { position:absolute; inset:0; pointer-events:none; z-index:0; }
.pf-blob  {
    position:absolute; border-radius:50%; filter:blur(70px);
    animation: pfBlobDrift var(--bd,18s) ease-in-out infinite alternate;
}
.pf-blob--1 { width:400px;height:400px; top:-100px; right:-80px;  background:rgba(37,99,235,0.05);  --bd:22s; }
.pf-blob--2 { width:350px;height:350px; bottom:-80px;left:-60px;   background:rgba(61,184,74,0.06);  --bd:18s; }
.pf-blob--3 { width:250px;height:250px; top:40%;    left:45%;      background:rgba(0,184,150,0.04);  --bd:26s; }
@keyframes pfBlobDrift {
    0%   { transform:translate(0,0) scale(1); }
    50%  { transform:translate(20px,-15px) scale(1.04); }
    100% { transform:translate(-10px,20px) scale(0.97); }
}
 
/* Dot grid */
.pf-dotgrid {
    position:absolute; inset:0; z-index:0; pointer-events:none;
    background-image: radial-gradient(circle, rgba(61,184,74,0.14) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
}
 
/* Geo canvas */
.pf-geo { position:absolute; inset:0; pointer-events:none; z-index:1; overflow:hidden; }
 
/* Rings */
.pf-ring {
    position:absolute; border-radius:50%;
    animation:pfRingSpin var(--rs,24s) linear infinite;
    animation-direction:var(--rsd,normal);
}
.pf-ring::after {
    content:''; position:absolute; width:9px;height:9px; border-radius:50%;
    top:-4.5px; left:50%; transform:translateX(-50%);
    background:var(--rc,#3db84a);
    box-shadow:0 0 0 3px rgba(61,184,74,0.14),0 0 12px rgba(61,184,74,0.32);
}
.pf-ring--a { width:460px;height:460px; bottom:-130px;left:-130px; border:1.5px solid rgba(61,184,74,0.09);  --rs:34s; }
.pf-ring--b { width:290px;height:290px; bottom:-50px; left:-50px;  border:1px   solid rgba(37,99,235,0.08);   --rs:22s;--rsd:reverse;--rc:#2563eb; }
.pf-ring--b::after { background:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,0.12),0 0 12px rgba(37,99,235,0.28); }
.pf-ring--c { width:170px;height:170px; bottom:0;     left:0;      border:1.5px solid rgba(0,184,150,0.11);   --rs:14s;--rc:#00b896; }
.pf-ring--c::after { background:#00b896; box-shadow:0 0 0 3px rgba(0,184,150,0.12),0 0 10px rgba(0,184,150,0.26); }
.pf-ring--d { width:380px;height:380px; top:-120px; right:-110px;  border:1px solid rgba(61,184,74,0.07);     --rs:42s;--rsd:reverse; }
.pf-ring--d::after { opacity:0.35; }
@keyframes pfRingSpin { to { transform:rotate(360deg); } }
 
/* Particles */
.pf-ptcl {
    position:absolute; border-radius:50%; opacity:0;
    animation:pfPtclFloat var(--pt,9s) ease-in-out var(--pd,0s) infinite;
}
@keyframes pfPtclFloat {
    0%   { transform:translate(0,0) scale(0); opacity:0; }
    12%  { opacity:0.5; }
    88%  { opacity:0.18; }
    100% { transform:translate(var(--px,20px),var(--py,-110px)) scale(0); opacity:0; }
}
.pf-ptcl:nth-child(5)  { width:3px;height:3px;left:10%;top:80%;--px:18px; --py:-120px;--pt:8s; --pd:0s;   background:var(--lt-green); }
.pf-ptcl:nth-child(6)  { width:4px;height:4px;left:30%;top:70%;--px:-14px;--py:-95px; --pt:11s;--pd:1.6s; background:var(--lt-teal);  }
.pf-ptcl:nth-child(7)  { width:3px;height:3px;left:55%;top:85%;--px:30px; --py:-140px;--pt:7s; --pd:3s;   background:var(--lt-green); }
.pf-ptcl:nth-child(8)  { width:4px;height:4px;left:78%;top:72%;--px:-18px;--py:-100px;--pt:10s;--pd:0.8s; background:var(--lt-blue);  }
.pf-ptcl:nth-child(9)  { width:3px;height:3px;left:90%;top:60%;--px:10px; --py:-80px; --pt:6s; --pd:2.1s; background:var(--lt-teal);  }
 
/* Sweeps */
.pf-sweep {
    position:absolute; height:1px; opacity:0;
    animation:pfSweepMove var(--sd,9s) ease-in-out var(--sdd,0s) infinite;
}
@keyframes pfSweepMove {
    0%   { transform:translateX(0);     opacity:0; }
    7%   { opacity:1; }
    93%  { opacity:0.4; }
    100% { transform:translateX(290vw); opacity:0; }
}
.pf-sweep--1 { width:28%;top:22%;   left:-28%;background:linear-gradient(90deg,transparent,rgba(61,184,74,0.38),transparent);  --sd:10s;--sdd:0s;   }
.pf-sweep--2 { width:20%;top:58%;   left:-20%;background:linear-gradient(90deg,transparent,rgba(37,99,235,0.28),transparent);  --sd:13s;--sdd:4s;   }
.pf-sweep--3 { width:32%;bottom:18%;left:-32%;background:linear-gradient(90deg,transparent,rgba(0,184,150,0.28),transparent);  --sd:8.5s;--sdd:7s;  }
 
/* Morphing shapes */
.pf-morph {
    position:absolute;
    animation:pfMorphSpin var(--ms,24s) linear infinite;
    animation-direction:var(--msd,normal);
}
.pf-morph--1 { width:78px;height:78px;top:7%;   left:2%;   border:1.5px solid rgba(61,184,74,0.12);  border-radius:30% 70% 70% 30%/30% 30% 70% 70%; --ms:30s; }
.pf-morph--2 { width:48px;height:48px;top:16%;  left:5.5%; border:1px   solid rgba(37,99,235,0.11);  border-radius:50%; --ms:21s;--msd:reverse; }
.pf-morph--3 { width:62px;height:62px;bottom:12%;left:2.5%;border:1.5px solid rgba(0,184,150,0.12);  border-radius:50% 50% 30% 70%/50% 70% 30% 50%; --ms:27s; }
@keyframes pfMorphSpin { to { transform:rotate(360deg); } }
 
.our-portfolio .container { position:relative; z-index:2; }
 
/* Section header */
.our-portfolio .section-title h3        { color:#0f253b; }
.our-portfolio .section-title h2        { color:var(--lt-navy); font-weight:300; }
.our-portfolio .section-title h2 span   { color:#0f253b; font-weight:800; }
.our-portfolio .section-title-content p { color:var(--lt-muted); }
 
/* ── Filter nav ── */
.pf-nav {
    display:flex; align-items:center; flex-wrap:wrap; gap:10px;
    margin-bottom:44px;
    padding:6px;
    background:var(--lt-white);
    border:1.5px solid var(--lt-line);
    border-radius:100px;
    width:fit-content;
    box-shadow:var(--lt-sh);
}
.pf-nav a {
    font-size:.77rem; font-weight:700; letter-spacing:.04em;
    color:var(--lt-muted); text-decoration:none;
    padding:8px 18px; border-radius:100px;
    transition:background .25s, color .25s, box-shadow .25s;
    white-space:nowrap;
}
.pf-nav a:hover { color:var(--lt-navy); background:rgba(13,27,42,0.05); }
.pf-nav a.active-btn {
    background:var(--lt-navy); color:#fff;
    box-shadow:0 2px 12px rgba(13,27,42,0.18);
}
 
/* ── Project grid ── */
.pf-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}
 
/* Project card */
.pf-card {
    position:relative;
    border-radius:20px;
    overflow:hidden;
    background:var(--lt-white);
    border:1.5px solid var(--lt-line);
    box-shadow:var(--lt-sh);
    cursor:pointer;
    transition:transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease, border-color .35s ease;
}
.pf-card:hover {
    transform:translateY(-8px);
    box-shadow:var(--lt-sh-h);
    border-color:rgba(61,184,74,0.3);
}
 
/* image wrapper */
.pf-card__img {
    position:relative;
    overflow:hidden;
    aspect-ratio:4/3;
}
.pf-card__img figure { margin:0; height:100%; }
.pf-card__img img {
    width:100%; height:100%; object-fit:cover;
    transition:transform .6s cubic-bezier(.22,1,.36,1), filter .4s ease;
    filter:brightness(1);
}
.pf-card:hover .pf-card__img img { transform:scale(1.07); filter:brightness(0.92); }
 
/* overlay on hover */
.pf-card__overlay {
    position:absolute; inset:0;
    background:linear-gradient(180deg,transparent 30%,rgba(13,27,42,0.55) 100%);
    opacity:0; transition:opacity .4s ease;
}
.pf-card:hover .pf-card__overlay { opacity:1; }
 
/* tag pill */
.pf-card__tag {
    position:absolute; top:14px; left:14px;
    background:rgba(255,255,255,0.92);
    backdrop-filter:blur(8px);
    border:1px solid rgba(255,255,255,0.6);
    border-radius:100px;
    padding:5px 13px;
    font-size:.66rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
    color:var(--lt-navy);
    box-shadow:0 2px 10px rgba(13,27,42,0.1);
    transition:background .3s, color .3s;
}
.pf-card:hover .pf-card__tag { background:var(--lt-green); color:#fff; border-color:var(--lt-green); }
 
/* arrow button on image */
.pf-card__btn {
    position:absolute; bottom:14px; right:14px;
    width:38px; height:38px; border-radius:50%;
    background:rgba(255,255,255,0.9); backdrop-filter:blur(8px);
    display:flex; align-items:center; justify-content:center;
    border:1px solid rgba(255,255,255,0.6);
    box-shadow:0 2px 12px rgba(13,27,42,0.12);
    opacity:0; transform:translateY(8px) scale(0.85);
    transition:opacity .35s ease, transform .35s ease, background .3s;
}
.pf-card:hover .pf-card__btn { opacity:1; transform:translateY(0) scale(1); }
.pf-card__btn:hover { background:var(--lt-green) !important; }
.pf-card__btn img { max-width:15px; transition:filter .3s; }
.pf-card__btn:hover img { filter:brightness(0) invert(1); }
 
/* card footer */
.pf-card__footer {
    padding:18px 20px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border-top:1.5px solid var(--lt-line);
    transition:border-color .3s;
}
.pf-card:hover .pf-card__footer { border-color:rgba(61,184,74,0.2); }
 
.pf-card__title {
    font-size:.95rem; font-weight:700;
    color:var(--lt-navy); margin:0;
    line-height:1.3; letter-spacing:-.01em;
    text-transform:capitalize;
    transition:color .3s;
}
.pf-card:hover .pf-card__title { color:var(--lt-green); }
 
/* animated green bar at bottom */
.pf-card__bar {
    position:absolute;
    bottom:0; left:0;
    height:2.5px;
    background:linear-gradient(90deg,var(--lt-green),var(--lt-teal));
    width:0;
    transition:width .5s cubic-bezier(.22,1,.36,1);
    border-radius:0 2px 2px 0;
}
.pf-card:hover .pf-card__bar { width:100%; }
 
/* footer arrow */
.pf-card__link {
    width:32px; height:32px; flex-shrink:0;
    border-radius:50%; border:1.5px solid var(--lt-line);
    background:#f8fafc;
    display:flex; align-items:center; justify-content:center;
    transition:background .3s, border-color .3s, transform .3s;
}
.pf-card__link img { max-width:13px; transition:transform .35s, filter .3s; }
.pf-card:hover .pf-card__link { background:var(--lt-green); border-color:var(--lt-green); transform:scale(1.1); }
.pf-card:hover .pf-card__link img { filter:brightness(0) invert(1); transform:rotate(45deg); }
 
/* number badge */
.pf-card__num {
    position:absolute; top:14px; right:14px;
    font-size:.58rem; font-weight:800; letter-spacing:.12em;
    color:rgba(13,27,42,.5);
    background:rgba(255,255,255,0.88);
    backdrop-filter:blur(6px);
    padding:3px 8px; border-radius:100px;
    border:1px solid rgba(255,255,255,.6);
    transition:opacity .3s;
}
.pf-card:hover .pf-card__num { opacity:0; }
 
/* ── Portfolio footer ── */
.pf-footer {
    display:flex; align-items:center; justify-content:center; gap:16px;
    margin-top:52px; padding-top:36px;
    border-top:1.5px solid var(--lt-line);
    flex-wrap:wrap;
}
.pf-footer p { font-size:.94rem; color:var(--lt-faint); margin:0; }
.pf-footer__link {
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(61,184,74,0.07); border:1.5px solid rgba(61,184,74,0.25);
    border-radius:100px; padding:9px 22px;
    font-size:.82rem; font-weight:700; color:var(--lt-green); text-decoration:none;
    transition:background .3s, box-shadow .3s;
}
.pf-footer__link:hover { background:rgba(61,184,74,0.14); box-shadow:0 4px 18px rgba(61,184,74,0.18); color:var(--lt-green); }
.pf-footer__link svg { transition:transform .3s; }
.pf-footer__link:hover svg { transform:translate(3px,-3px); }
 
/* Responsive */
@media(max-width:991px) {
    .pf-grid { grid-template-columns:repeat(2,1fr); }
    .pf-nav  { border-radius:16px; padding:10px; }
}
@media(max-width:767px) {
    .our-portfolio { padding:80px 0 60px; }
    .pf-grid { grid-template-columns:1fr; }
    .pf-geo  { display:none; }
    .pf-nav  { border-radius:14px; padding:8px; }
    .pf-nav a { padding:7px 14px; font-size:.73rem; }
}





/* Responsive Design */
@media (max-width: 1024px) {
    .apx-slide-description {
        max-width: 320px;
    }

    .apx-footer-nav {
        padding: 30px 40px;
    }

    .apx-slide-content {
        padding: 0 40px;
    }
}

@media (max-width: 768px) {
    .apx-footer-nav {
        padding: 20px 30px;
    }

    .apx-slide-content {
        padding: 0 30px;
    }

    .apx-slide-description {
        margin-top: 50px;
        max-width: 100%;
    }

    .apx-social-links {
        gap: 15px;
    }

    .apx-slider-controls {
        gap: 8px;
    }

    .apx-parallax-image {
        display: none;
    }
}

@media (max-width: 480px) {
    .apx-slide-title {
        font-size: 48px;
    }

    .apx-footer-nav {
        padding: 15px 20px;
    }

    .apx-slide-content {
        padding: 0 20px;
    }

    .apx-content-section {
        padding: 60px 20px;
    }

    .apx-content-section h2 {
        font-size: 36px;
    }

    .apx-features-grid {
        gap: 40px;
    }
}