/*!
 * Start Bootstrap - Freelancer v3.3.7+1 (http://startbootstrap.com/template-overviews/freelancer)
 * Copyright 2013-2016 Start Bootstrap
 * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE)
 */
/* Not supported in edge
:root {
  --white-color: #FFFFFF;
  --light-color: #445878;	
  --dark-color: #31353D;
  --black-color: #1C1D21;
  --link-color: #92CDCF;
}
*/
body {
	font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
	overflow-x: hidden;
}
p {
	font-size: 20px;
}
p.small {
	font-size: 16px;
}
p.small2 {
	font-size: 16px;
	padding-top: 20px;
	padding-bottom: 20px;
}
p.description {
	font-size: 20px;
	padding-top: 35px;
	padding-bottom: 35px;
}
p.description2 {
	font-size: 20px;
	padding-top: 35px;
}
a,
a:hover,
a:focus,
a:active,
a.active {
	color: #31353d;
}
a.email {
	color: #ffffff;
}
a.link {
	color: #92cdcf;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-weight: 700;
}
h3.centered {
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	text-align: center;
}
hr.star-light {
	padding: 0;
	border: none;
	border-top: solid 3px;
	text-align: center;
	max-width: 150px;
	margin: 25px auto 30px;
}
hr.star-primary {
	padding: 0;
	border: none;
	border-top: solid 5px;
	text-align: center;
	max-width: 250px;
	margin: 25px auto 30px;
}
hr.star-light:after,
hr.star-primary:after {
	content: "\f11b";
	font-family: FontAwesome;
	display: inline-block;
	position: relative;
	top: -0.8em;
	font-size: 2em;
	padding: 0 0.25em;
}
hr.star-light {
	border-color: #31353d;
}
hr.star-light:after {
	background-color: #ffffff;
	color: #31353d;
}
hr.star-primary {
	border-color: #31353d;
}
hr.star-primary:after {
	background-color: #ffffff;
	color: #31353d;
}
.img-centered {
	margin: 0 auto;
}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;

	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
header {
	text-align: center;
	background: #445878;
	color: #ffffff;
}
header .container {
	padding-top: 100px;
	padding-bottom: 50px;
}
header img {
	display: block;
	margin: 0 auto 20px;
}
header .intro-text .name {
	display: block;
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 2em;
}
header .intro-text .skills {
	font-size: 1.25em;
	font-weight: 300;
}
@media (min-width: 768px) {
	header .container {
		padding-top: 200px;
		padding-bottom: 100px;
	}
	header .intro-text .name {
		font-size: 4.75em;
	}
	header .intro-text .skills {
		font-size: 1.75em;
	}
}
.navbar-custom {
	background: #31353d;
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	border: none;
}
.navbar-custom .navbar-brand {
	color: #ffffff;
}
.navbar-custom .navbar-brand:hover,
.navbar-custom .navbar-brand:focus,
.navbar-custom .navbar-brand:active,
.navbar-custom .navbar-brand.active {
	color: #ffffff;
}
.navbar-custom .navbar-nav {
	letter-spacing: 1px;
}
.navbar-custom .navbar-nav li a {
	color: #ffffff;
}
.navbar-custom .navbar-nav li a:hover {
	color: #445878;
}
.navbar-custom .navbar-nav li a:focus,
.navbar-custom .navbar-nav li a:active {
	color: #ffffff;
}
.navbar-custom .navbar-nav li.active a {
	color: #ffffff;
	background: #445878;
}
.navbar-custom .navbar-nav li.active a:hover,
.navbar-custom .navbar-nav li.active a:focus,
.navbar-custom .navbar-nav li.active a:active {
	color: #ffffff;
	background: #445878;
}
.navbar-custom .navbar-toggle {
	color: #ffffff;
	text-transform: uppercase;
	font-size: 10px;
	border-color: #ffffff;
}
.navbar-custom .navbar-toggle:hover,
.navbar-custom .navbar-toggle:focus {
	background-color: #445878;
	color: #ffffff;
	border-color: #445878;
}
@media (min-width: 768px) {
	.navbar-custom {
		padding: 25px 0;
		-webkit-transition: padding 0.3s;
		-moz-transition: padding 0.3s;
		transition: padding 0.3s;
	}
	.navbar-custom .navbar-brand {
		font-size: 2em;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}
	.navbar-custom.affix {
		padding: 10px 0;
	}
	.navbar-custom.affix .navbar-brand {
		font-size: 1.5em;
	}
}
section {
	padding: 100px 0;
}
section h2 {
	margin: 0;
	font-size: 3em;
}
section.success {
	background: #445878;
	color: #ffffff;
}
@media (max-width: 767px) {
	section {
		padding: 75px 0;
	}
	section.first {
		padding-top: 75px;
	}
}
#portfolio .portfolio-item {
	margin: 0 0 15px;
	right: 0;
}
#portfolio .portfolio-item .portfolio-link {
	display: block;
	position: relative;
	max-width: 400px;
	margin: 0 auto;
}
#portfolio .portfolio-item .portfolio-link .caption {
	background: rgba(68, 88, 120, 0.9);
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: all ease 0.5s;
	-webkit-transition: all ease 0.5s;
	-moz-transition: all ease 0.5s;
}
#portfolio .portfolio-item .portfolio-link .caption:hover {
	opacity: 1;
}
#portfolio .portfolio-item .portfolio-link .caption .caption-content {
	position: absolute;
	width: 100%;
	height: 20px;
	font-size: 20px;
	text-align: center;
	top: 50%;
	margin-top: -12px;
	color: #ffffff;
}
#portfolio .portfolio-item .portfolio-link .caption .caption-content i {
	margin-top: -12px;
}
#portfolio .portfolio-item .portfolio-link .caption .caption-content h3,
#portfolio .portfolio-item .portfolio-link .caption .caption-content h4 {
	margin: 0;
}
#portfolio .portfolio-item-lg {
	margin: 0 0 15px;
	right: 0;
}
#portfolio .portfolio-item-lg .portfolio-link {
	display: block;
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
}
#portfolio .portfolio-item-lg .portfolio-link .caption {
	background: rgba(68, 88, 120, 0.9);
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: all ease 0.5s;
	-webkit-transition: all ease 0.5s;
	-moz-transition: all ease 0.5s;
}
#portfolio .portfolio-item-lg .portfolio-link .caption:hover {
	opacity: 1;
}
#portfolio .portfolio-item-lg .portfolio-link .caption .caption-content {
	position: absolute;
	width: 100%;
	height: 20px;
	font-size: 20px;
	text-align: center;
	top: 50%;
	margin-top: -12px;
	color: #ffffff;
}
#portfolio .portfolio-item-lg .portfolio-link .caption .caption-content i {
	margin-top: -12px;
}
#portfolio .portfolio-item-lg .portfolio-link .caption .caption-content h3,
#portfolio .portfolio-item-lg .portfolio-link .caption .caption-content h4 {
	margin: 0;
}
#portfolio * {
	z-index: 2;
}
@media (min-width: 767px) {
	#portfolio .portfolio-item {
		margin: 0 0 30px;
	}
}
.floating-label-form-group {
	position: relative;
	margin-bottom: 0;
	padding-bottom: 0.5em;
	border: 1px solid #ffffff;
}
.floating-label-form-group input,
.floating-label-form-group textarea {
	z-index: 1;
	position: relative;
	padding-right: 0;
	padding-left: 0;
	border: none;
	border-radius: 0;
	font-size: 1.5em;
	background: none;
	box-shadow: none !important;
	resize: none;
	color: #ffffff;
}
.floating-label-form-group label {
	display: block;
	z-index: 0;
	position: relative;
	top: 2em;
	margin: 0;
	font-size: 0.85em;
	line-height: 1.764705882em;
	vertical-align: middle;
	vertical-align: baseline;
	opacity: 0;
	-webkit-transition: top 0.3s ease, opacity 0.3s ease;
	-moz-transition: top 0.3s ease, opacity 0.3s ease;
	-ms-transition: top 0.3s ease, opacity 0.3s ease;
	transition: top 0.3s ease, opacity 0.3s ease;
	color: #ffffff;
}

.floating-label-form-group:not(:first-child) {
	padding-left: 14px;
	border-left: 1px solid #ffffff;
}
.floating-label-form-group-with-value label {
	top: 0;
	opacity: 1;
}
.floating-label-form-group-with-focus label {
	color: #445878;
}
form .row:first-child .floating-label-form-group {
	border-top: 1px solid #ffffff;
}
footer {
	color: #ffffff;
}
footer h3 {
	margin-bottom: 30px;
}
footer .footer-above {
	padding-top: 50px;
	background-color: #31353d;
}
footer .footer-col {
	margin-bottom: 50px;
}
footer .footer-below {
	padding: 25px 0;
	background-color: #1c1d21;
}
.btn-outline {
	color: #ffffff;
	font-size: 20px;
	border: solid 2px #ffffff;
	background: transparent;
	transition: all 0.3s ease-in-out;
	margin-top: 15px;
}
.btn-outline:hover,
.btn-outline:focus,
.btn-outline:active,
.btn-outline.active {
	color: #445878;
	background: #ffffff;
	border: solid 2px #ffffff;
}
.btn-primary {
	color: #ffffff;
	background-color: #31353d;
	border-color: #31353d;
	font-weight: 700;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
	color: #ffffff;
	background-color: #1c1d21;
	border-color: #1c1d21;
}
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
	background-image: none;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
	background-color: #31353d;
	border-color: #31353d;
}
.btn-primary .badge {
	color: #31353d;
	background-color: #ffffff;
}
.btn-success {
	color: #ffffff;
	background-color: #445878;
	border-color: #ffffff;
	font-weight: 700;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.open .dropdown-toggle.btn-success {
	color: #ffffff;
	background-color: #445878;
	border-color: #445878;
}
.btn-success:active,
.btn-success.active,
.open .dropdown-toggle.btn-success {
	background-image: none;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
	background-color: #445878;
	border-color: #445878;
}
.btn-success .badge {
	color: #445878;
	background-color: #ffffff;
}
.btn-social {
	display: inline-block;
	height: 50px;
	width: 50px;
	border: 2px solid #ffffff;
	border-radius: 100%;
	text-align: center;
	font-size: 20px;
	line-height: 45px;
}
.scroll-top {
	position: fixed;
	right: 2%;
	bottom: 2%;
	width: 50px;
	height: 50px;
	z-index: 1049;
}
.scroll-top .btn {
	font-size: 20px;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	line-height: 28px;
}
.portfolio-modal .modal-content {
	border-radius: 0;
	background-clip: border-box;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
	min-height: 100%;
	padding: 100px 0;
	text-align: center;
}
.portfolio-modal .modal-content h2 {
	margin: 0;
	font-size: 3em;
}
.portfolio-modal .modal-content img {
	margin-bottom: 30px;
}
.portfolio-modal .modal-content .item-details {
	margin: 30px 0;
}
.portfolio-modal .close-modal {
	position: absolute;
	width: 75px;
	height: 75px;
	background-color: transparent;
	top: 25px;
	right: 25px;
	cursor: pointer;
}
.portfolio-modal .close-modal:hover {
	opacity: 0.3;
}
.portfolio-modal .close-modal .lr {
	height: 75px;
	width: 1px;
	margin-left: 35px;
	background-color: #31353d;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	/* IE 9 */
	-webkit-transform: rotate(45deg);
	/* Safari and Chrome */
	z-index: 1051;
}
.portfolio-modal .close-modal .lr .rl {
	height: 75px;
	width: 1px;
	background-color: #31353d;
	transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	/* IE 9 */
	-webkit-transform: rotate(90deg);
	/* Safari and Chrome */
	z-index: 1052;
}
.portfolio-modal .modal-backdrop {
	opacity: 0;
	display: none;
}
#skipnav a {
	padding: 6px;
	position: absolute;
	top: -40px;
	left: 0px;
	color: #ffffff;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	border-bottom-right-radius: 8px;
	background: transparent;
	transition: top 1s ease-out, background 1s linear;
	z-index: 2000;
}
#skipnav a:focus {
	position: absolute;
	left: 0px;
	top: 0px;
	background: #445878;
	outline: 0;
	transition: top 0.1s ease-in, background 0.5s linear;
}
div#maincontent {
	outline: none;
}
.main {
	display: flex;
	--s: 196px; /* the circle size */
	--m: 16px; /* control the distance between circles */
	--vc: 16px; /* control the distance between rows */

	--f: calc(2 * var(--s) + 4 * var(--m) - 2 * var(--vc) - 2px);
}

.devices {
	font-size: 0;
}

.devices div {
	width: var(--s);
	margin: var(--m);
	height: var(--s);
	display: inline-block;
	font-size: initial;
	border-radius: 50%;
	/* background:red; */
	margin-bottom: calc(var(--m) - var(--vc));
}

.devices::before {
	content: "";
	width: calc(var(--s) / 2 + var(--m));
	float: left;
	height: 120%;
	shape-outside: repeating-linear-gradient(
		#0000 0 calc(var(--f) - 3px),
		#000 0 var(--f)
	);
}

.devices img {
	width: 192px;
	height: 192px;
	object-fit: contain;
}

.previews img {
	object-fit: contain;
	padding: 16px;
	align-self: center;
}

.main2 {
	display: flex;
	--s: 192px; /* the circle size */
	--m: 0x; /* control the distance between circles */
	--vc: 0px; /* control the distance between rows */

	--f: calc(2 * var(--s) + 4 * var(--m) - 2 * var(--vc) - 2px);
}

.platforms {
	font-size: 0;
}

.platforms div {
	width: var(--s);
	margin: var(--m);
	height: var(--s);
	display: inline-block;
	font-size: initial;
	border-radius: 50%;
	/* background:red; */
	margin-bottom: calc(var(--m) - var(--vc));
}

.platforms::before {
	content: "";
	width: calc(var(--s) / 2 + var(--m));
	float: left;
	height: 120%;
	shape-outside: repeating-linear-gradient(
		#0000 0 calc(var(--f) - 3px),
		#000 0 var(--f)
	);
}

.platforms img {
	width: 160px;
	height: 160px;
	object-fit: contain;
}

.main3 {
	display: flex;
	--s: 128px; /* the circle size */
	--m: 16x; /* control the distance between circles */
	--vc: 0px; /* control the distance between rows */

	--f: calc(2 * var(--s) + 4 * var(--m) - 2 * var(--vc) - 2px);
}

.tools {
	font-size: 0;
}

.tools div {
	width: var(--s);
	margin: var(--m);
	height: var(--s);
	display: inline-block;
	font-size: initial;
	border-radius: 50%;
	/* background:red; */
	margin-bottom: calc(var(--m) - var(--vc));
}

.tools::before {
	content: "";
	width: calc(var(--s) / 2 + var(--m));
	float: left;
	height: 120%;
	shape-outside: repeating-linear-gradient(
		#0000 0 calc(var(--f) - 3px),
		#000 0 var(--f)
	);
}

.tools img {
	width: 100px;
	height: 100px;
	object-fit: contain;
}

.appendix h4 {
	float: left;
	display: inline-block;
}

.appendix ul {
	float: left;
	display: inline-block;
	zoom: 1;
}
