body, html{
	font-family: "freight-text-pro", serif;
	-webkit-font-smoothing: antialiased !important;
	color: #343434;
	width: 100% !important;
	height: 100% !important;
	scroll-behavior: smooth;
	background-color:white; 
	margin:0;
	padding:0;
}

link, visited, active{
	text-decoration:none;
}
	
hover{
	text-decoration:none;
}

img{
	display:block;
	border:none;
}

.anim-gif{
	max-width:225px;
	margin:0 auto;
}

.img-shadow{
	display:block;
	-webkit-box-shadow: 0 5px 10px 0 hsla(210, 2%, 47%, .25);
	box-shadow: 0 5px 10px 0 hsla(210, 2%, 47%, .25);
}

.cursor{
	cursor:pointer;
}

.wrapper{
    max-width: 100% !important;
    overflow:hidden;
}

header {
	width: 100% !important;
	background-color: white; /* Set the desired background color */
	z-index: 1000;
	margin-bottom:20px;
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15);
	-moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15);
	box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15);
	position: relative;
	z-index:100;
}


section {
	width:100%;
	background-color:#fff;
	text-align: center;
	display:block;
	position:relative !important;
	overflow:hidden;
}

footer {
	margin-top: 20px;
	position:relative;
	z-index:10;
}

.container{
	max-width:1600px !important;
	margin:0 auto !important;
	position:relative !important;
	padding:0 !important;
}

.row{
	width:100%;
	position:relative !important;
	margin:0;
	padding:0;
}

.equal-height-container {
	display: flex;
}

.equal-height-col {
	flex: 1;
}

/*CARD STYLES*/
.cardRow {
  display: block;
}

.cardCell {
	display: flex;
	flex-direction: row;
	justify-content: center;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	min-height: 225px;
}

.card {
	width: 99% !important;
	overflow: hidden;
	height: 135px !important;
	border: 1px solid #e7e7e7;
	border-radius: 4px;
	-webkit-box-shadow: 0 5px 10px 0 hsla(210, 2%, 47%, 0.08);
	box-shadow: 0 5px 10px 0 hsla(210, 2%, 47%, 0.08);
	margin: 5px auto !important;
	background-color:#fff !important;
}

.card-link {
	cursor: pointer;
	display: block;
	width: 100%;
	height: 100%;
	margin-top: 0 !important;
	color: #333333;
	overflow: hidden;
	padding: 0;
	border-top: 4px solid #fff;
}

.card-link:hover {
	cursor: pointer;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	color: #333333;
	overflow: hidden;
	padding: 0;
	border-top: 4px solid #b6cd5b;
}

.port-link{
	width:30% !important;
	margin:0 !important;
	padding:0 !important;
	display:inline-block;
}

#port1{
	width:100%;
	background:url("../img/ed-bg-bw-new.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port1:hover{
	background:url("../img/edi-bg-color-new.png") no-repeat center;
	background-size:cover;
}

#port2{
	width:100%;
	background:url("../img/pdf-bg-bw-new.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port2:hover{
	background:url("../img/pdf-bg-color-new.png") no-repeat center;
	background-size:cover;
}


#port3{
	width:100%;
	background-color:#fff !important;
	background:url("../img/nc2-bg-bw-new.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port3:hover{
	background:url("../img/nc2-bg-color-new.png") no-repeat center;
	background-size:cover;
}

#port4{
	width:100%;
	background-color:#fff !important;
	background:url("../img/ngl-bg-bw.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port4:hover{
	background-color:#fff !important;
	background:url("../img/ngl-bg-color.png") no-repeat center;
	background-size:cover;
}

#port5{
	width:100%;
	background:url("../img/cisco-disti-bw-new.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port5:hover{
	background:url("../img/cisco-disti-color-new.png") no-repeat center;
	background-size:cover;
}

#port6{
	width:100%;
	background:url("../img/exo-bg-bw.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port6:hover{
	background:url("../img/exo-bg-color.png") no-repeat center;
	background-size:cover;
}

#port7{
	width:100%;
	background:url("../img/ux-bg-bw.png") no-repeat center;
	background-size:contain;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port7:hover{
	background:url("../img/ux-bg-color.png") no-repeat center;
	background-size:contain;
}

#port8{
	width:100%;
	background:url("../img/btl-bg-bw.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port8:hover{
	background:url("../img/btl-bg-color.png") no-repeat center;
	background-size:cover;
}

.presidio-gif-1{
	max-width:300px;
	margin:0 auto;
}

.presidio-gif-2{
	max-width:320px;
	margin:0 auto;
}

.presidio-gif-3{
	max-width:728px;
	margin:0 auto;
}

.accordion-body{
	margin:0!important;
	padding:0 15px!important;
	background-color:#f7f7f7;
}

.modal-content{
	background-color:#f7f7f7;
}

.accordion-item{
	background-color:#f7f7f7;
	border-top:none !important;
	border-bottom:none !important;
	text-align: left;
	margin-top:15px !important;
}


/*BACKGROUND STYLES*/
.bg-black{
	background-color:#000;
}

.bg-grey{
	background-color:#f7f7f7;
}

.bg-white{
	background-color:#fff;
}

.bg-lt-grey{
	background-color:#e9e9e9;
}

.full-height {
	height: 100%;
}

/*STRUCTURE*/
.txt-left-1{
	text-align:left;
}

.txt-left-2{
	text-align:left;
	padding:0px 24px;
}

.review-content{
	min-height:150px;
}

.padding-top-1{
	padding-top:80px;
}

.padding-top-2{
	padding-top:0px;
}

.padding-top-3{
	padding-top:200px;
}

.padding-bottom-1{
	padding-bottom:80px;
}

.padding-bottom-2{
	padding-bottom:80px;
}

.padding-bottom-3{
	padding-bottom:200px;
}

.carousel-container{
	width:90% !important;
	margin:0 auto;
}

#site-header {
	width:100% !important;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background-color: #000;
    color: #fff;
    padding: 325px 0 0 !important;
	/*background-attachment: fixed;*/
	background-size: cover;
	z-index: 0;
}

#site-header video {
	height: 100%;
	width:100% !important;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	object-fit:cover;
	z-index: -1;
	transform: translateZ(-10px) scale(2);
	overflow-x:hidden !important;
	margin:0 !important;
}

video{
	height:100vh;
}


#about-me, #portfolio, #contact{
	z-index:100 !important;
	overflow:visible;
}

.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    background-color: white; /* Set the desired background color */
    z-index: 1000;
}

#site-header-ty {
	width:100% !important;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background-color: #000;
    color: #fff;
    padding: 325px 0 0 !important;
	background: url("../img/ty-bg.webp") no-repeat center;
	background-size: cover;
	z-index: 0;
}

/*NAV*/
.navbar-nav{
	width:100%;
    border-bottom: 3px solid #fff;
    margin-bottom: 5px;
	margin-top:15px;
	float:right;
}

.navbar-nav .active {
    border-bottom: 3px solid #e5e5e5;
}

.nav-item-1{
	width:100%;
	border-bottom:none;
	background:#fff;
	float:right !important;
} 

.nav-link {
	width:auto;
	font-size: 16px;
	font-weight:400 !important;
	background:#fff;
	padding-left:10px;
	float:right !important;
	border-bottom: 3px solid #fff;
		font-family: "futura-pt", sans-serif;

}

.nav-link:hover{
	border-bottom: 3px solid #e5e5e5;
}

.navbar-brand img {
	width: 50px;
	margin:5px 20px 0px 5px !important;
}

/* Remove border from toggler */
.navbar-toggler {
    border: 0 !important;
}

.navbar-toggler:focus,
.navbar-toggler:active,
.navbar-toggler-icon:focus {
    outline: none !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* Lines of the Toggler */
.toggler-icon{
    width: 30px;
    height: 3px;
    background-color: #343434;
    display: block;
    transition: all 0.2s;
}

/* Adds Space between the lines */
.middle-bar{
    margin: 5px auto;
}

/* State when navbar is opened (START) */
.navbar-toggler .top-bar {
    transform: rotate(45deg);
    transform-origin: 10% 10%;
}

.navbar-toggler .middle-bar {
    opacity: 0;
    filter: alpha(opacity=0);
}

.navbar-toggler .bottom-bar {
    transform: rotate(-45deg);
    transform-origin: 10% 90%;
}
/* State when navbar is opened (END) */

/* State when navbar is collapsed (START) */
.navbar-toggler.collapsed .top-bar {
    transform: rotate(0);
}

.navbar-toggler.collapsed .middle-bar {
    opacity: 1;
    filter: alpha(opacity=100);
}

.navbar-toggler.collapsed .bottom-bar {
    transform: rotate(0);
}
/* State when navbar is collapsed (END) */

/* Color of Toggler when collapsed */
.navbar-toggler.collapsed .toggler-icon {
    background-color: #777777;
}

.underline-nav{
	border-bottom:none;
	padding-bottom:0;
}

.underline-nav:hover{
	border-bottom:none;
}

header {
	margin-bottom: 0;
}

/* Remove the background color from the navbar */
.navbar {
  background-color: transparent !important;
}
/*FONT STYLES*/
h1 a{
	font-style:normal;
	font-weight:300;
	font-size:40px;
	line-height: 48px;
	margin:0 0 20px;
	color:#fff;
	text-decoration: none;
	font-family: "futura-pt", sans-serif;
}

h1{
	font-style:normal;
	font-weight:300;
	font-size:40px;
	line-height: 48px;
	margin:0 0 20px;
	text-decoration: none;
	font-family: "futura-pt", sans-serif;
}

h2{
	font-size:32px !important;
	margin-top:10px !important;
	margin-bottom:5px !important;
	line-height:42px !important;
	font-weight:700;
	font-family: "futura-pt-bold", sans-serif;
}

h3{
	font-style:normal;
	font-size:16px;
	line-height: 36px;
	margin:0 0 20px !important;
	font-weight:700;
	overflow:hidden;
	display:inline;
	padding-bottom:5px;
	text-transform: uppercase;
	font-family: "futura-pt-bold", sans-serif;
}

h4{

	font-style:normal;
	font-size:36px;
	line-height: 42px;
	margin:0 0 20px;
	font-weight:700;
}

h5{
	font-style:normal;
	font-size:24px;
	line-height: 32px;
	margin:0 0 20px;
	font-weight:300;
	text-transform:none;
}

p, li{
	font-style:normal;
	font-size:18px !important;
	line-height: 27px !important;
	margin:0 0 20px;
	font-weight:300;
}

.js-list ul{
	
}

.js-list li{
	font-style:normal;
	font-size:18px;
	line-height: 27px;
	margin:0 0 16px -35px;
	font-weight:700;
	color:#fff;
	list-style:none;
}

.underline{
	border-bottom: 3px dotted #e5e5e5;
	margin-bottom:15px;
}

.bold-txt{
	font-weight:900;
}

.caps-txt{
	text-transform: uppercase;
}

.margin-bot-text{
	margin:0;
}

.white-txt{
	color:#fff;
}

.sm-txt{
	font-style:normal;
	font-size:14px !important;
	line-height: 18px;
	margin:0 0 20px;
	font-weight:300;
}

a.black-link:link {color:#000;text-decoration:none;}
a.black-link:visited {color:#000;text-decoration:none;}
a.black-link:hover {color:#306695;text-decoration:none;}
a.black-link:active {color:#000;text-decoration:none;}

.text-right{
	text-align:right;
	border-right:solid 1px #cfcfcf;
	padding-top:16px;
	display:inline-block;
	width:50%;
}

.text-left{
	text-align:left;
	padding-top:16px;
	display:inline-block;
	display:inline-block;
	width:50%;
}

/*BUTTONS*/
.black-btn{
	width:10em;
	border-radius: 4px;
	text-align: center;
	display:inline-block;
	padding: .5em 1em .4em;
	background: #fff;
	border:solid 1px #000;
	font-weight: 300;
	position: relative;
	margin: 15px auto 0;
	font-size: 18px;
	color: #000;
	outline: none;
	box-shadow:none;
	text-decoration: none;
	-webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
	-moz-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

.black-btn:hover{
	background: #000;
	color: #fff;
	text-decoration: none;
}

/*ICONS*/
.contact-icon{
	width:75px;
	margin:0 auto 10px;
	display:block;
}

.contact-icon-link{
	width:75px;
	margin:0 auto 10px;
	display:block;
	cursor:pointer;
}

.contact-icon-link:hover .cls-email-2 {
	fill: #343434;
}

.contact-icon-link:hover .cls-email-1 {
	fill: #f4f4f4;
}

.cls-email-1 {
	fill: #343434;
	transition: fill 0.3s ease; /* Add a transition for the background property */
}

.cls-email-2, .cls-sm {
	fill: #f4f4f4;
	transition: fill 0.3s ease; /* Add a transition for the background property */
}

#linkedin-icon, #instagram-icon{
	width:24px !important;
	display:inline-block !important;
	margin:0 !important;
	padding:0 !important;
	transition: fill 0.3s ease; /* Add a transition for the background property */
}

.social-icon{
	width:30px !important;
	display:block !important;
	margin:0 5px !important;
	padding:0 !important;
}

.social-icon:hover .cls-sm, .linkedin-icon:hover .cls-sm{
	fill: #b4b4b4;
}

.icon-with-text {
  display: flex;
  align-items: center;
  float:right;
  margin:0 !important;
  padding:0 20px !important;
}


.pre-text {
	font-size: 14px;
	font-weight:500;
	margin-right: 25px;
}

.text {
	font-size: 14px;
	font-weight:500;
}

.me-img{
	max-width:250px;
	margin:0 auto 15px;
}

.img-dropshadow{
	overflow:visible;
	-webkit-box-shadow: 0px 0px 15px 0px #757575; 
	box-shadow: 0px 0px 15px 0px #757575;
}

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

#loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 2s linear infinite;
}

.modal-header{
	border-bottom:none;
	margin-bottom:0 !important;
	padding-bottom:0 !important;
}

.modal-body{
	margin:0;
	padding:0 0 15px;
}

.modal-content{
	margin-top:0 !important;
	padding-top:0 !important;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.video-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio (change as needed) */
	height: 0;
}

.video-sm-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 aspect ratio (change as needed) */
	height: 0;
}
.video-container iframe, .video-container video, .video-sm-container iframe, .video-sm-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 576px) {
.card {
	height: 175px !important;
}	
}

@media screen and (min-width: 768px) {

.cardRow {
  display: flex;
}	
	
.cardCell {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding:0;
}
	
.card {
	height: 200px !important;
}	
	
/*IMAGES*/
.review-logo{
	height:77px;
}

.icon-img{
	width:100px;
	margin:0 auto 24px;
}

.resource-img{
	display:block;
	width:100%;
	min-height:200px;
	margin:0 auto 24px;
	background-color:#000;
}
	
.padding-top-1{
	padding-top:100px;
}

.padding-top-2{
	padding-top:100px;
}

.padding-bottom-1{
	padding-bottom:100px;
}

.padding-bottom-2{
	padding-bottom:0px;
}

/*FONT STYLES*/
h1 a{
	font-style:normal;
	font-weight:300;
	font-size:65px;
	line-height: 90px;
	margin:0 0 20px;
	color:#fff;
	text-decoration: none;
}
	
h1{
	font-style:normal;
	font-weight:300;
	font-size:65px;
	line-height: 90px;
	margin:0 0 20px;
	text-decoration: none;
}

h2{
	font-size:42px !important;
	margin-top:10px !important;
	margin-bottom:0 !important;
	line-height:48px !important;
	font-weight:700;
}

h3{
	font-style:normal;
	font-size:18px;
	line-height: 48px;
	margin:0 0 20px;
	font-weight:700;
	overflow:hidden;
	display:inline;
	padding-bottom:5px;
	text-transform: uppercase;
}

h4{

	font-style:normal;
	font-size:42px;
	line-height: 56px;
	margin:0 0 20px;
	font-weight:700;
}

h5{
	font-style:normal;
	font-size:30px;
	line-height: 36px;
	margin:0 0 20px;
	font-weight:300;
}
	
p, li{
	font-style:normal;
	font-size:20px !important;
	line-height: 30px !important;
	margin:0 0 20px;
	font-weight:300;
}


}

@media screen and (min-width: 960px) {
.navbar-nav.custom-nav-align {
	justify-content: flex-end; /* Right-align the links */
}

.navbar-nav .nav-link {
	width: auto; /* Reset width to auto for small screens */
}	


.underline-nav{
	border-bottom:none;
	padding-bottom:5px;
	-webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
	-moz-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

.underline-nav:hover{
	border-bottom: 3px solid #e5e5e5;
	margin-bottom:15px;
}
	
#site-header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	padding: 0 !important;
	position: relative;
}
	
.card {
	height: 275px !important;
}	
	
}

@media screen and (min-width: 1200px) {
.nav-link {
	font-size: 18px;
}
	
.nav-item-1{
   width:13%;
} 

.navbar-nav {
	justify-content: flex-end; /* Align links to the right */
}
	
.port-link{
	width:25% !important;
}
	
.card {
	height: 300px !important;
}	
}
	
@media screen and (min-width: 1600px) {
.card {
	height: 375px !important;
}
	

#port5{
	width:100%;
	background:url("../img/cisco-disti-bw-new.png") no-repeat center;
	background-size:cover;
	transition: background 0.3s ease; /* Add a transition for the background property */
}

#port5:hover{
	background:url("../img/cisco-disti-color-new.png") no-repeat center;
	background-size:cover;
}

#port6{
}

#port6:hover{
}
}

.chevron-img-left{
	width:25px;
	margin:1px 0 0 -7px;
	display:block;
}

.chevron-img-right{
	width:25px;
	margin:1px -5px 0 0;
	display:block;
}

.carousel {
	margin: 15px auto 60px;
	padding: 0 80px;
}
.carousel .carousel-item {
	text-align: center;
	overflow: hidden;
}
.carousel .carousel-item h4 {
}
.carousel .carousel-item img {
	max-width: 100%;
	display: inline-block;
}

.carousel .carousel-item .btn i {
	font-size: 14px;
	font-weight: bold;
	margin-left: 5px;
}
.carousel .thumb-wrapper {
	margin: 5px;
	text-align: left;
	background: #fff;
}
.carousel .thumb-content {
	padding: 15px;
	font-size: 13px;
}
.carousel-control-prev, .carousel-control-next {
	height: 44px;
	width: 44px;
	background: #d2d2d2;	
	margin: auto 0;
	border-radius: 50%;
}
.carousel-control-prev i, .carousel-control-next i {
	font-size: 36px;
	position: absolute;
	top: 50%;
	display: inline-block;
	margin: -19px 0 0 0;
	z-index: 5;
	left: 0;
	right: 0;
	color: rgba(0, 0, 0, 0.8);
	text-shadow: none;
	font-weight: bold;
}
.carousel-control-prev i {
	margin-left: -3px !important;
}
.carousel-control-next i {
	margin-right: -3px;
}
.carousel-indicators {
	bottom: -50px;
}
.carousel-indicators li, .carousel-indicators li.active {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin: 4px;
	border: none;
}
.carousel-indicators li {	
	background: #ababab;
}
.carousel-indicators li.active {	
	background: #555;
}
