/* BRAND COLORS */
:root {
    --ps-text-blue: #399ce0; 
    --ps-text-dark-blue: #073763; 
    --ps-text-light-blue: #9bd6ff; 
    --ps-text-white: #fff; 
    --ps-text-gray: #595959;
    --ps-text-link-gold: #dceb52;
    --ps-text-link: #7fdfff;
    
}

* {box-sizing: border-box;}

::selection {
  background: #ced6dc; /* WebKit/Blink Browsers */
}
::-moz-selection {
  background: #ced6dc; /* Gecko Browsers */
}

.to-top-btn-new {
    color: #fff;
    width: 66px;
    height: 66px;
    background: #17568a;
    border-radius: 33px 33px 10px 10px;
    position: fixed;
    right: 50px;
    top: 86%;
    padding-top: 7px;
    display: none;
	z-index: 9999;
}

#hello {font-size: 2.8vw; color: var(--ps-text-link); font-weight: 700; line-height: 1.2em;}
b {font-weight: 700;}

#content-about {background: #0d4472;}
#content-experience {background: #7fdfff; padding: 2% 0; display: block; text-align: center;}
#content-experience h3 {display: block; padding-top: 5vh; color: #073763;}

.experience-boxes {display: flex; flex-wrap: wrap; text-align: center;}

.animated-experience-counter {width: 31%; margin: 2% 1% 2% 1%; padding: 20px 0 20px 0;}
.animated-experience-counter-headline {font-size: 2em; font-weight: 700; color: #073763; padding-bottom: 5%;}
.animated-experience-counter-number {font-size:6em; font-weight: 600; border-radius: 100%;
    background: #fff;
    display: inline-block;
    padding: 20px;
    width: 150px;
    height: 150px;
    color: #073763;
    margin-bottom: 5px;
    line-height: 100%; border: 10px solid #00ccff5c;}
.animated-experience-counter-number span.count {}
.animated-experience-counter-years {font-size: 1.6em; color: #073763; margin-top: -55px; font-weight: 300;}

#contact {height: 100vh;}

p span {border-radius: 20px; padding: 6px 18px; border: 1px solid #ffffff50; color: #fff; font-size: 0.9em; white-space: nowrap; display: inline-block; margin: 0 1% 1% 0;}
p span:hover {background: #7fdfff3d;cursor: default;}

body,html
{
	font-family: 'Montserrat', 'Roboto Condensed' , Arial, Verdana, Tahoma;
	font-size: 12px;
	background-color: #073763;
	color: var(--ps-text-white);
	overflow: auto;
	scroll-behavior: smooth;
}

/* ------ BASIC STUFF ------ */
a
{
	text-decoration: underline;
	color: var(--ps-text-link);
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

a:hover
{
	color: #fff;
}

p i
{
	font-style: italic;
}

h1
{
	font-size: 5.0em;
	margin: 1.3em auto .5em auto;
	font-weight: bold;
	color: #fff;
}

h2
{
	font-size: 2.0em;
	margin: 0 auto 1.2em auto;
	font-weight: bold;
	color: #399ce0;
}

h3
{
	font-size: 7.0em;
	margin: 0 auto .2em auto;
	font-weight: bold;
	padding-top: 12vh;
	color: var(--ps-text-white);
}

h4
{
	font-size: 2.0em;
	margin: 0 5% 3% 5%;
	font-weight: 400;
	color: var(--ps-text-light-blue);
}

h5
{
	font-size: 2.2em;
	margin: 2.2em auto .5em auto;
	font-weight: 500;
	color: var(--ps-text-link);
}

img 
{
	border: 0;
}

/* ------ ELEMENTS ------ */

/* .holder {width: 80%;margin: 0 auto;} */


#content
{
	float:left;
	width: 100%;
	/* background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #f6f6f6));
	background: -moz-linear-gradient(top, white 0%, white 100%, #f6f6f6%); */
}

.about-holder
{
    display: flex;
	margin: 0 auto; 
	text-align: left; 
}

.contact-holder
{
	width: 94%; 
	margin: 0 auto; 
	text-align: center; 
	overflow: hidden;
	font-size: 18px;
	line-height: 100%;
}

.contact-holder p
{
	line-height: 1.4em;
}

.about-holder p
{
	margin: 15px 0 25px 0;
    font-size: 1.5em;
    font-weight: 300;
    color: var(--ps-text-white);
    text-align: left;
    line-height: 1.5em;
}

.about-holder p:last-child
{
	margin: 15px 0 0 0;
}


.info-holder
{
	flex: 50%;
	padding: 3% 5% 0 0;
}

.skills-holder
{
	flex: 50%;
	padding: 3% 5% 0 0;
}

.skills-holder h4, .about-holder h4
{
	font-size: 2.5em;
	color: #2C2C2C;
}

.skills-holder .title
{
	margin: 25px 0 5px 0;
	font-size: 1.5em;
	line-height: 1.5em;
	color: #073763;
	font-weight: 700;
}


/* ------ HEADER ------ */

.bar
{
	position:fixed; 
	top: 0px;
	width: 100%;
	height: 70px;
	border-top: 0px solid #399ce0;
	border-bottom: 0px solid #c8c8c8;
	background: rgba(255, 255, 255, 0); 
	z-index: 999999;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.bar-full {
    background: #0c4271e6;
    -moz-box-shadow: 
    15px 0px 15px 0px #00000030;
	-webkit-box-shadow: 15px 0px 15px 0px #00000030;
	box-shadow:         15px 0px 15px 0px #00000030;
    backdrop-filter: blur(4px);
}
.nav-item-dark {color: #073763 !important;}

.bar-holder {width: 80%; margin: 0 auto;}

.bar .logo 
{
	height: 100%;
	padding: 7px;
}

.logo-fix
{
	display: inline-block; height: 70px;
}

.bar .navigation
{
	float: right;
	text-align: right;
}

.bar .navigation a
{
	float: left;
	font-size: 1.4em;
	color: #fff;
	padding: 0 20px;
	height: 70px; line-height: 70px;
	text-decoration: none;
}

.a:hover
{
	color: #fff;
	background-color : #399ce0;
}

.selected, .active
{
	color: #073763 !important;
	background-color : #7fdfff;
}

.bar .navigation a:hover
{
	color: var(--ps-text-link);
}

header,nav, a, img, li{
  transition: all 0.5s;
  -moz-transition: all 0.5s; /* Firefox 4 */
  -webkit-transition: all 0.5s; /* Safari and Chrome */
  -o-transition: all 0.5s; /* Opera */
}

.bar .menu-icon
{
	display: none;
	float: right;
	height: 100%;
	width: 15%;
}

.bar .menu-icon img
{
	height: 100%;
	width: 100%;
}

.bar .menu-list
{
	display: none;
	float: left;
	width: 100%;
	background: #16568a;
	position: relative;
	z-index: 999;
}

.bar .menu-list ul
{
	float: left;
	box-sizing: border-box;
	font-size: 19px;
	width: 100%;
	margin: 10px 0;	
}

.bar .menu-list ul li
{
	padding: 6px 20px;
	width: 50%;
	float: left;
	box-sizing: border-box;
	color: #67809F;
}

.bar .menu-list ul li a
{
	color: #fff;
	text-decoration: none;
	font-weight: bold;
	line-height: 28px;
}

.bar .menu-list ul li a:hover
{
	color: #116ca1;
	text-decoration: none;
}




/* ------ INTRO ------ */


.home
{
	background: rgb(57,156,224);
	background: linear-gradient(320deg, rgb(57 156 224) 0%, rgb(7 55 99) 100%);
}

#intro {height: 100vh; display: flex; align-items: center; justify-content: center; width: 80%;margin: 0 auto;}

.intro-text {flex:50%;}
.intro-image {flex:50%;}
.intro-image img {width: 100%;}

.intro p
{
	box-sizing: border-box;
	font-size: 1.6em;
	font-weight: 300;
	color: var(--ps-text-white);
	text-align: left;
	padding: 0 10% 5% 0;
	line-height:1.7em;
}

.button
{
	text-decoration: none;
    border-radius: 50px;
    padding: 12px 30px;
    border: 1px solid #fff;
    color: #fff;
    font-weight: 600;
    margin: 0 1em 1em 0;
    font-size: 0.9em;
    display: inline-block;
}

.button:hover
{
	border: 1px solid #fff;
    color: #073763;
    background:#fff;
    /* border: 1px solid #7fdfff;
    color: #073763;
    background:#7fdfff; */
    transform: translateY(-5px);
}

.button.active
{
	border: 1px solid #7fdfff;
    color: #073763;
    background:#7fdfff;
}

.button.active:hover
{
	border: 1px solid #fff;
    color: #073763;
    background:#fff;
    transform: translateY(-5px);
}



.arrow-up-down {
    padding: 50px 0 10px 0;
	text-align: center;
	position: relative;
    bottom: 70px;
    pointer-events: none;
}

.arrow-vert-animation {
    -webkit-animation: mover 1s infinite  alternate;
    animation: mover 1s infinite  alternate;
}
.arrow-vert-animation {
    -webkit-animation: mover 1s infinite  alternate;
    animation: mover 1s infinite  alternate;
}
@-webkit-keyframes mover {
    0% { transform: translateY(0); }
    100% { transform: translateY(-40px); }
}
@keyframes mover {
    0% { transform: translateY(0); }
    100% { transform: translateY(-40px); }
}


.content {   display: flex;    background: linear-gradient(320deg, rgb(57 156 224) 0%, rgb(7 55 99) 100%);
}

.content .holder
{
	display: flex;
    align-items: center;
    justify-content: center;
    width: 80%;
    margin: 0 auto 15px auto;
}

.section .holder
{
	border-top: 1px solid #399ce0;
	background-color: #fff;
	float:left;
	width: 100%;

}

.section .holder h1
{
	font-size: 4.0em;
	margin: .7em auto .1em auto;
	font-weight: bold;
	color: #399ce0;
	text-align: center;
}

/* --- TESTIMONIALS --- */

.testimonials-block
{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.testimonial
{
	width: 20%;
	margin: 2.5%;
	float:left;
}

.testimonial .photo
{
	display: block;
	width: 148px;
	margin: 20px auto 10px auto;
}

.testimonial .photo img
{
	padding: 5px;
	background-color: #ffffff5c;
	box-shadow: 0px 0px 0px #d7d7d7;
	border: 0px solid #d7d7d7;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
	border-radius: 50%;
	height: 100px;
    width: auto;
}

.testimonial .photo img:hover
{
	background-color: #399ce0;
	border: 0px solid #399ce0;
}

.testimonial .info
{
	border-radius: 15px;
	margin-bottom: 25px;
	background: #fff;
	background-image: url('/img/quotes-background.png');
	background-position: right bottom;
	background-repeat: no-repeat;
	padding: 15px;
}

.testimonial .info::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #ffffff;
    font-size: 0;
    line-height: 0;
    bottom: -32px;
    position: relative;
}

.testimonial .info p
{
	margin: 15px;
	font-size: 1.2em;
	color: #8f8f8f;
	text-align: left;
	line-height: 1.4em;
}

.testimonial .info p a
{
	color:#116ca1;
}

.testimonial .info p i
{
	color: #757575;
}

.testimonial .info p img
{
	margin: 0 0 3px 8px;
    height: 24px;
    vertical-align: middle;
}

.testimonial .info .arrow-bottom
{
	display: block;
	width: 17px;
	margin: 0 auto -9px auto;
	text-align: center;
}

.testimonial p img
{
	opacity: 1;
}


/* --- SHOWCASE --- */

.showcase-block
{
	width: 100%;
	margin: 0 auto 50px auto;
	text-align: center;
}

.showcase
{
	width: 30%;
	margin: 1.5%;
	display: inline-flex;
}

.showcase-full
{
	width: 96%;
	margin: 1.5%;
	display: inline-flex;
}

.showcase-full .info p
{
	margin: 5px 10px 10px 10px;
	font-size: 1.6em;
	text-align: left;
	/* line-height: 1.4em; */
	color: #399ce0;
	font-weight: 700;
}

.showcase-full .info p img
{
	width: 100%;
	height: auto;
}


.showcase .photo
{
	display: block;
	width: 148px;
	margin: 20px auto 10px auto;
}

.showcase .photo img
{
	display: block;
	width: 100%;
	padding: 6px;
	background-color: #fff;
	box-shadow: 0px 0px 15px #d7d7d7;
	border: 1px solid #d7d7d7;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.showcase .photo img:hover
{
	background-color: #399ce0;
	border: 1px solid #399ce0;
}

.showcase .info, .showcase-full .info
{
	padding: 15px 15px 0 15px;
	width: 100%;
	border-radius: 15px;
}

.showcase .info .project-title2
{
    background: #f5f5f5;
    top: -23px;
    position: relative;
    border-radius: 0 0 15px 15px;
    padding: 5px 25px 8px 25px;
    display: inline-block;
	font-size: 1.6em;
    color: #399ce0;
    font-weight: 700;
}

.showcase .info .project-title, .showcase-full .info .project-title {
    border-radius: 0 0 15px 15px;
    padding: 5% 0;
    display: inline-block;
    font-size: 2.0em;
    color: var(--ps-text-white);
    font-weight: 700;
}

.showcase .info .description, .showcase-full .info .description {
    font-weight: 500;
    background: #0e4675;
    padding: 6px 12px;
    border-radius: 10px;
    bottom: -10px;
    display: inline-block;
    position: relative;
    text-align: center;
    color: var(--ps-text-white);
    font-size: 10px;
}

.showcase .info p
{
	margin: 5px 10px 5px 10px;
	font-size: 1.6em;
	text-align: left;
	color: #399ce0;
	font-weight: 700;
}

.showcase .info img, .showcase-full .info img
{
	width: 100%;
	border-radius: 10px;
	display: block;
}

.showcase .info p span
{
	font-weight: 500;
}

.showcase .info .arrow-bottom
{
	display: block;
	width: 17px;
	margin: 0 auto -9px auto;
	text-align: center;
}

.footer-menu {padding-top: 4em;}
.footer-menu a {padding: 1em; text-decoration: none; font-size: 1.4em; color: #fff;}


.copyright
{
	background-color: var(--ps-text-dark-blue);
	text-align: center;
	width: 100%;
}

.copyright p
{
	padding: 3em 2em;
	color: var(--ps-text-white);
	line-height: 1.5em;
}

.mobile-menu {display: none;}

/* --- RESPONSIVE DESIGN --- */
@media screen and (max-height: 599px)
{
	#intro {height: auto;}
	#intro {flex-direction: column;}
	.home {padding-top: 100px;}
	.intro h1	{text-align: center;}
	.intro p {text-align: center; padding: 0 10% 5% 10%;}
}
@media screen and (max-width: 1025px) and (min-height: 600px)
{
	#intro {height: auto;}
	#intro {flex-direction: column;}
	.br {display: none;}
	.home {padding-top: 100px;}
	.intro h1	{text-align: center;}
	.intro p {text-align: center; padding: 0 10% 5% 10%;}
	.arrow-up-down {bottom: 0;}
}
@media screen and (mim-width: 1550px)
{
	.showcase {width: 30%;}
}

@media screen and (max-width: 996px)
{
	.br {display: none;}
 	#intro {flex-direction: column;}
	.intro-text, .intro-img {flex: 100%;}
	
	.holder {width:100% !important; margin-bottom: 4vh;}
	
	.bar-holder {width: 100%;}
	
	.about-holder {flex-direction: column;}
	
	.info-holder, .skills-holder {flex: 100%;}
	
	.skills-holder {padding: 20px 40px 20px 0px;}
	
	.testimonial img {width: initial !important;}
	
	.testimonial, .showcase	{width: 45%; margin: 2%;}
	
	.animated-experience-counter {flex: 50%; margin: 2% 0 2% 0;}
	.animated-experience-counter-headline {font-size: 15px;}
	.horizontal-scroll {display: flex; overflow-y: hidden; overflow-x: scroll; white-space: nowrap; }
	.testimonial .info {white-space: wrap; width: 300px;}
	
	/* DISABLE CLICK ON MOBILE */
	.showcase .info a {pointer-events: none;}
}

@media screen and (max-width: 970px)
{
	.navigation
	{
		display: none;
	}
	
	.bar
	{
		overflow: visible;
	}
	
	.bar .menu-icon {width: 50px; height: 50px;}
	
	.to-top-btn-new {right: 30px !important; top: 84% !important;}
	
	#menu {right: 10px; top: 10px; position: absolute; height: 100%;}
	
	.arrow-up-down {bottom: 0;}

}

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

	.bar { height: 70px; }
	.bar .logo{ height: 100%; padding: 7px;}
	.bar .menu-icon {width: 50px; height: 50px;}
	
	.bar .menu-list {height: 100vh; margin-top: -2px;}
	.bar .menu-list ul {width: 100%; margin: 10px 0; text-align: center;}
	.bar .menu-list ul li {width: 100%; padding: 12px;}
	
	.info-holder, .skills-holder {padding: 0 40px 0 40px;}
	
	.about-holder p, .skills-holder .title {font-size: 1.2em;}
	
	#hello {font-size: 26px; text-align: center;}
	
	.contact-holder p {font-size: 16px; margin: 0 30px;}
	
	.mobile-menu {display: block;}
	
	.hover-text {font-size: 1.0em !important;}
	
	.project-details {flex-direction: column;}
	
	.navigation
	{
		display: none;
	}
	
	.bar .menu-icon
	{
		display: block;
	}

	h3
	{
		font-size: 4.5em;
	}
	
	h4
	{
		font-size: 1.2em;
		margin: 0 40px 25px 40px;
        line-height: 1.3em;
	}
	
	.testimonial
	{
		width: 96%;
		float: left;
		margin: 2% 2% 8% 2%;
	}
	
	.showcase
	{
		width: 45%;
		margin: 2% 2% 4% 2%;
	}
	
	.showcase-full
	{
		width: 96%;
		margin: 2% 2% 4% 2%;
	}
	
	.showcase .info p, .showcase-full .info p
	{
		margin: 10px 15px 0px 15px;
	}
	
	.showcase .info .project-title, .showcase-full .info .project-title {font-size: 1.5em; padding-bottom: 6%;}
	
	.showcase .info img
	{
		max-height: 100%;
	}
	
	.bar.large a {
		height: 60%;
		line-height: 70px;
	}
	
	.home
	{
		padding-top: 100px;
	}
	
	.intro p
	{
	 text-align: center;
	 padding: 0 0 5% 0;
	 font-size: 1.3em;
	}
	

	.button
	{
    margin: 0 1em 1em 1em;
	}
	
	.footer-menu a {padding: 1em; text-decoration: none; font-size: 1.4em; display: block; width: 100%; text-align: center; border-bottom: 1px solid #ffffff20;}
	

}

/* ipad Mini Portrait */
@media only screen and (width:768px) and (resolution: 163dpi) {
#intro {height: auto;}
}

/* ipad Mini Landscape */
@media screen and (min-height: 1024px) and (orientation: landscape) {#intro {height: auto;}}


/* --- RESPONSIVE DESIGN IPHONE --- */
@media screen and (max-width: 480px)
{
    #intro {height: auto;}
	h3	{font-size: 3.2em;}
	.testimonial {width: 96%; margin: 2% 2% 8% 2%;}
	.showcase, .showcase-full {width: 90%; margin: 2% 5% 8% 5%;}
	.animated-experience-counter-number {width: 100px; height: 100px; font-size: 3.5em; padding: 14px; border-width: 7px;}
	.animated-experience-counter-years {margin-top: -40px; font-size: 1.2em;}
	p span {font-size: 0.7em;}
}

@media screen and (max-width: 425px)
{
	.animated-experience-counter-number {width: 100px; height: 100px; font-size: 3.4em; padding: 14px;}
	.animated-experience-counter-years {margin-top: -43px; font-size: 1.2em;}
}




/* ------ FADE ANIMATION ------ */
.fade {
    animation: fadein 1s;
    -moz-animation: fadein 1s; /* Firefox */
    -webkit-animation: fadein 1s; /* Safari and Chrome */
    -o-animation: fadein 1s; /* Opera */
}

@keyframes fadein {
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-moz-keyframes fadein { /* Firefox */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-webkit-keyframes fadein { /* Safari and Chrome */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-o-keyframes fadein { /* Opera */
    from {
        opacity:0;
    }
    to {
        opacity: 1;
    }
}