:root,
[data-bs-theme=light] {
  --bs-primary: #1363c6;
  --bs-primary-rgb: 19, 99, 198;
  --bs-cbx-blue1: #163e7e;
  --bs-cbx-blue2: #03266a;
  --bs-cbx-blue: #0071bc;
  --bs-cbx-darkblue: #1b1464;	
  --bs-link-color: #1363c6;
  --bs-cbx-gradient: linear-gradient(180deg,rgba(108,134,192,1),rgba(242,249,253,1),rgba(108,134,192,1));
  --bs-cbx-gradient-hover: linear-gradient(180deg,rgba(108,134,192,1),rgba(255,255,255,1),rgba(108,134,192,1));
  --bs-font-eurofighter: "eurofighter";
}

@font-face {
	font-family: "eurofighter";
	src: url("eurofighter.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: "jade";
	src: url("Ides of Jade.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}

img {
	pointer-events: none;
}

.cbx-img-4 {
	flex: 0 0 auto;
	width: 33.3333%;
	height: auto;
}

.ef {
	font-family: "eurofighter";
	letter-spacing: -.01em;
    color: #f2f9fd;
    -webkit-background-clip: text;
}

.jade {
	font-family: "jade";
	letter-spacing: -.01em;
    color: #f2f9fd;
    -webkit-background-clip: text;
}

.dbt-img {
    position: relative;
    overflow: hidden;
}

.dbt-img::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url("../img/tech_white.jpg") top left no-repeat;
    background-size: contain;
}

.cbx-qubit {
    width: 1em;
    height: 1em;
	background-image: url("../img/qubit.png");
}

.bg-cbx-img {
	position: relative;
	background: url("../img/main-header.jpg") top center no-repeat;
	background-size: contain;
	min-height: 28.125vw;
}

.bg-x-caption {
	background: #ffff;
	background-color: #ffff;
	background: conic-gradient(
		#ffff 16.666%, 
		#6c86c0 16.666%, 
	    #f2f9fd 33.333%, 
	    #6c88c1 33.333%, 
	    #6c88c1 50%, 
	    #bccbe4 50%, 
	    #ffff 66.666%, 
		#f2f9fd 66.666%, 
		#f2f9fd 83.333%, 
	    #ffff 83.333%);
	-webkit-background-clip:text;
	background-size: 50%;
	background-repeat: repeat;
	-webkit-text-fill-color:transparent;
}

.bg-cyber-img {
	position: relative;
	background: url("../img/sub-cyber.jpg") top center no-repeat;
	background-size: contain;
	min-height: 14.0625vw;
	background-attachment: fixed;
}

.bg-cyber-cover {
	position: relative;
	background: url("../img/background.jpg") top center no-repeat;
	background-size: cover;
	min-height: 26.3671875vw;
	background-attachment: fixed;
}

.bg-dtb {
	position: relative;
	background: url("../img/tech_white.jpg") top center no-repeat;
	background-size: contain;
	max-width: 100%;
	height: auto;
}

.bg-cyber {
	background: url("../img/cyberisk_light.jpg") top center no-repeat;
	background-size: contain;
}

.bg-audit {
	background: url("../img/audit_white.jpg") top center no-repeat;
	background-size: contain;
}

.bg-crisis {
	background: url("../img/crisis_light.jpg") top center no-repeat;
	background-size: contain;
}

.bg-cbx-grey {
	background: var(--bs-cbx-gradient);
}

.bg-x-white {
	background-color: white;
}


.bg-sub-primary {
    background-color: var(--bg-primary);
    background-image: linear-gradient(180deg, #001a78, #0296fc);
 }

.bg-gradient {
  background-image: var(--bs-gradient) !important;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg-x-gradient {
  background-image: var(--bs-cbx-gradient) !important;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg-cbx-light-blue {
    background-image: radial-gradient(#ffff, #2f81d3 95%);
 }

.bg-cbx-light-grey {
    background-image: radial-gradient(#ffff, #a9b8bd 65%);
 }

.text-cbx-blue {
  color: var(--bs-cbx-blue) !important;
}

.text-cbx-darkblue {
  color: var(--bs-cbx-blue1) !important;
}

.text-cbx-heading-blue {
  color: var(--bs-cbx-darkblue) !important;
}

.text-cbx-primary {
  color: var(--bs-primary) !important;
}

.text-cbx-white {
  color: #f2f9fd;
}

.text-cbx-white-gradient {
    background-color: #f2f9fd;
    background-image: linear-gradient(170deg, #f2f9fd, #6c88c1);;
    -webkit-background-clip: text;
    -moz-background-clip: text;
    -webkit-text-fill-color: transparent; 
    -moz-text-fill-color: transparent;
}

.border-blue {
   border-color: var(--bs-cbx-blue) !important;
}

.cbx-banner {
  background: #ffff;
  border-radius: 4px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .05), 0 2px 12px rgba(0, 0, 0, .15);
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  padding:1rem;
  margin-top:1rem;
  margin-bottom:2rem;
}

.cbx-banner::before {
  background-image: var(--bs-cbx-gradient);
  bottom: 0;
  content: " ";
  left: 0;
  position: absolute;
  top: 0;
  width: 6px;
}

.cyber-video {
	position: absolute;
	left: 50%;
	top: 0;
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	height: 26.3671875vw;
}

.btn.btn-primary {
	color: var(--bs-white);
	border: 2px solid var(--bs-cbx-blue);
	background-color: var(--bs-cbx-blue);
	transition: none;
}

.btn.btn-primary:hover {
    background-color: var(--bs-white);
    color: var(--bs-cbx-blue);
	border: 2px solid var(--bs-cbx-blue);
}

.btn.btn-light {
    color: var(--bs-primary);
    border: none;
}

.btn.btn-light:hover {
    color: var(--bs-white);
    background: var(--bs-dark);
}
.btn.btn-dark {
    color: var(--bs-white);
    border: none;
}
.btn.btn-dark:hover {
    color: var(--bs-primary);
    background: var(--bs-light);
}


/* Main Carousel Start */
.main-cap {
	position: relative;
	align-content: center;
}

.main-cap .main-cap-item {
	height: 28.125vw;
	container-type: size;
	container-name: maincap;
}

@container maincap (min-width: 300px) {
	.main-cap .main-cap-item .carousel-caption {
    	position: absolute;
		padding: 0;
 		left:50%;
		bottom: initial;
		top: 70%;
		transform: translate(-50%, -70%);
		height: auto;
		width: 30cqw;
		display:flex;
	}

	.carousel-caption h1 {
		font-size: 4cqh;
	}

	.carousel-caption .display-1 {
		font-size: 7cqh;
	}
}

/* Main Carousel End */

/* Cyber Carousel Start */
.cyber-cap {
	position: relative;
	align-content: center;
}

.cyber-cap .cyber-cap-item {
	height: 14.0625vw;
	container-type: size;
	container-name: cybercap;
}

@container cybercap (min-width: 300px) {
	.cyber-cap .cyber-cap-item .carousel-caption-left {
    	position: absolute;
		padding:0;
 		left:0%;
		top:45%;
		bottom: initial;
		transform: translate(0%,-45%);
		height: auto;
		width: 40cqw;
		display:flex;
	}

	.cyber-cap .cyber-cap-item .carousel-caption-right {
    	position: absolute;
		padding:0;
 		right:0%;
		top:45%;
		bottom:initial;
		transform: translate(0%,-45%);
		height: auto;
		width: 40cqw;
		display:flex;
	}

	.carousel-caption-right h1, .carousel-caption-left h1 {
		font-size: 8cqh;
	}

	.carousel-caption-right .display-1, .carousel-caption-left .display-1 {
		font-size: 14cqh;
	}
}
/* Cyber Carousel End */


.back-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    transition: 0.5s;
    z-index: 99;
}

/* NAV Start */

.cbx-navbar {
  background-color:transparent;
  box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15),inset 0 -1px 0 rgba(255,255,255,0.15)
}
.cbx-navbar::after {
  position:absolute;
  inset:0;
  z-index:-1;
  display:block;
  content:"";
  background-image:linear-gradient(var(--bs-cbx-gradient));
}

.navbar {
	padding: 0 0;
	margin-top: 0;
	box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15),inset 0 -1px 0 rgba(255,255,255,0.15);
}

.navbar-toggler {
  color: transparent;
  background: var(--bs-cbx-gradient);
  border-color: rgba(242,249,253,0.5);
  transition: 0.2s;
  margin-top: .25rem;
  margin-bottom: .25rem;
  padding: 0 .25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus, .navbar-toggler:active {
	color: transparent;
	border-color: rgba(242,249,253,0.5);
 	transform: scale(1.1);
	box-shadow: none;
}

.navbar-toggler.three-dots, .navbar-toggler:hover.three-dots, .navbar-toggler:focus.three-dots {
	color: var(--bs-cbx-blue);
}

.navbar-toggler-icon {
  width: 1em;
  height: 1em;
  vertical-align: baseline;
}

.navbar-toggler-icon.x {
  background-image: url("../img/x.png");
}

 .x-menu-toggler {
  display: inline-block;
  padding: .375rem .75rem;
  font-size: 1.25rem;
  line-height: 1;
  color: transparent;
  background: var(--bs-cbx-gradient-hover);
  border: var(--bs-border-width) solid rgba(242,249,253,0.5);
  border-radius: var(--bs-border-radius);
  transition: box-shadow 0.15s ease-in-out;
}

.x-menu-toggler:hover {
  text-decoration: none;
  border: var(--bs-border-width) solid var(--bs-primary);
  box-shadow: 0 0 0 .1rem;
}
.x-menu-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 .15rem;
}
.x-menu-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background: url("../../../css/x.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

 .navbar-expand .x-menu-toggler, .navbar-expand-sm .x-menu-toggler, .navbar-expand-md .x-menu-toggler, .navbar-expand-lg .x-menu-toggler, .navbar-expand-xl .x-menu-toggler, .navbar-expand-xxl .x-menu-toggler {
    display: none;
  }

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

.navbar-nav .navbar-brand img {
	height: 50px;
	transition: 0.5s;
}

.navbar-brand:hover img {
	transform: scale(1.1);
}

.nav-link img {
	transition: 0.5s;
	width: 24px;
	height: 24px;;
}

.nav-link:hover img {
	transform: scale(1.1);
}

.nav-link .badge {
	transition: 0.2s;
	background-color: #ffff;
	color: var(--bs-cbx-blue1);
}

.nav-link .badge.border {
	border: 1px var(--bs-border-style) var(--bs-cbx-blue) !important;
}

.nav-link:hover .badge {
	background-color: var(--bs-cbx-blue);
	color: white;
}

.nav-link.disabled .badge, .nav-link:disabled .badge {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}


.nav-link .badge img {
	transition: 0.5s;
	z-index: 9;
}

.nav-link:hover .badge img {
	transform: rotateX(360deg);
	background-color: white;
/*	transform: scale(1.1); */
	border: 3px solid white;
}

.navbar-nav .navbar-brand img {
	height: 5cqh;
}

@media (min-width: 992px) {
	.navbar-nav .navbar-brand {
		z-index: 2;
	}
	
	.navbar-nav .navbar-brand img {
		height: 5cqh;
	}
	
	.nav-link img {
		width: 1.5cqh;
		height: 1.5cqh;
	}
	
	.nav-link .badge {
	font-size: 1em;
	}
}


.sidebar {
  position:-webkit-sticky;
  position:sticky;
}
	
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
	left:auto;
	position: absolute;
	flex-basis: 100%;
	flex-grow: 1;
	align-items: center;
	width: auto;
	transform: none;
	
  }
  .offcanvas-lg {
    top: 0;
	bottom: auto;
  }
}

/* SVC Start */

.svc-card {
	transition: 0.5s;
	color: #1b1464;
}

.svc-card:hover {
/*	background: rgba(1, 95, 201, .2);  */
	background-color: var(--bs-primary);
}

.svc-card img {
	transition: 0.5s;
	border-radius: 50%;
/*	border: solid #4ab7e4; */
	z-index: 9;
}
.svc-card:hover img {
 /* transform: rotateX(360deg);	*/
	background-color: white;
	transform: scale(1.1);
	border: 3px solid white;
}

.svc-card .svc-card-body .svc-card-title {
    transition: 0.5s;
}

.svc-card:hover .svc-card-body .svc-card-title {
    transform: scale(1.2);
	color: var(--bs-white);
}
/*** Service End ***/


/* Responsive Tabs */

.sidebar ul {
	padding: 0;
	list-style: none;
	margin: 0;
}

.sidebar.sticky-lg-top {
	top: 100px;
}

.resp-tabs-list li {
	cursor: pointer;
	list-style: none;
}

.resp-accordion {
	display: none;
}
	 
.resp-tabs-content {
	display: none;
}

.resp-tabs-content-active {
	display: block;
}

.responsive-tabs-default .resp-tabs-list {
	display: block;
	border-radius: 6px;
	box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15),inset 0 -1px 0 rgba(255,255,255,0.15);
}

.responsive-tabs-default .resp-accordion, .responsive-tabs-default .resp-tabs-list > li {
	border-radius: 6px;
	word-spacing: normal;
	padding: .5vh .5vh;
	color: var(--bs-cbx-blue);
	text-align: left;
	font-family: nasalization, sans-serif;
	font-weight: 400;
	font-style: normal;
	cursor: pointer;
	transition: none;
	transition: background .22s, color .22s;
}
	 
.responsive-tabs-default .resp-accordion:hover, .responsive-tabs-default .resp-tabs-list > li:hover {
	text-shadow: .01em .01em .01em var(--bs-cbx-blue);
	transform: scaleX(1.1);
	transform-origin: left;
}

.responsive-tabs-default .resp-accordion.resp-tabs-active, .responsive-tabs-default .resp-tabs-list > li.resp-tabs-active {
	color: #fff;
	text-shadow: .01em .01em .01em #021152;
	background: var(--bs-cbx-blue);
	border-color: var(--bs-cbx-blue);
	-webkit-box-shadow: none;
	box-shadow: none;
}

.responsive-tabs-default .resp-accordion {
	display: block;
	border-radius: 0;
}

.responsive-tabs-default .resp-tabs-content {
	display: none;
	padding: 2vh;
	color: var(--bs-cbx-darkblue);
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	border-radius: 6px;
	box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15),inset 0 -1px 0 rgba(255,255,255,0.15);
}

@media (min-width: 992px) {
	.responsive-tabs.responsive-tabs-vertical {
		display: -ms-flexbox !important;
		display: -webkit-flex !important;
		display: flex !important;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.responsive-tabs.responsive-tabs-vertical .resp-tabs-list li {
		position: relative;
		z-index: 10;
		width: 100%;
		margin: 0;
		-webkit-flex-grow: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
	}
}

.responsive-tabs:not([data-type='accordion']) .resp-accordion {
	display: none;
}
.responsive-tabs:not([data-type='accordion']) .resp-tabs-list {
	display: block;
}
.responsive-tabs:not([data-type='accordion']) .resp-tabs-list .resp-tabs-active {
	pointer-events: none;
}


/* Typewriter 

.t-writer {
  overflow: hidden;
  border-right: .15em solid orange;
  white-space:nowrap;
  margin: 0 auto;
  animation: 
    typing 3.5s steps(32, end) normal both,
    blink-caret .75s step-end infinite normal;
}

@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

@keyframes blink-caret {
  from, to { border-color: transparent }
  50% { border-color: orange; }
}
*/

/*
.typewriter {
	display: inline-flex;
}

.typewriter span {
	word-break: break-all;
	height: 1.2em;
	width: 0;
	overflow: hidden;
	animation: type 3s infinite;
}

.typewriter span:before {
	content: "";
	display: inline-block;
}

@keyframes type {
	90%,100% {width: 100%}
}
*/

.type {
  display:inline-flex;
  vertical-align: bottom;
}

.type > span {
	display:grid;
	overflow: hidden;
	height:1.2em;
}

.type span span {
	width:0%;
	max-width:max-content;
	overflow: hidden;
	height:inherit;
	word-break:break-all;
	animation:
       t 2s linear infinite alternate,
       m 20s steps(5) infinite;
}

.type span span:before {
	content:" ";
	display:inline-block;
}

@keyframes t{
  90%,100% {width:100%}
}

@keyframes c{
  0%,100%{box-shadow:5px 0 0 #0000}
  50%    {box-shadow:5px 0 0 orange}
}

@keyframes m{
   100% {transform:translateY(-500%)}}
