@charset "utf-8";

.transition-fade{
	opacity: 1;
	transition: 500ms;	
}

html.is-animation .transition-fade{
	opacity:0;
}

html.is-leaving .transition-fade{
	opacity: 0;
}

html, body {
		font-family: "Chivo","Helvetica Neue",Helvetica,Arial,sans-serif;
		font-size: 14px;
		font-weight: 400;
}


.bg-primary-color{
    background: #19364A;
}

.bg-secondary-color{
    background: #7FDEFF;
}

.bg-highlight-color{
    background: #EE5622;
}

.bg-dark-color{
    background: #0F1E28;
}

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

.bg-grey-light-color{
    background: #FAF9F9;
}

.bg-blue-light-color{
    background: #E1F4FD;
}


.text-primary-color{
    color: #19364A;
}

.text-secondary-color{
    color: #7FDEFF;
}

.text-highlight-color{
    color: #EE5622;
}

.text-bg-dark-color{
    color: #0F1E28;
}

.text-grey-color{
    color: #E8E6E5;
}

.text-grey-light-color{
    color: #FAF9F9;
}

.text-blue-light-color{
    color: #E1F4FD;
}


/* common style's */
a, a:focus, a:active, a.active {
		text-decoration: none;
		outline: none;
		color: #7FDEFF;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		transition: all 0.5s;
}

.homepage-links:hover {
		color: #EE5622;
		text-decoration: none;
		transform: translateX(5px);
}


.previous, .next {
	display: inline-block;
}

.previous:hover {
		color: #EE5622;
		text-decoration: none;
		transform: translateX(-5px);
}

.next:hover {
		color: #EE5622;
		text-decoration: none;
		transform: translateX(5px);
}

.button-custom {
		text-transform: uppercase;
		font-size: 1.5em;
}

h1 {
    font-family: "Chivo","Helvetica Neue",Helvetica,Arial,sans-serif;
}

h2,
h3,
h5 {
    font-family: "Chivo","Helvetica Neue",Helvetica,Arial,sans-serif;
}

h4 {
    font-family: "Chivo","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 28px;
}

h6 {
	font-family: "Chivo","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    line-height: 22px;
}

h5.portfolio {
    padding: 30px 0px 0px 0px;
		color:#bbb;
		font-size: 18px;
}

p {
    font-family: "Karla","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1.4em;
    line-height: 32px;
		margin-bottom: 0rem;
		padding: 0px 0px 30px 0px;
}

ul {
    font-family: "Karla","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1.4em;
    line-height: 32px;
}

li {
    padding-bottom: 0.75em;
}

p.small {
    font-family: "Karla","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 21px;
		color: #E8E6E5;
		padding: 0px;
}

p.aboutme {
    line-height: 26px;
}

/* button style */
.button-over {
    position: absolute;
    bottom: 10%;
    left: 5%;
}

.button-color {
    background: #008AAB;
    color: #fff;
}

.button-color:hover, .button-color:focus, .button-color:active, .button-color.active, .open > .dropdown-toggle.button-color {
    background: #1A7796;
    color: #fff;
}

.button-color:active, .button-color.active {
    background: #1A7796;
    color: #fff;
}

.left-wrapper, .right-wrapper{
		padding-right: 0px;
		padding-left: 0px;
}

/* banner css */
.banner-wrapper {
		position: fixed;
		width: 41.66666667%;
		height: 100%;	
		padding: 60px;
		background-color: #2CBED2;
		background: url(../img/Nicola_Photo.png);
		background-position: center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
}

.banner-wrapper-portfolio {
		position: fixed;
		width: 10%;
		height: 100%;	
		padding: 60px;
		background-color: #2CBED2;
		background-position: center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
}

.banner-wrapper-text
{
	position:absolute;
	bottom:0px;
	left:60px;
	right:40px
}

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

/* portfolio */
.portfolio-modal .modal-content h2 {
    margin: 0;
    font-size: 2em;
    letter-spacing: 0.2em;
    text-align: center;
}

.portfolio-wrapper{	
		padding: 40px;
}

.portfolio-tab .nav-tabs {
		position: fixed;
		top: 0;
		left: 41.66666667%;
		background: #fff;
		width: 58.33333333%;
		border-bottom: 0;
		padding: 20px 40px;
		margin-bottom: 30px;
		z-index: 99;
}

.portfolio-tab .nav-tabs > li > a {
		font-size: 18px;
		color: rgba(0, 0, 0, 0.28);
		margin-right: 30px;
		padding: 5px 0px;
		text-transform: uppercase;
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.portfolio-tab .nav-tabs > li.active > a,
.portfolio-tab .nav-tabs > li.active > a:hover, 
.portfolio-tab .nav-tabs > li.active > a:focus,
.portfolio-tab .nav-tabs > li > a:hover, 
.portfolio-tab .nav-tabs > li > a:focus {
		background: transparent;
		color: #000000;
		border: 1px solid transparent;
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.portfolio-tab .tab-content {
		margin-top: 45px;
}

.portfolio-tab .tab-content .tab-pane {
		margin-bottom: 30px;
}

.portfolioBox {
		position: relative;
		padding: 0px 0px;
		font-size: 18px;
		font-weight: 600;
		margin-bottom: 30px;
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.portfolioBox:hover {
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.portfolioBox .portfolio-name span {
		color: #666;
		display: block;
		font-size: 14px;
		font-weight: 400;
}

.portfolioBox .portfolio-price-count-box .portfolio-control .input-group .input-group-btn button:hover,
.portfolioBox .portfolio-price-count-box .portfolio-control .input-group .input-group-btn button:focus {
		outline: none;
		background: rgba(0, 0, 0, 0.15);
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.portfolioBox .portfolio-description {
		margin-top: 15px;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-left: 15px;
}

.portfolioBox .portfolio-description p {
		font-size: 14px;
		font-weight: 400;
		color: #666;
}

.portfolioBox .portfolio-description p strong {
		font-weight: 600;
		color: #000;
		font-size: 16px;
}

.servicesBox {
		position: relative;
		padding: 0px 0px;
		margin-bottom: 30px;
		transition: all 0.5s;
		-webkit-transition: all 0.5s;
}

.servicesBox .services-description {
		margin-top: 15px;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-left: 30px;
}

footer{
		background-color: #0F1E28;
		/*color: #2CBED2;*/
		padding-top: 100px;
        padding-bottom: 100px;
		padding-left: 0px;
		width: 100%;
}

/*
 side modal style 
.modal-content {
		border-radius: 0;
}

.modal-body {
		padding: 0;
}

.modal-header {
		padding: 20px 30px;
		border-bottom: 1px solid #e5e5e5;
}

.modal-title {
		text-transform: uppercase;
}

.modal .close {
		opacity: 0.4;
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
}

.modal .close:hover {
		opacity: 0.4;
		-ms-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
}

.modal.right .modal-dialog {
		position: fixed;
		margin: auto;
		width: 350px;
		height: 100%;
		-webkit-transform: translate3d(0%, 0, 0);
		-ms-transform: translate3d(0%, 0, 0);
		-o-transform: translate3d(0%, 0, 0);
		transform: translate3d(0%, 0, 0);
}

.modal.right .modal-content {
		height: 100%;
		overflow-y: auto;
		border: 0;
}

.modal.right .modal-body {
		padding: 30px;
}

.modal.right.fade .modal-dialog {
		right: -320px;
		-webkit-transition: opacity 0.3s linear, right 0.3s ease-out;
		-moz-transition: opacity 0.3s linear, right 0.3s ease-out;
		-o-transition: opacity 0.3s linear, right 0.3s ease-out;
		transition: opacity 0.3s linear, right 0.3s ease-out;
}

.modal.right.fade.in .modal-dialog {
		right: 0;
}
*/

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

.navbar {  
	background-color: white;	
}


.space {
	padding: 30px 0px 30px 0px;
}

hr{
    background-color: #19364A;
    padding-bottom: 2px;
    border-top: 0px;
}


/* media query for tab */
@media (max-width: 991px) {
	
		.banner-wrapper {
				position: relative;
				width: 100%;
				height: 800px;
				padding: 25px;
		}

		/*.banner-wrapper h2 {
				font-size: 38px;
				line-height: 38px;
		}

		.banner-wrapper h2 span {
				font-size: 16px;
		}

		.portfolio-wrapper {
				padding: 20px;
		}

		.portfolio-tab .nav-tabs {
				margin-bottom: 10px;
				position: relative;
				top: 0;
				left: 0;
				padding: 0;
				width: 100%;
		}

		.portfolio-tab .tab-content {
				margin-top: 20px;
		}*/

}

/* media query for Mobile 480*/
@media (max-width: 480px) {

		.modal.left .modal-dialog, .modal.right .modal-dialog {
				width: 100%;
		}

		.portfolio-tab .nav-tabs > li > a {
				margin-right: 0;
				padding: 2px 0px;
		}

		.portfolio-tab .nav-tabs > li {
				width: 100%;
		}
}


/* Portfolio */
.hover {
		/*box-shadow: 0 3px 3px rgba(25, 54, 74, 0.2);*/
		-webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
		transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hover:hover {
		/*-webkit-transform: scale(1.25, 1.25);*/
		box-shadow: 0 0px 0px rgba(0, 0, 0, 0.3);
		border: 0 0px 0px rgba(0, 0, 0, 0.0);
		/*transform: scale(.98, .98);*/
}

.hover:hover::after {
		opacity: 1;
}

::selection {
background: #7FDEFF;
color: #ffffff;
	
}

.carousel-indicators .active {
    background-color: #0F1E28;
}

.carousel-indicators [data-bs-target]  {
    background-color: #0F1E28;
}

canvas.svelte-1alg7vs {
    position: absolute;
    width: 100%;
    height: 60vh;
    z-index: -2;
    top: 0;
    left: 0;
    pointer-events: none;
    --gradient-color-1: #E1E1D6;
    --gradient-color-2: #F2F2EB;
    --gradient-color-3: #E1E1D6;
    --gradient-color-4: #F2F2EB
}

/*swiper*/
.swiper {
  width: 600px;
  height: 300px;
}
/*swup animations*/

/*portfolio slider*/
.testimonial-slider {
  background-color: #5072a7;
  padding: 3em 2em;
}
.testimonial-title {
  color: #fff;
}
.testimonial-title h2 {
  padding-left: 0.2em;
}
.card {
  margin: 0 0.5em;
  box-shadow: 2px 6px 8px 0 rgba(22, 22, 26, 0.18);
  border: none;
  height: 100%;
  line-height: 0px;
  transition: all .5s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.card:hover {
  transform: translate(-1%, -1%);
  transition: all .5s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.card--services {
  margin: 0 0.5em;
  box-shadow: 0px 0px 0px 0 rgba(22, 22, 26, 0.18);
  border: 2px solid #0F1E28;
}

.card--services:hover {
	-webkit-text-fill-color: #F2F2EB;
	text-fill-color: transparent;
	background-color: #19364A;
	transition: all 0.5s ease;
	transform: translate(0%, 0%);
  	transition: all .5s cubic-bezier(0, 0, 0, 1);
}

.card--circle {
  margin: 0 0.5em;
  box-shadow: 0px 0px 0px 0 rgba(22, 22, 26, 0.18);
  border: 2px solid #0F1E28;
  border-radius: 50px;
  vertical-align: baseline;
}

/*Marquee*/
.marquee {
  display: flex;
  overflow: hidden;
  height: 5rem;
  user-select: none;
  gap: 3rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
   transform: skewY(-3deg);
   /*transform: rotate(-5deg) translateY(-30px) translateX(50px);*/
}

.marquee-2 {
  display: flex;
  overflow: hidden;
  height: 5rem;
  user-select: none;
  gap: 3rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
   transform: skewY(5deg) translateY(90px);
   /*transform: rotate(-5deg) translateY(-30px) translateX(50px);*/
}

.marquee:hover {
  -webkit-text-stroke: 1.5px #FAF9F9;
	text-stroke: 1.5px #FAF9F9;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
	color: transparent;
	transition: all 0.5s ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

}

.marquee-2:hover {
  -webkit-text-stroke: 1.5px #FAF9F9;
	text-stroke: 1.5px #FAF9F9;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
	color: transparent;
	transition: all 0.5s ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

}

.marquee-group {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-width: 100%;
  animation: scroll 15s linear infinite reverse;
}

.marquee-group span {
  color: #FAF9F9;
  font-size: 5vw;
  white-space: nowrap;
  text-transform: uppercase;
  
}

*{
  padding:0;
  margin:0;
  boz-sizing:border-box;
}

#canvas{
  background:#E8E6E5;
}

@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - 12rem));
  }
}

@media only screen and (min-width: 360px) {
    .marquee-group span {
        font-size: 4vh;
    }
}