html, body { 
    width: 100%; 
    height: 100%;
}

body { 
	background: #f9f9f9;
    overflow-x: hidden; 
    overflow-y: scroll;
	font: 400 16px / 24px 'redhat'; 
    color: #1e2329;
    line-height: 180%;
    font-variant-numeric: lining-nums;
    -webkit-font-feature-settings: "lnum" on; 
    -moz-font-feature-settings: "lnum" on; 
    font-feature-settings: "lnum" on; 
}

h1, h2, h3, h4, h5, h6 { 
    color: rgba(46,53,61,1);
}

a { 
    color: #227364; 
}

/* PAGE 
--------------------------- */
.center {
    padding: 0 100px;
	position: relative;
}

/* NAVIGATION 
--------------------------- */	
.main {
    width: 100%;
	max-width: 1024px;
	margin: 0 auto;
	padding: 30px 0;
	position: relative;
	z-index: 10;
	font-size: 0;
}

.main .logo {
    width: 100%;
	max-width: 320px;
    height: 50px;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    background: url('../img/logo.svg') no-repeat left center / 100% auto; 
    -webkit-transition: opacity .4s ease, transform .05s ease;
    transition: opacity .4s ease, transform .05s ease;
    -webkit-animation: fadeIn 1s ease-out 0s 1 forwards;
}

@keyframes fadeIn {
    
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
  
}

.main ul {
	width: calc(100% - 340px);
	margin-left: 50px;
	display: inline-block;
    vertical-align: middle;
}

.main li { 
	margin-right: 30px;
    display: inline-block; 
	vertical-align: middle;
}

.main li:last-of-type {
	margin-right: 0;
}

.main li a {
    width: 100%;
	display: inline-block; 
	vertical-align: middle;
    color: #202020;
	font: 400 18px / 18px 'redhat'; 
    -webkit-transition: color ease 200ms;
    transition: color ease 200ms;
}	

.main li.active a {
    color: #f7941d;
}

.main .nav-mobile {
	width: 48px;
	height: 48px;
	display: none;
	vertical-align: middle;
	background: #f6f7f9 url('../img/icons/icon-menu.svg') no-repeat center / 24px;
	font: 400 18px / 24px 'redhat';
	-webkit-border-radius: 300px;
}

.main .cta {
    width: 100%;
	max-width: 160px;
	height: 48px;
	margin: auto;
	padding: 15px;
	position: absolute;
	right: 100px;
	top: 0;
	bottom: 0;
    color: #202020;
	text-align: center;
	background: #f7941d;
	font: 400 18px / 18px 'redhat';
    -webkit-transition: color ease 200ms, transform ease 100ms;
	-webkit-border-radius: 300px;
}

.main.cloned {
	position: fixed;
	top: -200px;
	left: 0;
	z-index: 10;
	opacity: 0;
	visibility: hidden;
	transition-property: top, padding;
	transition-duration: 0.2s, 0.2s;
	transition-timing-function: ease, ease;
	transition-delay: 0s, 0.4s;
}

/* CONTENT 
--------------------------- */
.content {
	max-width: 1024px;
	margin: 0 auto;
	background: #fefefe;
}

.content section {
	padding: 60px;
	position: relative;
}

.content section:nth-child(even) {
	background: rgb(30,35,41);
	background: linear-gradient(112deg, rgba(30,35,41,1) 0%, rgba(46,53,61,1) 100%);
}

.content section h2 {
	margin-bottom: 50px;
	color: #1e2329;
	font: 700 48px / 56px 'redhat'; 
}

.content section:nth-child(even) h2 {
	color: #fff;
}

/* CONTENT - INTRODUCTION
--------------------------- */
.introduction {
	padding: 0 !important;
	font-size: 0;
	background: rgb(252,189,113);
	background: radial-gradient(circle, rgba(252,189,113,1) 0%, rgba(247,148,29,1) 100%);
	-webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, .025);
}

.not-found .introduction {
	background: #f9f9f9;
}

.introduction:before {
	content: "";
	width: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 8;
	background: url('../img/header.png') no-repeat center right / auto 100%;
}

.not-found .introduction:before {
	background: #fff;
}

.introduction__left {
	width: calc(100% - 400px);
	margin-right: 50px;
	padding: 60px;
	background: rgb(254,254,254);
	display: inline-block;
	vertical-align: middle;
}

.introduction h1 {
	width: 100%;
	margin-bottom: 20px;
	display: inline-block;
	color: #1e2329;
	font: 400 32px / 48px 'redhat'; 
	letter-spacing: 0;
	z-index: 9;
	position: relative;
}

.introduction h1 span {
	width: 100%;
	display: inline-block;
	font-size: 50px;
	font-weight: 700;
	letter-spacing: 0;
}

.introduction p {
	max-width: 768px;
	margin-bottom: 10px;
	font: 400 22px / 30px 'redhat';
	z-index: 9;
	position: relative;
}

.introduction p i {
	font-size: 18px;
	font-style: italic;
}

/* SCROLL TOP 
-------------------------------- */		
#scroll-to-top {
	margin: 20px 0;
}

#scroll-to-top span {
	padding-left: 26px;
	display: inline-block;
    background: url('../img/icons/icon-arrow-up.svg') no-repeat center left / 16px;
    cursor: pointer;    
}

/* FOOTER 
--------------------------- */
footer {
    width: 100%;
	max-width: 1024px;
	margin: 0 auto;
}

footer p.copyright {
    padding: 20px 0;
    border-top: 1px solid rgba(220, 232, 242, .1); 
}

/* FORM
--------------------------- */

form { 
    width: 100%;
    position: relative;
}

form p {
	color: #fff;
}

form label {
    margin: 8px 0 5px 0;
    padding: 0;
    display: inline-block;
	font: 400 14px / 18px 'redhat';
}

form input,
form textarea,
form select {
    width: 100%;
	margin: 0;
    padding: 15px;
    display: inline-block;
	vertical-align: top;
    background: #fff;
	border: 0;
	font: 400 16px / 16px 'redhat';
    color: #000;
    -webkit-border-radius: 300px;
	-webkit-appearance: none; 
}

form input:hover,
form input:focus,
form textarea:hover,
form textarea:focus,
form select:hover,
form select:focus { 
    outline: none;
	-webkit-box-shadow:  0 0 15px 0 rgba(255, 255, 255, .2);
}

form input.error,
form textarea.error,
form select.error { 
    
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    color: #676767;
}

input.error:-webkit-autofill,
input.error:-webkit-autofill:hover,
input.error:-webkit-autofill:focus,
input.error:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    color: #676767;
}

form input[type='submit'] {
    margin: 10px 0 0;
    padding: 8px 20px 10px;
    display: inline-block;
    vertical-align: top;
    background: #39b54a;
    border: 0;
    color: #fff;
	font: 400 20px / 30px 'redhat';
    -webkit-border-radius: 4px;
    -webkit-transition: all 300ms ease-in-out;
}

form input[type='submit']:hover,
form input[type='submit']:focus,
form input[type='submit']:active {
    background: #70da93;
    cursor: pointer;
    outline: none;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #9d9d9d;
    font-weight: 500;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #9d9d9d;
    opacity: 1;
    font-weight: 500;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #9d9d9d;
    opacity: 1;
    font-weight: 500;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #9d9d9d;
    font-weight: 500;
}
::-ms-input-placeholder { /* Microsoft Edge */
    color: #9d9d9d;
    font-weight: 500;
}

/*
 * Hire me form
 */

form.cta-form {
	font-size: 0;
}

.cta-form__form_fullwidth {
	width: 100%;
	padding: 0 0 20px;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {  
   opacity: 1;
}


.cta-form__form_info {
	width: 100%;
	padding: 20px 15px 20px;
}

.cta-form__form_contain {
	width: calc(33.33333333% - 19px);
	margin: 20px 24px 0 0;
	display: inline-block;
	font-size: 0;
}

.cta-form__form_contain.small {
	max-width: 150px;
}

.cta-form__form_contain:nth-of-type(3n+3) {
	margin-right: 0;
}

.cta-form__form_contain:nth-of-type(-n+3) {
	margin-top: 0;
}

.cta-form__form_contain > label {
	margin: 0 0 5px 15px;
	color: #fff;	
}

.cta-form__form_error {
	width: 100%;
	color: #f7941d;
	padding-left: 15px;
	display: inline-block;
	font: 400 14px / 18px 'redhat';
}

.cta-form__form_actions {
	margin-top: 30px;
}

.cta-form__form_actions_continue {
    width: 100%;
	max-width: 230px;
	height: 48px;
	margin: auto;
	padding: 15px;
	display: inline-block;
    color: #202020;
	text-align: center;
	background: #f7941d no-repeat center right / 50px;
	cursor: pointer;
	font: 400 18px / 18px 'redhat';
    -webkit-transition: all ease 100ms;
	-webkit-border-radius: 300px;
}

.cta-form__form_actions_continue.loading {
	max-width: 185px;
	padding-right: 40px;
	pointer-events: none;
	background-image: url('/assets/img/icons/icon-loading.svg');
	background-color: #fac06a;
}

.cta-form__form_notice {
	padding: 15px;
	margin-left: 20px;
	display: inline-block;
	font: 400 18px / 18px 'redhat';
	color: #f7941d;
}

.cta-form__form_notice.error {
	color: #ffdde0;
}

/*  MEDIA QUERIES
--------------------------- */

@media (any-hover: hover) {

	#scroll-to-top span:hover {
		text-decoration: underline;
	}
	
	.cta-form__form_actions_continue:hover {
		transform: scale(1.1);
		-webkit-box-shadow: 0 0 25px 0 rgba(255, 255, 255, .1);
	}
	
}

@media screen 
and (min-width: 0) 
and (max-width: 1440px) 
{
	
	.introduction__left {
		width: 100%;
		margin: 0;
		padding-top: 200px;
	}
	
	.introduction:before {
		background-size: auto 220px;
		background-position: top left;
	}
	
}

@media screen 
and (min-width: 0) 
and (max-width: 1280px) 
{
	
    .main ul.nav { 
		width: 100%;
		height: 100%;	
		margin: 0;
		padding-top: 150px;
		display: none; 
		position: fixed;
		z-index: 9999;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background: #fff url('../img/logo.svg') no-repeat center 50px / 250px auto; 		
	}
	
	.main ul.nav li {
		width: 100%;
		margin: 20px 0;
	}
	
	.main li a {
		font: 400 28px / 28px 'redhat';
		text-align: center;
	}
	
	.main .nav-mobile {
		margin: auto;
		display: inline-block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 340px;
	}
	
	.nav-mobile-close {
		width: 30px;
		height: 30px;
		position: fixed;
		top: 20px;
		right: 20px;
		z-index: 9999;
		display: none;
		background: url('../img/icons/icon-close.svg') no-repeat center / 20px;
	}
		
}

@media screen 
and (min-width: 0) 
and (max-width: 1024px) 
{
	
	.cta-form__form_error {
		width: 100%;
		padding: 0 0 10px 15px;
		float: none;
		display: inline-block;
		vertical-align: top;
	}
    
}

@media screen 
and (min-width: 0) 
and (max-width: 960px) 
{

	
}

@media screen 
and (min-width: 0) 
and (max-width: 768px) 
{
	
	.center {
		padding: 0 30px;
	}
	
	.content section h2 {
		margin-bottom: 30px;
		font: 700 38px / 46px 'redhat';
	}
	
	.introduction__left {
		padding: 200px 30px 50px;
		background: #f3f5f7;
	}
	
	.content section {
		padding: 50px 30px;
	}

	.main .cta {
		right: 40px;
	}

	.main .nav-mobile {	
		right: 220px;
	}
	
}

@media screen 
and (min-width: 0) 
and (max-width: 640px) 
{
	
	.main .logo {
		max-width: 197px;
	}
	
	.main .cta { 
		max-width: calc(100% - 58px);
		margin-top: 15px;
		position: static;
		display: inline-block;
	}
	
	.main .nav-mobile {	
		margin-left: 15px;
		position: static;
	}

	.cta-form__form_contain { 
		margin-top: 20px !important;
		width: 100%;
	}
	
	.cta-form__form_contain:first-of-type {
		margin-top: 0;
	}
	
}

@media screen 
and (min-width: 0) 
and (max-width: 540px) 
{
	
	.introduction h1 span {
		font-size: 38px;
	}

	.introduction .cta {
		width: 100%;
		text-align: center;
	}
	
}

@media screen 
and (min-width: 0) 
and (max-width: 414px) 
{

}