/* ----------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------- */

/************************************/
/*** 	 01. Global Variables	  ***/
/************************************/	

:root{
	--primary-color			: #FFFFFF;
	--secondary-color		: #1B1B1B;
	--text-color			: #F5F5F4;
	--accent-color			: #01ced1;
	--dark-color			: #000000;
	--divider-color			: #FFFFFF1A;
	--dark-divider-color	: #F7FBFA1A;
	--error-color			: rgb(230, 87, 87);
	--default-font			: "Fustat", sans-serif;
}

/************************************/
/*** 	   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-color: rgba(0,0,0,1);
}

.bg-body2{
	background: url('../images/black-teal-bg.jpg');
	background-repeat: no-repeat;
	background-position: right 0;
	background-blend-mode: darken;
	background-color: rgba(0,0,0,0.3);
	background-size: 100% auto;
}

.bg-body3 {
	background: url('../images/black-teal-bg2.jpg');
	background-repeat: no-repeat;
	background-position: right center;
	background-blend-mode: darken;
	background-color: rgba(0,0,0,0.4);
	background-size: cover;
	background-attachment: fixed;
}



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: var(--accent-color);
    color: var(--dark-color);
    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(--primary-color);
}

.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: 106px;
	font-weight: 600;
	line-height: 1.2em;
	color: var(--primary-color);
	margin-bottom: 0;
	cursor: none;
}

.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;
	cursor: none;
}

.section-title h2 span{
	font-weight: 700;
	color: #01ced1;
}

.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;
}
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: 0 0;
	align-items: center;
}

.navbar-brand{
	padding: 15px 0;
	margin: 0;
}

.navbar-brand img {
	width: 63%;
	height: auto;
}

.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: 18px;
	font-weight: 600;
	padding: 31px !important;
	color: var(--primary-color);
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
}

/* .main-menu ul#menu > li.nav-item:nth-child(5) > a.nav-link {
    padding-left: 14px !important;
    padding-right: 17px !important;
}
 */
.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-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: 330px 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::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-content {
	position: relative;
	z-index: 1;
	width: 80%;
	text-align: center;
	margin: 0 auto;
}
.hero-content .section-title{
	width: 100%;
	margin-bottom: 70px;
}

.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;
}


.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: 100%;
	text-align: center;
}
.hero-video-content p {
	margin: 0 auto;
	width: 70%;
	font-weight: 600;
	font-size: 20px;
}


/************************************/
/***     06. About Agency css	  ***/
/************************************/



.about-agency-content{
	top: 100px;
	padding-right: 35px;
}

.our-services{
	padding: 80px 0;
}

.why-choose-us{
	position: relative;
	padding: 80px 0;
}



/************************************/
/***   	   17. Footer css         ***/
/************************************/
.footer-main{
	border-top: 1px solid var(--divider-color);
	padding: 60px 0 0;
}

.footer-logo {
	margin-bottom: 30px;
	text-align: center;
	width: 86%;
	/* height: auto; */
}

.footer-logo img {
	width: 55%;
	height: auto;
	text-align: center;
}

.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;
}

.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: 19px;
	font-weight: 500;
	margin: 0;
}

.footer-links h3{
	font-size: 22px;
	text-transform: capitalize;
	color: var(--primary-color);
	margin-bottom: 10px;
}

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

.footer-links ul li{
	text-transform: capitalize;
	margin-bottom: 0;
}

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

.footer-links ul li a{
	color: var(--primary-color);
	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 var(--divider-color);
	background: transparent;
	color: var(--text-color);
	border-radius: 10px;
	box-shadow: none;
}

.footer-newsletter-form .form-group .form-control::placeholder{
	color: var(--text-color);
}

.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: 20px 0;
	margin-top:30px;
}

.footer-copyright-text{
	text-align: center;
}

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



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

/************************************/
/***     18. About Us Page css    ***/
/************************************/

.about-trinity {
	position: relative;
    padding: 100px 0 0px;
}





/************************************/
/***    20. Services Single css   ***/
/************************************/

.page-service-single{
	position: relative;
    padding: 100px 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: 20px;
}

.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 ul {
	/* margin: 0; */
	padding: 0;
}

.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: 20px;
	margin-bottom: 20px;
	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);
}



.sidebar-cta-box {
	position: relative;
	background: var(--accent-color);
	background-position: center center;
	background-size: cover;
	padding: 50px;
	border-radius: 30px;
	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;
}

.ot-widget-contact .widget_title {
	position: relative;
	font-size: 24px;
	font-weight: 600;
	line-height: 1em;
	margin: -0.12em 0 32px 0;
}

.ot-widget-contact .info-box {
	gap: 16px;
}

.ot-widget-contact .info-box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px;
}

.widget_contact_info .ot-widget-contact .info-box .box-icon {
	border-color: #ffffff;
	color: #ffffff;
}
.ot-widget-contact .info-box .box-icon {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,0.24);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-color: transparent;
	color: var(--theme-color);
	-webkit-box-flex: 0;
	-webkit-flex: none;
	-ms-flex: none;
	flex: none;
	font-size: 20px;
}
.media-body {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
.media-body p.box-text {
	margin-bottom: 0;
}

.media-body a.box-link {
	color: #fff;
}
.ot-widget-contact .info-box .box-title {
	color: #FFF;
	font-size: 18px;
	font-weight: 600;
	word-break: break-all;
	margin-bottom: 5px;
}
.cta-contact-content{
    position: relative;
    margin-bottom: 20px;
}

.cta-contact-content h3{
    font-size: 22px;
    font-weight: 700;
    color:#fff;
    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);
}



/************************************/
/***      34. Responsive css      ***/
/************************************/

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

	.navbar{
		padding: 20px 0;
	}
	
	.navbar-brand img {
	width: 55%;
	height: auto;
}

	.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:240px 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: 100%;
	}

	.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 {
	padding-right: 15px;
	padding-left: 15px;
}





	.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;
    }

	.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;
    }



    .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-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;
	}





.navbar-brand{
	display:contents;
}

.navbar-brand img {
	width: 40%;
	height: 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;
	}



	.hero-video-content{
        width: 100%;
    }



.service-single-content {
	margin-right: 0;
}

	.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;
	}

    .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;
    }

}




/* QUICK LINKS */


.footer-links li {
    border-bottom: 1px solid rgba(255,255,255,0.12);
}

.footer-links li:last-child {
    border-bottom: none;
}

.footer-links a {
    display: flex;
    justify-content: space-between;
    padding: 14px 0;
    transition: all 0.3s ease;
}

.footer-links a span {
    color: #08c9d8;
    font-size: 20px;

    transition: transform 0.3s ease;
}

.footer-links a:hover {
    color: #08c9d8;
}

.footer-links a:hover span {
    transform: translateX(5px);
}

/* =========================
   START A CONVERSATION CTA
========================= */

.footer-cta {
    position: relative;
    padding: 38px 40px;
    border: 1px solid rgba(0, 210, 220, 0.45);
    border-radius: 18px;
    background: rgba(0, 20, 22, 0.35);
    overflow: hidden;
}

/* subtle digital effect */
.footer-cta::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    right: -70px;
    bottom: -80px;

    background: radial-gradient(
        circle,
        rgba(0, 210, 220, 0.18),
        transparent 70%
    );

    pointer-events: none;
}


/* ICON */

.cta-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #08c9d8;
    border-radius: 50%;

    color: #08c9d8;
    font-size: 22px;

    margin-bottom: 28px;
}


/* HEADING */

.footer-cta h3 {
    margin: 0;
    color: #ffffff;

    font-size: 22px;
    font-weight: 600;
    text-transform: uppercase;
}


/* LINE */

.footer-cta .footer-heading-line {
    width: 55px;
    height: 2px;

    background: #08c9d8;

    margin: 16px 0 24px;
}


/* TEXT */

.footer-cta p {
    max-width: 390px;

    margin: 0 0 28px;

    color: #c5c9cc;

    font-size: 15px;
    line-height: 1.7;
}


/* BUTTON */

.cta-button {
    display: inline-flex;
    align-items: center;
    gap: 18px;

    padding: 13px 22px;

    background: #08c9d8;
    color: #061014;

    text-decoration: none;

    font-size: 14px;
    font-weight: 600;

    border-radius: 8px;

    transition: all 0.3s ease;
}

.cta-button span {
    font-size: 20px;
    line-height: 1;
}

.cta-button:hover {
    background: #ffffff;
    color: #061014;
}

.cta-button:hover span {
    transform: translateX(4px);
}

.social-con {
	right: 60px;
	position: absolute;
	top: 45%;
	-webkit-transform: translateY(-60%);
	transform: translateY(-60%);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	margin-right: -155px;
	z-index: 999;
}

.social-con a {
	display: block;
	color: #fff;
	font-size: 13px;
	margin-top: 10px;
	float: left;
	margin-right: 15px;
	-webkit-transition: all ease 0.3s;
	transition: all ease 0.3s;
	font-weight: 600;
}
.social-con a.text{
	margin-right: 0;
}

.social-con .line {
	float: left;
	width: 72px;
	background: #bfbfbf;
	height: 1px;
	margin: 20px 17px;
}

.social-con a i {
	-webkit-transition: all ease 0.3s;
	transition: all ease 0.3s;
}

.social-con a:hover i {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transition: all ease 0.3s;
	transition: all ease 0.3s;
}






/* =========================================================
   TRINITY DIGITAL TRANSFORMATION FOOTER ANIMATION
========================================================= */

.footer-main {
	position: relative;
	overflow: hidden;
	background-color: #070707;
}

/* =========================================================
   DIGITAL CIRCULAR ELEMENTS
========================================================= */

.footer-digital {
	position: absolute;
	width: 360px;
	height: 360px;
	bottom: 170px;
	pointer-events: none;
	z-index: 1;
	opacity: 4;
}

/* LEFT */

.footer-digital-left {
	left: -90px;
}


/* RIGHT */

.footer-digital-right {
	right: -140px;
	bottom: -10px;
}


/* =========================================================
   RINGS
========================================================= */

.digital-ring {
    position: absolute;

    top: 50%;
    left: 50%;

    border: 1px solid rgba(8, 200, 212, 0.45);

    border-radius: 50%;

    transform: translate(-50%, -50%);

    box-sizing: border-box;
}


/* Ring 1 */

.ring-1 {
    width: 100px;
    height: 100px;

    border-top-color: #08c8d4;
    border-bottom-color: transparent;

    animation: rotateDigital 12s linear infinite;
}


/* Ring 2 */

.ring-2 {
    width: 170px;
    height: 170px;

    border-left-color: #08c8d4;
    border-right-color: transparent;

    animation: rotateDigitalReverse 18s linear infinite;
}


/* Ring 3 */

.ring-3 {
    width: 250px;
    height: 250px;

    border-top-color: rgba(8, 200, 212, 0.8);
    border-bottom-color: transparent;

    animation: rotateDigital 25s linear infinite;
}


/* Ring 4 */

.ring-4 {
    width: 340px;
    height: 340px;

    border-left-color: rgba(8, 200, 212, 0.5);
    border-right-color: transparent;

    animation: rotateDigitalReverse 35s linear infinite;
}


/* =========================================================
   DIGITAL NODES
========================================================= */

.digital-dot {
    position: absolute;

    width: 6px;
    height: 6px;

    background: #08c8d4;

    border-radius: 50%;

    box-shadow:
        0 0 8px #08c8d4,
        0 0 18px rgba(8, 200, 212, 0.6);

    animation: digitalPulse 3s ease-in-out infinite;
}


/* Node positions */

.dot-1 {
    top: 18%;
    left: 52%;

    animation-delay: 0s;
}


.dot-2 {
    top: 38%;
    left: 76%;

    animation-delay: 0.8s;
}


.dot-3 {
    top: 63%;
    left: 20%;

    animation-delay: 1.4s;
}


.dot-4 {
    top: 77%;
    left: 48%;

    animation-delay: 2s;
}


.dot-5 {
    top: 32%;
    left: 23%;

    animation-delay: 2.5s;
}


/* =========================================================
   ROTATION
========================================================= */

@keyframes rotateDigital {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }

}


@keyframes rotateDigitalReverse {

    from {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

}


/* =========================================================
   NODE PULSE
========================================================= */

@keyframes digitalPulse {

    0%,
    100% {
        opacity: 0.25;
        transform: scale(0.8);
    }

    50% {
        opacity: 1;
        transform: scale(1.4);
    }

}


/* =========================================================
   KEEP FOOTER CONTENT ABOVE DECORATION
========================================================= */

.footer-main .container {
    position: relative;
    z-index: 5;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .footer-digital {
        opacity: 0.15;
        transform: scale(0.75);
    }

    .footer-digital-left {
        left: -260px;
    }

    .footer-digital-right {
        right: -260px;
    }

    .footer-lines-animation {
        height: 60px;
        opacity: 0.25;
    }

    .footer-lines-animation img {
        width: 180%;
    }


}



/* ================================
   PRELOADER
================================ */

#preloader2 {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100vh;

    background: #000;

    display: flex;
    align-items: center;
    justify-content: center;

    z-index: 99999;

    opacity: 1;
    visibility: visible;

    transition: opacity 0.7s ease, visibility 0.7s ease;
}

#preloader2.loaded {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* LOADING TEXT */

.loader-text {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 28px;

    font-family: Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;

    letter-spacing: 12px;
}


/* INDIVIDUAL LETTERS */

.loader-text span {
    color: #071b0d;

    opacity: 0.25;

    animation: loadingGlow 1.6s infinite ease-in-out;
}


/* DIFFERENT ANIMATION DELAY */

.loader-text span:nth-child(1) {
    animation-delay: 0s;
}

.loader-text span:nth-child(2) {
    animation-delay: 0.12s;
}

.loader-text span:nth-child(3) {
    animation-delay: 0.24s;
}

.loader-text span:nth-child(4) {
    animation-delay: 0.36s;
}

.loader-text span:nth-child(5) {
    animation-delay: 0.48s;
}

.loader-text span:nth-child(6) {
    animation-delay: 0.60s;
}

.loader-text span:nth-child(7) {
    animation-delay: 0.72s;
}


/* GLOW ANIMATION */

@keyframes loadingGlow {

    0% {
        color: #06140a;
        opacity: 0.2;
        text-shadow: none;
    }

    40% {
        color: #08c8d4;
        opacity: 1;

        text-shadow:
            0 0 8px rgba(8, 200, 212, 0.45),
            0 0 18px rgba(8, 200, 212, 0.2);
    }

    70% {
        color: #08c8d4;
        opacity: 0.8;
    }

    100% {
        color: #06140a;
        opacity: 0.2;
        text-shadow: none;
    }
}


/* HIDE PRELOADER */

#preloader.loaded {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* MOBILE */

@media (max-width: 600px) {

    .loader-text {
        gap: 12px;

        font-size: 17px;

        letter-spacing: 6px;
    }
}





.call-to-action {
	background: url('../images/cta.jpg');
	background-position: -10px -110px;
	text-align: center;
	background-size: 100% auto;
	background-color: rgba(0,0,0,0.7);
	background-blend-mode: overlay;
}
.cta-content {
	position: relative;
	padding: 100px 0;
}

.call-to-action h3 {
	font-size: 22px;
	text-transform: uppercase;
}

.call-to-action p {
	font-size: 22px;
}


.call-to-action h2 {
	font-size: 150px;
	font-weight: 800;
	text-transform: uppercase;
}

.call-to-action .work-together-btn {
	text-align: center;
	margin: 0 auto;
	display: inline-block;
}

.call-to-action .work-together-btn a {
	display: block;
	transition: all 0.3s ease-in-out; 
	padding:15px 100px;
	background-color:#01ced1;
	border-radius: 80px;
}


.call-to-action .work-together-btn a:hover {
	background-color: var(--secondary-color);
}

.call-to-action .work-together-btn a span {
	width: 100%;
	font-weight: 700;
	text-transform: capitalize;
	color: var(--dark-color);
	transition: all 0.3s ease-in-out;
}

.call-to-action .work-together-btn a:hover span {
	color: var(--primary-color);
}




@media (max-width: 768px) {
	.call-to-action h2 {font-size: 40px; font-weight: 700;}
.call-to-action {background-position: right; background-size: cover;}
.call-to-action h3 { font-size: 16px; margin-bottom: 10px;}

.call-to-action p {font-size: 14px;}
.call-to-action .work-together-btn a span {font-size: 14px;}
.call-to-action .work-together-btn a {padding: 10px 70px;}
}


@media (max-width: 991px) {
.call-to-action {background-position: right; background-size: cover;}
.call-to-action p {font-size: 18px;}
.call-to-action h3 { font-size: 21px; margin-bottom: 10px;}
.call-to-action h2 {font-size: 80px; font-weight: 700;}
}


@media (min-width: 1120px) {
.call-to-action h2 {font-size: 100px; font-weight: 700;}	
.call-to-action {background-position: 0 10px; background-size: cover;}	
}





/* DESIGN */
.works-inner-section-area {
	position: relative;
	z-index: 1;

}

.sp1 {
	padding: 100px 0 100px;
}

.works-inner-section-area .about-all-images-area {
	position: relative;
}

.space100 {
	height: 100px;
}

.space70 {
	height: 70px;
}

.works-inner-section-area .about-all-images-area .img1 img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 100px;
}

.works-inner-section-area .works-header-area.specing2 {
	padding: 0 0 0 30px;
}
.heading2 h5 {
	font-size: 18px;
	line-height: 28px;
	font-weight: 500;
	color: var(--accent-color);
	border-radius: 8px;
	transition: all 0.4s;
	position: relative;
	z-index: 1;
	display: inline-block;
	margin-bottom: 16px;
}
.heading2 h5::after {
	position: absolute;
	content: "";
	left: 0;
	top: -6px;
	width: 20px;
	height: 2px;
	transition: all 0.4s;
	background: var(--accent-color);
}

.heading2 h2 {
	font-size: 44px;
	line-height: 52px;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 16px;
}

.heading2 p, .heading8 p {
	font-size: 16px;
	line-height: 26px;
	font-weight: 400;
	color: #F0FCFF;
}


/* =========================================
   WORKS / SERVICES SECTION RESPONSIVE
   ========================================= */

/* ---------- Large Tablets / Small Laptops ---------- */
@media (max-width: 1240px) {
.main-menu ul li.nav-item a {
	font-size: 16px;
	font-weight: 600;
	padding: 31px 23px !important;

}

}





@media (max-width: 1199px) {
	.bg-body2 {background-position: center 0;background-size: cover;}
    .works-inner-section-area {
        padding: 80px 0;
    }

    .works-inner-section-area .row {
        margin-bottom: 50px;
    }

    .works-inner-section-area .col-lg-1 {
        display: none;
    }



    .works-inner-section-area .col-lg-5 {
        width: 50%;
    }

    .about-all-images-area {
        padding: 0 10px;
    }

    .about-all-images-area .img1,
    .about-all-images-area .img2 {
        text-align: center;
    }


    .works-header-area {
        padding-left: 20px;
        padding-right: 20px;
    }

    .works-header-area h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .works-header-area h5 {
        font-size: 14px;
    }

    .works-header-area p {
        font-size: 15px;
        line-height: 1.7;
    }

    .space100 {
        height: 60px;
    }
	
	
	
	
	
}


/* ---------- Tablets ---------- */
@media (max-width: 991px) {
.bg-body2 {background-position: center 0;background-size: cover;}
    .works-inner-section-area {
        padding: 70px 0;
    }

    /*
       Remove the desktop 6/5 column structure.
       Each row becomes a vertical section.
    */

    .works-inner-section-area .row {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 70px;
    }

    .works-inner-section-area .col-lg-6,
    .works-inner-section-area .col-lg-5 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    /* Image area */
    .about-all-images-area {
        width: 100%;
        padding: 0;
        margin-bottom: 40px;
    }

    .about-all-images-area .row {
        margin-bottom: 0;
        display: flex;
        align-items: center;
    }

    .about-all-images-area .col-lg-6 {
        width: 50%;
        flex: 0 0 50%;
    }

.heading2 h5::after {display: none;}



    /* Remove large desktop spacing */
    .space100 {
        height: 30px;
    }

    /* Text */
    .works-header-area {
        padding: 0 20px;
        text-align: center;
    }

    .works-header-area h5 {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .works-header-area h2 {
        font-size: 32px;
        line-height: 1.2;
        margin-bottom: 18px;
    }

.works-header-area p {
	font-size: 16px;
	line-height: 26px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
 /* -------------------------------
       ALL THREE SECTIONS
       ------------------------------- */

    .digital-transformation-row,
    .ai-cybersecurity-row,
    .deep-tech-row {
        display: flex;
        flex-direction: column;
    }


    /* -------------------------------
       IMAGE FIRST
       ------------------------------- */

    .digital-transformation-row .col-lg-6,
    .ai-cybersecurity-row .col-lg-6,
    .deep-tech-row .col-lg-6 {
        order: 1;
    }


    /* -------------------------------
       TEXT SECOND
       ------------------------------- */

    .digital-transformation-row .col-lg-5,
    .ai-cybersecurity-row .col-lg-5,
    .deep-tech-row .col-lg-5 {
        order: 2;
    }
	
	
.works-inner-section-area .about-all-images-area .img1 img, .about-all-images-area img {
	height: auto;
	width: 80%;
	object-fit: contain;
	-o-object-fit: contain;
}

}





/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.hero-video-content p {
	width: 100%;
		font-size: 15px;
	line-height: 30px;
}

.social-con {
	top: 65%;
	right:30px;
}

.heading2 h5::after {display: none;}


	.bg-body2 {background-position: center 0;background-size: cover;}
	

    .works-inner-section-area {
        padding: 50px 0;
        overflow: hidden;
    }

    .works-inner-section-area .container {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .works-inner-section-area .row {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 55px;
    }

    .works-inner-section-area .col-lg-6,
    .works-inner-section-area .col-lg-5 {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    /* =========================
       IMAGE PAIRS
       ========================= */

    .about-all-images-area {
        margin-bottom: 30px;
    }

    .about-all-images-area .row {
        display: flex;
        flex-wrap: nowrap;
        margin: 0 -5px;
    }

    .about-all-images-area .col-lg-6,
    .about-all-images-area .col-md-6 {
        width: 50%;
        flex: 0 0 50%;
        padding: 0 5px;
    }

    .about-all-images-area .img1,
    .about-all-images-area .img2 {
        width: 100%;
    }

    .about-all-images-area {
        max-width: 520px;
        margin: 0 auto 30px;
    }


    .about-all-images-area .space100 {
        height: 10px;
    }
	
	.works-inner-section-area .about-all-images-area .img1 img, .about-all-images-area img {
	height: auto;
	width: 80%;
	object-fit: contain;
	-o-object-fit: contain;
}
	



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

    .works-header-area {
        padding: 0 5px;
        text-align: center;
    }

    .works-header-area h5 {
        font-size: 12px;
        line-height: 1.5;
        margin-bottom: 8px;
    }

    .works-header-area h2 {
        font-size: 27px;
        line-height: 1.25;
        margin-bottom: 15px;
    }

.works-header-area p {
	font-size: 17px;
	line-height: 34px;
	margin-bottom: 0;
}

    .works-header-area .space16 {
        height: 12px;
    }

    .space30.d-lg-none {
        display: block !important;
        height: 25px;
    }
	
	.works-inner-section-area .works-header-area.specing2 {
	padding: 0 0 0 0;
}
}


/* ---------- Small Mobile ---------- */
@media (max-width: 480px) {
.hero-video-content p {
	font-size: 12px;
	line-height: 21px;
	width: 100%;
}

.social-con {
	right: 30px;;
	top: 55%;
}	
.heading2 h5::after {display: none;}
	

	
.bg-body2 {background-position: center 0;background-size: cover;}
    .works-inner-section-area {
        padding: 40px 0;
    }

    .works-inner-section-area .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .works-inner-section-area .row {
        margin-bottom: 45px;
    }

    /* Images */
    .about-all-images-area {
        margin-bottom: 25px;
    }

    .about-all-images-area .row {
        margin-left: -4px;
        margin-right: -4px;
    }

    .about-all-images-area .col-lg-6,
    .about-all-images-area .col-md-6 {
        padding-left: 4px;
        padding-right: 4px;
    }

    .space100 {
        height: 12px;
    }

    /* Text */
    .works-header-area {
        padding: 0;
    }

    .works-header-area h5 {
        font-size: 11px;
    }

    .works-header-area h2 {
        font-size: 24px;
        line-height: 1.25;
    }

    .works-header-area p {
        font-size: 15px;
        line-height: 1.65;
    }

    .works-header-area .space16 {
        height: 10px;
    }

    .space30.d-lg-none {
        height: 20px;
    }
	
	.works-inner-section-area .about-all-images-area .img1 img, .about-all-images-area img {
	height: auto;
	width: 90%;
	object-fit: contain;
	-o-object-fit: contain;
}

.works-inner-section-area .works-header-area.specing2 {
	padding: 0 0 0 0;
}
}


/* ---------- Very Small Phones ---------- */
@media (max-width: 360px) {
.bg-body2 {background-position: center 0;background-size: cover;}
.works-inner-section-area .works-header-area.specing2 {
	padding: 0 0 0 0;
}
    .works-inner-section-area {
        padding: 35px 0;
    }

    .works-header-area h2 {
        font-size: 22px;
    }
	
	

    .works-header-area h5 {
        font-size: 10px;
    }
	
.heading2 h5::after {display: none;}

    .works-header-area p {
        font-size: 15px;
    }

    .about-all-images-area .col-lg-6,
    .about-all-images-area .col-md-6 {
        padding-left: 3px;
        padding-right: 3px;
    }

    .about-all-images-area .row {
        margin-left: -3px;
        margin-right: -3px;
    }
	
	.works-inner-section-area .works-header-area.specing2 {
	padding: 0 0 0 0;
}


    .about-all-images-area {
        max-width: 400px;
        margin-bottom: 25px;
    }

.works-inner-section-area .about-all-images-area .img1 img, .about-all-images-area img {
	height: auto;
	width: 80%;
	object-fit: contain;
	-o-object-fit: contain;
}





}





/* =========================================================
 DIGITAL Transformation Page
========================================================= */
.tech-bullet-list {
    list-style: none;
    padding-left: 0;
}

.tech-bullet-list li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 10px;
}

.tech-bullet-list li::before {
    content: "\f058";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 7px;
    top: 0px;
    color: #01ced1;
    font-size: 13px;
}


.cyber-threat-impact-section {
    padding:30px 0;
    color: #fff;
}

.cyber-threat-column {
    padding-right: 45px;
    border-right: 1px solid rgba(0, 220, 230, 0.35);
}

.cyber-impact-column {
    padding-left: 45px;
}


/* ================= HEADING ================= */

.cyber-section-heading {
    text-align: center;
    margin-bottom: 35px;
}

.cyber-section-heading h2 {
    color: #fff;
    font-size: 28px;
    font-weight: 400;
    margin-bottom: 12px;
}

.cyber-section-heading h2 span {
    color: #00d9df;
}

.cyber-section-heading p {
    color: #d0d0d0;
    font-size: 14px;
    line-height: 1.6;
    max-width: 600px;
    margin: 0 auto;
}


/* ================= THREAT GRID ================= */

.threat-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.threat-card {
    min-height: 125px;
    border: 1px solid rgba(0, 220, 230, 0.45);
    border-radius: 10px;
    background: rgba(8, 20, 21, 0.65);

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    text-align: center;

    transition: all 0.3s ease;
}

.threat-card-wide {
    grid-column: span 3;
    flex-direction: row;
    gap: 20px;
    min-height: 90px;
}

.threat-icon {
    font-size: 38px;
    color: #00e5eb;
    margin-bottom: 12px;

    text-shadow:
        0 0 8px rgba(0, 229, 235, 0.5);
}

.threat-icon img {
	width: 50%;
	height: auto;
}

.threat-card-wide .threat-icon {
    margin-bottom: 0;
}

.threat-card h3 {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height:24px;
    margin: 0;
}


/* Hover */

.threat-card:hover {
    border-color: #00e5eb;
    transform: translateY(-5px);
    background: rgba(0, 220, 230, 0.06);

    box-shadow:
        0 0 20px rgba(0, 220, 230, 0.12);
}

.threat-card:hover .threat-icon {
    transform: scale(1.08);
}


/* ================= BUSINESS IMPACT ================= */

.impact-flow {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 15px;
}

.impact-item {
	width: 180px;
	text-align: center;
}
.impact-icon {
    width: 120px;
    height:120px;

    margin: 0 auto 10px;

    border: 1px solid #00d9df;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #00e5eb;
    font-size: 31px;

    text-shadow:
        0 0 8px rgba(0, 229, 235, 0.5);

    box-shadow:
        0 0 12px rgba(0, 220, 230, 0.08);
}

.impact-icon img {
	width: 65%;
	height: auto;
}


.impact-item h3 {
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	margin: 0;
}


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

@media (max-width: 991px) {

    .cyber-threat-column {
        padding-right: 0;
        border-right: none;
        border-bottom: 1px solid rgba(0, 220, 230, 0.35);
        padding-bottom: 60px;
        margin-bottom: 60px;
		padding-left:0;
    }

    .cyber-impact-column {
        padding-left: 0;
    }
}


@media (max-width: 575px) {

    .threat-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .threat-card-wide {
        grid-column: span 2;
    }


    .impact-flow {
        gap: 25px 10px;
    }

    .cyber-section-heading h2 {
        font-size: 23px;
    }
}



/* Cybersecurity Framework */
.cyber-framework {
    padding:60px 0 60px;
    position: relative;
    overflow: hidden;
}

.cyber-framework .section-title {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 45px;
}

.cyber-framework .section-title h2 {
    color: #ffffff;
    font-size: 38px;
    font-weight: 400;
    margin-bottom: 10px;
}

.cyber-framework .section-title h2 span {
    color: #01ced1;
    font-weight: 500;
}

.cyber-framework .section-title p {
    color: #ffffff;
    opacity: 0.8;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}


/* Grid */
.framework-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}


/* Card */
.framework-card {
    position: relative;
    min-height: 190px;
    padding: 25px 25px 22px;
    border: 1px solid rgba(1, 206, 209, 0.35);
    border-radius: 8px;
    background: rgba(5, 18, 19, 0.65);
    display: flex;
    align-items: center;
    gap: 22px;
    transition: all 0.3s ease;
}

.framework-card:hover {
    border-color: #01ced1;
    transform: translateY(-4px);
    box-shadow: 0 10px 35px rgba(1, 206, 209, 0.12);
}

/* Icon */
.framework-icon {
	width: 100px;
	min-width: 100px;
	height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 15px;
}

.framework-icon img {
	width: 100%;
	height: auto;
	object-fit: contain;
	display: block;
}


/* Content */
.framework-content {
    flex: 1;
}

.framework-content h3 {
	color: #ffffff;
	font-size: 19px;
	font-weight: 600;
	line-height: 26px;
	margin: 0 0 12px;
}

.framework-content ul {
    margin: 0;
    padding-left: 17px;
}

.framework-content ul li {
	color: #ffffff;
	font-size: 15px;
	line-height: 30px;
	margin-bottom: 2px;
}



@media (max-width: 991px) {

    .framework-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .cyber-framework .section-title h2 {
        font-size: 32px;
    }
}


@media (max-width: 767px) {

    .cyber-framework {
        padding: 70px 0;
    }

    .framework-grid {
        grid-template-columns: 1fr;
    }

    .framework-card {
        min-height: auto;
    }

    .cyber-framework .section-title h2 {
        font-size: 28px;
    }
}


/* Technology Platform CTA */
.technology-platform-cta {
    padding: 20px 0 0;
}

.technology-cta-box {
    position: relative;
    padding: 40px 45px;
    border: 1px solid rgba(1, 206, 209, 0.35);
    border-radius: 12px;
    background: linear-gradient(
        135deg,
        rgba(1, 206, 209, 0.08),
        rgba(5, 20, 21, 0.65)
    );

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;

    overflow: hidden;
}


/* Subtle technology glow */
.technology-cta-box::before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    right: -120px;
    top: -150px;

    background: rgba(1, 206, 209, 0.12);
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}


.technology-cta-content {
    position: relative;
    z-index: 1;
    max-width: 700px;
}


.technology-cta-label {
    display: block;
    color: #01ced1;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 10px;
}


.technology-cta-content h2 {
    color: #fff;
    font-size: 30px;
    font-weight: 400;
    margin: 0 0 12px;
    line-height: 1.25;
}


.technology-cta-content h2 span {
    color: #01ced1;
}


.technology-cta-content p {
    color: #fff;
    opacity: 0.75;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
    max-width: 650px;
}


/* Button */
.technology-cta-button {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
}


.technology-cta-button a {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 14px 24px;

    background: #01ced1;
    color: #000;

    border-radius: 30px;

    font-size: 14px;
    font-weight: 600;
    text-decoration: none;

    transition: all 0.3s ease;
}


.technology-cta-button a span {
    font-size: 18px;
    line-height: 1;
    transition: transform 0.3s ease;
}


.technology-cta-button a:hover {
    background: #fff;
    color: #000;
    transform: translateY(-2px);
}


.technology-cta-button a:hover span {
    transform: translate(3px, -3px);
}


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

    .technology-platform-cta {
        padding: 35px 0 50px;
    }

    .technology-cta-box {
        padding: 30px 25px;
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }

    .technology-cta-content h2 {
        font-size: 25px;
    }

    .technology-cta-content p {
        font-size: 13px;
    }
}




/* =========================================================
   DIGITAL TRANSFORMATION - BREADCRUMB / PAGE TITLE
   ========================================================= */

.digital-page-title {
	position: relative;
	min-height: 500px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: radial-gradient( circle at 50% 50%, rgba(1, 206, 209, 0.10), transparent 45% ), linear-gradient( 135deg, #020909 0%, #010909 50%, #010606 100% );
	color: #ffffff;
}

/* =========================================================
   ANIMATED DOT GRID
   ========================================================= */

.digital-page-title::before {
    content: "";

    position: absolute;
    inset: -100px;

    background-image:
        radial-gradient(
            rgba(1, 206, 209, 0.45) 1px,
            transparent 1px
        );

    background-size: 42px 42px;

    opacity: 0.18;

    animation: digitalDotsMove 20s linear infinite;

    pointer-events: none;
}


/* =========================================================
   DIGITAL CIRCULAR RINGS
   ========================================================= */

.digital-page-title::after {
    content: "";

    position: absolute;

    width: 850px;
    height: 850px;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background:
        repeating-radial-gradient(
            circle,

            transparent 0px,
            transparent 55px,

            rgba(1, 206, 209, 0.055) 56px,
            rgba(1, 206, 209, 0.055) 57px,

            transparent 59px
        );

    opacity: 0.8;

    animation: techRings 25s ease-in-out infinite;

    pointer-events: none;
}


/* =========================================================
   CONTENT
   ========================================================= */

.digital-page-title .container {
    position: relative;
    z-index: 5;
}


.digital-page-title .inner_wrap {
	position: relative;
	z-index: 5;
	text-align: center;
	padding: 200px 0 100px;
}

/* =========================================================
   PAGE TITLE
   ========================================================= */

.digital-page-title h1,
.digital-page-title h2 {
    margin: 0;

    font-size: 58px;
    line-height: 1.15;

    font-weight: 300;

    color: #ffffff;

    letter-spacing: -1px;
}


/* Highlighted word */

.digital-page-title h1 span,
.digital-page-title h2 span {
    color: #01ced1;

    font-weight: 600;
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

.digital-page-title .breadcrumb {
    display: flex;

    justify-content: center;
    align-items: center;

    gap: 8px;

    margin: 18px 0 0;
    padding: 0;

    list-style: none;
}


.digital-page-title .breadcrumb li {
    display: inline-flex;

    align-items: center;

    font-size: 14px;

    color: rgba(255,255,255,0.75);
}


.digital-page-title .breadcrumb li + li::before {
    content: "•";

    margin-right: 8px;

    color: #01ced1;
}


.digital-page-title .breadcrumb a {
    color: #ffffff;

    text-decoration: none;

    transition: 0.3s ease;
}


.digital-page-title .breadcrumb a:hover {
    color: #01ced1;
}


.digital-page-title .breadcrumb .active {
    color: #01ced1;
}


/* =========================================================
   SMALL GLOWING TECH PARTICLES
   ========================================================= */

.digital-page-title .container::before,
.digital-page-title .container::after {
    content: "";

    position: absolute;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: #01ced1;

    box-shadow:
        0 0 8px #01ced1,
        0 0 18px rgba(1,206,209,0.5);

    opacity: 0.7;

    animation: techParticle 4s ease-in-out infinite;
}


.digital-page-title .container::before {
    left: 8%;
    top: 35%;
}


.digital-page-title .container::after {
    right: 8%;
    bottom: 30%;

    animation-delay: 2s;
}


/* =========================================================
   ANIMATION - DOTS
   ========================================================= */

@keyframes digitalDotsMove {

    0% {
        background-position: 0 0;
    }

    50% {
        background-position: 42px 42px;
    }

    100% {
        background-position: 84px 84px;
    }

}


/* =========================================================
   ANIMATION - RINGS
   ========================================================= */

@keyframes techRings {

    0% {
        transform:
            translate(-50%, -50%)
            scale(1)
            rotate(0deg);
    }

    50% {
        transform:
            translate(-50%, -50%)
            scale(1.04)
            rotate(4deg);
    }

    100% {
        transform:
            translate(-50%, -50%)
            scale(1)
            rotate(0deg);
    }

}


/* =========================================================
   ANIMATION - PARTICLES
   ========================================================= */

@keyframes techParticle {

    0%,
    100% {
        transform: translateY(0);
        opacity: 0.35;
    }

    50% {
        transform: translateY(-18px);
        opacity: 1;
    }

}



@media (max-width: 991px) {

    .digital-page-title {
        min-height: 300px;
    }

    .digital-page-title h1,
    .digital-page-title h2 {
        font-size: 44px;
    }

    .digital-page-title::after {
        width: 650px;
        height: 650px;
    }

}


@media (max-width: 767px) {

    .digital-page-title {
        min-height: 260px;
        padding: 80px 20px 50px;
    }

    .digital-page-title h1,
    .digital-page-title h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .digital-page-title .breadcrumb {
        margin-top: 12px;
    }

    .digital-page-title .breadcrumb li {
        font-size: 12px;
    }

    .digital-page-title::before {
        background-size: 30px 30px;
        opacity: 0.13;
    }

    .digital-page-title::after {
        width: 500px;
        height: 500px;
    }

}


@media (max-width: 480px) {

    .digital-page-title {
        min-height: 230px;
    }

    .digital-page-title h1,
    .digital-page-title h2 {
        font-size: 28px;
    }

    .digital-page-title .breadcrumb li {
        font-size: 11px;
    }

}


/* =========================================
   CYBER SECURITY APPROACH
========================================= */

.cyber-approach-section {
    position: relative;
    padding: 70px 0 80px;
    overflow: hidden;
}




/* Container */

.cyber-approach-section .container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}


/* =========================================
   HEADING
========================================= */

.cyber-approach-heading {
    text-align: center;
    margin-bottom: 38px;
}

.cyber-approach-heading h2 {
    margin: 0 0 8px;
    color: #ffffff;
}

.cyber-approach-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.75);
}


/* Small line underneath heading */

.heading-line {
    width: 65px;
    height: 2px;
    background: #01ced1;
    margin: 12px auto 0;
    box-shadow: 0 0 10px rgba(1, 206, 209, 0.45);
}


/* =========================================
   CARDS GRID
========================================= */

.cyber-approach-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}


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

.cyber-approach-card {
    position: relative;
    min-height: 285px;
    padding: 28px 22px 24px;
    text-align: center;

    background: rgba(8, 22, 23, 0.65);

    border: 1px solid rgba(1, 206, 209, 0.45);
    border-radius: 8px;

    transition: all 0.3s ease;
}


/* Card hover */

.cyber-approach-card:hover {
    border-color: #01ced1;

    background: rgba(1, 206, 209, 0.05);

    box-shadow:
        0 0 25px rgba(1, 206, 209, 0.12),
        inset 0 0 20px rgba(1, 206, 209, 0.03);

    transform: translateY(-4px);
}


/* =========================================
   ICON
========================================= */

.cyber-icon {
	height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 49px;
	width: 100%;
	margin: 0 auto 10px 0;
}



/* =========================================
   CARD TITLE
========================================= */

.cyber-approach-card h3 {
    min-height: 52px;

    margin: 0 0 12px;

    color: #ffffff;

    font-size: 17px;
    font-weight: 500;
    line-height: 1.35;
}


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

@media (max-width: 992px) {

    .cyber-approach-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 576px) {

    .cyber-approach-section {
        padding: 50px 0 60px;
    }

    .cyber-approach-heading h2 {
        font-size: 25px;
    }

    .cyber-approach-grid {
        grid-template-columns: 1fr;
    }

    .cyber-approach-card {
        min-height: auto;
    }

}


/* =========================================
   AI-BASED SECURITY SOLUTIONS
========================================= */

.ai-security-section {
    width: 100%;
    padding: 70px 20px;
    position: relative;
    overflow: hidden;
}


.ai-security-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;

    border: 1px solid rgba(1, 206, 209, 0.25);
    border-radius: 14px;
    padding: 35px 25px 25px;

    background: rgba(3, 15, 17, 0.55);
}

/* Heading */

.ai-security-heading {
    text-align: center;
    margin-bottom: 25px;
}

.ai-security-heading h2 {
    margin: 0;
    color: #ffffff;
}

.ai-security-heading h2 span {
    color: #01ced1;
}

.heading-line {
    width: 45px;
    height: 3px;
    background: #01ced1;
    margin: 12px auto 0;
    border-radius: 5px;

    box-shadow: 0 0 12px rgba(1, 206, 209, 0.7);
}


/* =========================================
   GRID
========================================= */

.ai-security-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}


/* =========================================
   ITEM
========================================= */

.ai-security-item {
    min-height: 145px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    padding: 20px 15px;

    border-right: 1px solid rgba(1, 206, 209, 0.22);
    border-bottom: 1px solid rgba(1, 206, 209, 0.22);

    transition: all 0.3s ease;
}


/* Remove right border from every 4th item */

.ai-security-item:nth-child(4n) {
    border-right: none;
}


/* Remove bottom border from last row */

.ai-security-item:nth-child(n+5) {
    border-bottom: none;
}


/* =========================================
   ICON
========================================= */

.ai-icon {
	width: 70%;
	height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
	color: #01ced1;
	transition: all 0.3s ease;
	filter: drop-shadow(0 0 5px rgba(1, 206, 209, 0.45));
}


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

.ai-security-item h3 {
    margin: 0;

    color: #ffffff;

    font-size: 15px;
    font-weight: 400;

    line-height: 1.45;
}


/* =========================================
   HOVER
========================================= */



.ai-security-item:hover .ai-icon {
    transform: translateY(-5px) scale(1.08);

    filter:
        drop-shadow(0 0 10px rgba(1, 206, 209, 0.85));
}

.ai-security-item:hover h3 {
    color: #01ced1;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .ai-security-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .ai-security-item:nth-child(4n) {
        border-right: 1px solid rgba(1, 206, 209, 0.22);
    }

    .ai-security-item:nth-child(2n) {
        border-right: none;
    }

    .ai-security-item:nth-child(n+5) {
        border-bottom: 1px solid rgba(1, 206, 209, 0.22);
    }

    .ai-security-item:nth-child(n+7) {
        border-bottom: none;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 576px) {

    .ai-security-section {
        padding: 45px 15px;
    }

    .ai-security-container {
        padding: 28px 15px 15px;
    }

    .ai-security-heading h2 {
        font-size: 24px;
    }

    .ai-security-grid {
        grid-template-columns: 1fr;
    }

    .ai-security-item,
    .ai-security-item:nth-child(2n),
    .ai-security-item:nth-child(4n) {
        border-right: none;
        border-bottom: 1px solid rgba(1, 206, 209, 0.22);
    }

    .ai-security-item:last-child {
        border-bottom: none;
    }

    .ai-security-item {
        min-height: 135px;
    }
}





/* =========================================================
   KEY DEEP TECH DOMAINS - COMPLETE SECTION CSS
   ========================================================= */

.deep-tech-domains-section {
    width: 100%;
    margin-top: 55px;
    margin-bottom: 60px;
}


/* ---------------------------------------------------------
   SECTION HEADING
--------------------------------------------------------- */

.deep-tech-domains-section > h2 {
    margin: 0 0 32px 0;
    padding: 0;

    color: #ffffff;

    font-size: 42px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.deep-tech-domains-section > h2 span {
    color: #01ced1;
}


/* ---------------------------------------------------------
   MAIN DOMAINS BOX
--------------------------------------------------------- */

.deep-tech-domains-grid {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    border: 1px solid rgba(1, 206, 209, 0.65);
    border-radius: 14px;

    overflow: hidden;

    background: rgba(0, 12, 16, 0.72);

    box-shadow:
        0 0 25px rgba(1, 206, 209, 0.04);
}


/* ---------------------------------------------------------
   DOMAIN CARD
--------------------------------------------------------- */

.deep-tech-domain-card {
    position: relative;

    display: flex;
    align-items: flex-start;

    gap: 20px;

    min-height: 230px;

    padding: 28px 24px;

    background: rgba(0, 15, 20, 0.35);

    transition:
        background 0.3s ease,
        box-shadow 0.3s ease;
}


/* ---------------------------------------------------------
   VERTICAL DIVIDER
--------------------------------------------------------- */

.deep-tech-domain-card:nth-child(odd) {
    border-right: 1px solid rgba(1, 206, 209, 0.35);
}


/* ---------------------------------------------------------
   HORIZONTAL DIVIDERS
--------------------------------------------------------- */

.deep-tech-domain-card:nth-child(n + 3) {
    border-top: 1px solid rgba(1, 206, 209, 0.35);
}


/* ---------------------------------------------------------
   HOVER EFFECT
--------------------------------------------------------- */

.deep-tech-domain-card:hover {
    background: rgba(1, 206, 209, 0.045);

    box-shadow:
        inset 0 0 30px rgba(1, 206, 209, 0.025);
}


/* ---------------------------------------------------------
   ICON CIRCLE
--------------------------------------------------------- */

.deep-tech-domain-icon {
	width: 100px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #01ced1;
	border-radius: 50%;
	background: rgba(1, 206, 209, 0.025);
	box-shadow: 0 0 15px rgba(1, 206, 209, 0.04);
	transition: all 0.3s ease;
	padding: 10px;
}

/* Icon image */

.deep-tech-domain-icon img {
	width: 100%;
	height: auto;
	object-fit: contain;
	display: block;
}

/* Icon hover */

.deep-tech-domain-card:hover .deep-tech-domain-icon {
    background: rgba(1, 206, 209, 0.08);

    box-shadow:
        0 0 20px rgba(1, 206, 209, 0.15);

    transform: translateY(-2px);
}


/* ---------------------------------------------------------
   DOMAIN CONTENT
--------------------------------------------------------- */

.deep-tech-domain-content {
    flex: 1;
    min-width: 0;
}


/* ---------------------------------------------------------
   DOMAIN TITLE
--------------------------------------------------------- */

.deep-tech-domain-content h3 {
	margin: 0 0 10px 0;
	padding: 0;
	color: #ffffff;
	font-size: 22px;
	font-weight: 600;
	line-height: 30px;
}


/* ---------------------------------------------------------
   APPLICATION LABEL
--------------------------------------------------------- */

.deep-tech-domain-content p {
	margin: 0 0 9px 0;
	padding: 0;
	color: #ffffff;
	font-size: 17px;
	font-weight: 600;
	line-height: 32px;
}


/* ---------------------------------------------------------
   LIST
--------------------------------------------------------- */

.deep-tech-domain-content ul {
    margin: 0;
    padding: 0 0 0 17px;

    list-style: none;
}


/* ---------------------------------------------------------
   LIST ITEMS
--------------------------------------------------------- */

.deep-tech-domain-content li {
    position: relative;

    margin: 0 0 7px 0;
    padding: 0;

    color: #ffffff;

    font-size: 16px;
    font-weight: 400;

    line-height: 1.45;
}


/* Cyan bullet */

.deep-tech-domain-content li::before {
    content: "•";

    position: absolute;

    left: -16px;
    top: -1px;

    color: #01ced1;

    font-size: 18px;
    font-weight: 700;
}


/* ---------------------------------------------------------
   LAST ITEM - REMOVE EXTRA SPACE
--------------------------------------------------------- */

.deep-tech-domain-content li:last-child {
    margin-bottom: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .deep-tech-domains-section {
        margin-top: 45px;
        margin-bottom: 50px;
    }

    .deep-tech-domains-section > h2 {
        font-size: 36px;
        margin-bottom: 28px;
    }

    .deep-tech-domain-card {
        min-height: 220px;
        padding: 24px 20px;
        gap: 17px;
    }

    .deep-tech-domain-icon {
        width: 54px;
        height: 54px;
        min-width: 54px;
    }

    .deep-tech-domain-icon img {
        width: 31px;
        height: 31px;
    }

    .deep-tech-domain-content h3 {
        font-size: 18px;
        margin-bottom: 22px;
    }

    .deep-tech-domain-content p,
    .deep-tech-domain-content li {
        font-size: 13px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .deep-tech-domains-section {
        margin-top: 40px;
        margin-bottom: 45px;
    }

    .deep-tech-domains-section > h2 {
        font-size: 30px;
        line-height: 1.25;
        margin-bottom: 24px;
    }


    /* One column on mobile */

    .deep-tech-domains-grid {
        grid-template-columns: 1fr;

        border-radius: 12px;
    }


    /* Remove vertical divider */

    .deep-tech-domain-card:nth-child(odd) {
        border-right: none;
    }


    /* Horizontal divider between every card */

    .deep-tech-domain-card:nth-child(n + 2) {
        border-top: 1px solid rgba(1, 206, 209, 0.35);
    }


    .deep-tech-domain-card {
        min-height: auto;

        padding: 24px 20px;

        gap: 18px;
    }


    .deep-tech-domain-icon {
        width: 52px;
        height: 52px;

        min-width: 52px;
    }


    .deep-tech-domain-icon img {
        width: 30px;
        height: 30px;
    }


    .deep-tech-domain-content h3 {
        font-size: 18px;
        line-height: 1.35;

        margin-bottom: 18px;
    }


    .deep-tech-domain-content p,
    .deep-tech-domain-content li {
        font-size: 13px;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .deep-tech-domains-section > h2 {
        font-size: 27px;
    }


    .deep-tech-domain-card {
        display: block;

        padding: 22px 18px;
    }


    .deep-tech-domain-icon {
        margin-bottom: 16px;
    }


    .deep-tech-domain-content h3 {
        margin-bottom: 16px;
    }


    .deep-tech-domain-content li {
        margin-bottom: 6px;
    }
}



/* =========================================================
   INTEGRATING CYBER SECURITY WITH DEEP TECH
   ========================================================= */

.cyber-deeptech-section {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 10px;
    margin-top: 0;
}


/* ---------------------------------------------------------
   LEFT INTRODUCTION CARD
   --------------------------------------------------------- */

.cyber-intro-card {
    grid-column: 1;
    grid-row: 1 / 3;

    position: relative;
    overflow: hidden;

    min-height: 520px;

    background: linear-gradient(
        145deg,
        rgba(3, 25, 28, 0.95),
        rgba(1, 12, 15, 0.98)
    );

    border: 1px solid rgba(1, 206, 209, 0.45);
    border-radius: 14px;

    display: flex;
    flex-direction: column;

    padding: 28px 25px 20px;
}


/* Introduction Heading */

.cyber-intro-content h2 {
	margin: 0 0 15px;
	font-size: 35px;
	line-height: 40px;
	font-weight: 500;
	color: #ffffff;
}

.cyber-intro-content h2 span {
    color: #01ced1;
}


/* Cyan line */

.cyber-title-line {
    width: 45px;
    height: 3px;

    background: #01ced1;

    margin: 12px 0 18px;

    border-radius: 10px;
}


/* Introduction paragraph */

.cyber-intro-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.85);
}


/* Intro Image */

.cyber-intro-image {
    width: 100%;
    flex: 1;

    display: flex;
    align-items: flex-end;
    justify-content: center;

    margin-top: 25px;
}

.cyber-intro-image img {
    width: 100%;
    height: 260px;

    object-fit: cover;

    border-radius: 10px;

    display: block;
}


/* ---------------------------------------------------------
   SECURITY CARDS
   --------------------------------------------------------- */

.cyber-security-card {
    position: relative;

    min-height: 250px;

    padding: 20px;

    background: linear-gradient(
        145deg,
        rgba(5, 25, 28, 0.95),
        rgba(1, 13, 16, 0.98)
    );

    border: 1px solid rgba(1, 206, 209, 0.35);

    border-radius: 14px;

    transition: all 0.3s ease;
}


/* Card Hover */

.cyber-security-card:hover {
    border-color: #01ced1;

    transform: translateY(-3px);

    box-shadow:
        0 10px 30px rgba(1, 206, 209, 0.10);
}


/* ---------------------------------------------------------
   CARD TOP
   --------------------------------------------------------- */

.cyber-card-top {
    display: flex;
    align-items: center;

    gap: 15px;

    margin-bottom: 18px;
}


/* ---------------------------------------------------------
   ICON
   --------------------------------------------------------- */

.cyber-icon2 {
	width: 80px;
	height: 80px;
	/* min-width: 58px; */
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(1, 206, 209, 0.55);
	border-radius: 50%;
	background: rgba(1, 206, 209, 0.03);
}

.cyber-icon2 img {
	width: 70%;
	height: auto;
	object-fit: contain;
	display: block;
}


/* ---------------------------------------------------------
   CARD TITLE
   --------------------------------------------------------- */

.cyber-security-card h3 {
	margin: 0;
	color: #ffffff;
	font-size: 27px;
	line-height: 30px;
	font-weight: 500;
}

/* ---------------------------------------------------------
   CARD DESCRIPTION
   --------------------------------------------------------- */

.cyber-security-card p {
	margin: 8px 0 10px;
	color: #ffffff;
	font-size: 17px;
	line-height: 34px;
}


/* ---------------------------------------------------------
   CARD LIST
   --------------------------------------------------------- */

.cyber-security-card ul {
    margin: 0;
    padding: 0 0 0 17px;

    list-style: none;
}

.cyber-security-card li {
	position: relative;
	margin-bottom: 7px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 15px;
	line-height: 30px;
}


/* Cyan bullet */

.cyber-security-card li::before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #01ced1;
    border-radius: 50%;
    left: -14px;
    top: 10px;

    box-shadow: 0 0 6px rgba(1, 206, 209, 0.6);
}


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


/* Tablet */

@media (max-width: 991px) {

    .cyber-deeptech-section {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }

    .cyber-intro-card {
        grid-column: 1 / 3;
        grid-row: auto;

        min-height: auto;
    }

.cyber-intro-image img {
	height: auto;
}

    .cyber-security-card {
        min-height: 240px;
    }
}


/* Mobile */

@media (max-width: 575px) {

    .cyber-deeptech-section {
        display: grid;

        grid-template-columns: 1fr;

        gap: 15px;

        margin-top: 30px;
    }

    .cyber-intro-card {
        grid-column: auto;
        grid-row: auto;

        min-height: auto;

        padding: 22px 18px;
    }

    .cyber-intro-content h2 {
        font-size: 22px;
    }

    .cyber-intro-image {
        margin-top: 20px;
    }

.cyber-intro-image img {
	height: auto;
}

    .cyber-security-card {
        min-height: auto;

        padding: 20px 18px;
    }

    .cyber-security-card h3 {
        font-size: 16px;
    }

}






/* =========================================
   Contact Details Section
========================================= */

.contact-details-section {
    padding: 160px 0 130px;
}

.contact-details-section .container {
    max-width: 1100px;
}

/* Section Heading */

.contact-details-section .section-title {
    margin-bottom: 55px;
}




.contact-details-section .title-line {
    width: 52px;
    height: 2px;
    background: #01ced1;
    margin: 12px auto 42px;
}




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

.contact-boxes {
    margin-left: -13px;
    margin-right: -13px;
}

.contact-boxes > div {
    padding-left: 13px;
    padding-right: 13px;
}

.contact-box {
	min-height: 222px;
	padding: 25px 25px 22px;
	background: rgba(0,0,0,0.3);
	border: 1px solid #FFFFFF1F;
	text-align: center;
	transition: all 0.3s ease;
}

.contact-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
}


/* =========================================
   Icons
========================================= */

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

.contact-icon i {
    font-size: 30px;
    color: #01ced1;
}


/* =========================================
   Box Heading
========================================= */

.contact-box h3 {
    margin: 0 0 14px;
    font-size: 17px;
    font-weight: 600;
}


/* =========================================
   Box Text
========================================= */

.contact-box p {
    margin: 0 0 7px;
    font-size: 14px;
    line-height: 28px;
}

.contact-box p:last-child {
    margin-bottom: 0;
}


/* Links */

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

.contact-box a:hover {
    color: #01ced1;
}


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

@media (max-width: 991px) {

    .contact-box {
        margin-bottom: 25px;
    }

}

@media (max-width: 767px) {

    .contact-details-section {
        padding: 60px 15px;
    }

    .contact-details-section .section-title {
        margin-bottom: 40px;
    }

    .contact-details-section .section-title h2 {
        font-size: 26px;
    }

    .contact-box {
        min-height: auto;
        padding: 30px 20px;
    }

}



/* =========================================================
   STRATEGIC BENEFITS SECTION
   ========================================================= */

.strategic-benefits-section {
    position: relative;
    width: 100%;
    padding: 70px 0 100px;
    overflow: hidden;
}

/* Subtle background effect */
.strategic-benefits-section::before {
    content: "";
    position: absolute;
    top: -250px;
    right: -180px;
    width: 700px;
    height: 700px;
    border-radius: 50%;
    background:
        repeating-radial-gradient(
            circle,
            rgba(1, 206, 209, 0.07) 0px,
            rgba(1, 206, 209, 0.07) 1px,
            transparent 2px,
            transparent 55px
        );
    opacity: 0.6;
    pointer-events: none;
}

.strategic-benefits-section .container {
    position: relative;
    z-index: 2;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 25px;
}


/* =========================================================
   SECTION HEADING
   ========================================================= */

.strategic-benefits-heading {
    text-align: center;
    margin-bottom: 38px;
}

.strategic-benefits-heading h2 {
    margin: 0;
    padding: 0;
    color: #ffffff;
    font-size: 45px;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: -0.5px;
}

.strategic-benefits-heading h2 span {
    color: #ffffff;
}

.strategic-benefits-heading h2 strong {
    color: #01ced1;
    font-weight: 500;
}


/* Heading underline */

.heading-line {
    position: relative;
    width: 200px;
    height: 2px;
    margin: 18px auto 0;
    background: #01ced1;
    opacity: 0.8;
}

.heading-line span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #01ced1;
    transform: translate(-50%, -50%);
    box-shadow: 0 0 10px rgba(1, 206, 209, 0.8);
}


/* =========================================================
   CARDS GRID
   ========================================================= */

.strategic-benefits-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}


/* =========================================================
   BENEFIT CARD
   ========================================================= */

.benefit-card {
    position: relative;
    min-height: 300px;
    padding: 20px 25px 25px;

    background: rgba(1, 15, 17, 0.92);

    border: 1px solid rgba(1, 206, 209, 0.45);
    border-radius: 15px;

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease;
}


/* Card hover */

.benefit-card:hover {
    transform: translateY(-6px);

    border-color: #01ced1;

    background: rgba(2, 22, 24, 0.98);

    box-shadow:
        0 10px 35px rgba(0, 0, 0, 0.35),
        0 0 20px rgba(1, 206, 209, 0.08);
}


/* =========================================================
   ICON
   ========================================================= */

.benefit-icon {
	width: 120px;
	height: 120px;
	margin: 0 auto 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1.5px solid #01ced1;
	border-radius: 50%;
	color: #01ced1;
	background: rgba(1, 206, 209, 0.015);
	box-shadow: inset 0 0 12px rgba(1, 206, 209, 0.03), 0 0 12px rgba(1, 206, 209, 0.05);
}

.benefit-icon img {
	width: 70%;
	height: auto;
}


/* =========================================================
   CARD TITLE
   ========================================================= */

.benefit-card h3 {
    margin: 0 0 18px;

    min-height: 50px;

    color: #ffffff;

    font-size: 18px;
    line-height: 1.35;

    font-weight: 600;

    text-align: center;
}


/* =========================================================
   CARD LIST
   ========================================================= */

.benefit-card ul {
    margin: 0;
    padding: 0;

    list-style: none;
}

.benefit-card ul li {
    position: relative;

    margin-bottom: 12px;
    padding-left: 18px;

    color: #eeeeee;

    font-size: 14px;
    line-height: 1.45;

    font-weight: 400;
}


/* Neon bullet */

.benefit-card ul li::before {
    content: "";

    position: absolute;
    left: 0;
    top: 7px;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #01ced1;

    box-shadow:
        0 0 6px rgba(1, 206, 209, 0.8);
}


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

/* Large desktop */
@media (max-width: 1200px) {

    .strategic-benefits-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .benefit-card {
        min-height: 290px;
    }
}


/* Tablet */
@media (max-width: 991px) {

    .strategic-benefits-section {
        padding: 55px 0;
    }

    .strategic-benefits-heading h2 {
        font-size: 27px;
    }

    .strategic-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
    }
}


/* Mobile */
@media (max-width: 575px) {

    .strategic-benefits-section {
        padding: 45px 0;
    }

    .strategic-benefits-section .container {
        padding: 0 15px;
    }

    .strategic-benefits-heading {
        margin-bottom: 30px;
    }

    .strategic-benefits-heading h2 {
        font-size: 24px;
    }

    .heading-line {
        width: 150px;
    }

    .strategic-benefits-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .benefit-card {
        min-height: auto;
        padding: 25px;
    }

    .benefit-icon {
        width: 80px;
        height: 80px;
    }

    .benefit-icon i {
        font-size: 36px;
    }

    .benefit-card h3 {
        min-height: auto;
        font-size: 18px;
    }
}