.vert.line {position: absolute; top: -70px; left: 50%; width: 3px; margin-left: -3px; height: 50px; background: #46bfe0; z-index: 2;}

.intro {padding:100px 0 150px 0;}
.intro h1 {text-align: center; margin-bottom: 50px;}
.intro .text {column-count: 2; text-align: justify; column-gap: 80px;}
.intro p {margin-bottom: 30px;}

.services .full {display: table; margin-bottom:150px;}
.services .full .left {width: 40%; text-align: right; padding:250px 40px 250px 18%; display: table-cell;}
.services .full .left h1 {font-size:22px; float: right; width: 70%; position: relative;}
.services .full .left h1::after {position: absolute; content: ""; left: 0; width: 140%; height: 3px; background: #46bfe0; top:-40px;}
.services .full .left:nth-of-type(even) h1::after {right: 0; left: unset;}
.services .full .left p {text-align: justify; float: right;}
.services .full .left ul{float:right; width:100%;}
.services .full .left hr{float:right; width:100%; margin:20px 0;}
.services .full .left .line {margin-left: 30%; height: 3px; background: #46bfe0; position: relative; width: 100%;}
.services .full .right {width:60%; display: table-cell; background:no-repeat center / cover}
.services .full .left:nth-of-type(even) {padding: 250px 18% 250px 40px; text-align: left;}
.services .full .left:nth-of-type(even) .line {margin-left: -30%;}
.services .full .left:nth-of-type(even) h1 {float: left;}
.services .full .left:nth-of-type(even) p {direction: unset;}
.services .full:last-child{margin-bottom:200px;}

.projectdetail .image{float:left; width:100%;}
.projectdetail .image img{width:100%;}

.projectinfo {padding-bottom: 150px;}
.projectinfo .left {width:60%; float: left; padding:100px; border-top:3px solid #46bfe0; box-sizing:border-box;}
.projectinfo .left .title {display: -moz-groupbox;}
.projectinfo .left p {margin-bottom: 20px; text-align:justify;}
.projectinfo .right {width:40%; float: right; padding:100px; text-align: right; border-top:3px solid #46bfe0; box-sizing:border-box;}
.projectinfo .right .title {display: -moz-groupbox;}
.projectinfo .right .line {margin-bottom: 10px; height: 3px; background: #46bfe0; position: relative;}
.projectinfo h2 {text-transform: uppercase; font-size:30px; margin:20px 0; letter-spacing: 2px;}
.projectinfo h3 {font-size: 15px; font-weight: 600;}
.projectinfo .right ul {margin-bottom: 20px;}

.carousel {padding-bottom: 150px; text-align: center;}
.carousel .image {background:no-repeat center / cover; height: 900px;}
.carousel span {height: 15px; width: 15px; background-color: #bbb; border-radius: 50%; display: inline-block; margin: 20px 3px 0 3px; cursor: pointer;}
.carousel .active {background-color: #46bfe0;}
.carousel span:first-of-type {background: url(/img/icons/arrow.png) no-repeat center / 18px 8px; width: 18px; height: 8px; margin-right: 15px; margin-top: 24px; transform: rotate(180deg);}
.carousel span:last-of-type {background: url(/img/icons/arrow.png) no-repeat center / 18px 8px; width: 18px; height: 8px; margin-left: 15px; margin-top: 24px;}

.contactinfo {padding: 100px 0 100px 0;}
.contactinfo h1 {text-align: center; margin-bottom: 50px;}
.contactinfo .full {display: table; width: 100%;}
.contactinfo .full .left {width: 40%; text-align: right; padding:300px 40px 150px 18%; display: table-cell;}
.contactinfo .full .left .line {margin-left: 55%; height: 3px; background: #46bfe0; position: relative; width: 70%;}
.contactinfo .full .left h2 {font-size: 20px; text-align: right; position: relative; display: inline-block; text-transform: uppercase; margin-bottom: 30px;}
.contactinfo .full .left h2::after {position: absolute; content: ""; left: 0; width: 190%; height: 3px; background: #46bfe0; top:-30px;}
.contactinfo .full .left ul li:last-of-type {margin-bottom: 20px;}
.contactinfo .full .left li {float: right; width: 100%;}
.contactinfo .full .right {width: 60%; display: table-cell; background:no-repeat center / cover;}

.form {text-align: center; padding-bottom:200px;}
.form h2 {font-size: 20px; text-transform: uppercase;}
.form .formcont {width: 70%; margin: auto;}
.form .formcont form {float: left;}
.form .formcont form div {width: 48%; float: left;}
.form .formcont form div:nth-of-type(2) {float: right;}
.form .formcont form .linkbtn:hover::after {bottom:0px; height:42px;}

input[type="text"], input[type="tel"], input[type="email"], input[type="search"], input[type="number"], input[type="password"], input[type="file"], textarea, select, button{background-color:transparent; border:1px solid #30424a; border-radius:0; -webkit-appearance:none; -moz-appearance:none; appearance:none;}select::-ms-expand{display:none;}
input, textarea, select, button{width:100%; margin:0 0 28px; padding:16px 20px; font-size:16px; line-height:24px; color:#30424a; box-sizing:border-box; vertical-align:top;}
input[type="checkbox"], input[type="radio"]{width:auto !important; height:auto !important; margin:8px 14px 0 0; padding:0 !important; vertical-align:top;}
textarea{height:230px; line-height:1.5em;}
select{width:auto; padding:6px 60px 6px 12px; background-image:url(/img/icons/form/pulldown.png); background-repeat:no-repeat; background-position:right 18px center; cursor:pointer;}
input[type="submit"], input[type="button"], button{display:inline-block; width:auto; height:50px; margin-top:40px; font-size:18px; border:0; text-transform:uppercase; color:#30424a; cursor:pointer; -webkit-appearance:none; -moz-appearance:none; appearance:none; position: relative;}
input[type="submit"]:disabled, input[type="button"]:disabled, button:disabled{background:#aaa; cursor:not-allowed;}
input:required, input:invalid{box-shadow:none;}
::-webkit-input-placeholder{color:#30424a; opacity:0.5;}:-moz-placeholder{color:#30424a; opacity:0.5;}::-moz-placeholder{color:#30424a; opacity:0.5;}:-ms-input-placeholder{color:#30424a; opacity:0.5;}
input.error, textarea.error, select.error{background-color:#ea403f !important;}
input:hover, select:hover, textarea:hover, input:focus, select:focus, textarea:focus{border-color:#46bfe0;}

.pager{padding:40px 0 200px;}
.pager p{margin-top:24px;}
.pager h2, .pager h3{margin:40px 0 20px;}
.pager ul{margin:24px 0 0 14px;}
.pager ul li{list-style:circle; padding-left:10px;}

/*responsive*/
@media screen and (max-width:1600px){
.services .full .left {padding:150px 50px 150px 150px;}
.services .full .left:nth-of-type(2n) {padding:150px 150px 150px 50px;}
}
@media screen and (max-width:1300px){
.services .full:last-child{margin-bottom:150px;}
.services .full .left {width: 40%; text-align: right; padding:120px 40px 100px 80px;}
.services .full .left:nth-of-type(2n) {text-align: left; padding:120px 80px 100px 40px;}
.form {padding-bottom:150px;}
}
@media screen and (max-width:1200px){
.services .full .left h1 {width: 100%;}
}
@media screen and (max-width:1100px){
.intro .text {column-gap: 80px;}
.services .full{margin-bottom:80px;}
.services .full .left {width:50%;}
.projectinfo .left, .projectinfo .right{padding:60px;}
.contactinfo .full .left{padding:200px 40px 100px 18%;}
.form .formcont{width:100%;}
}
@media screen and (max-width:950px){
.intro {padding: 70px 0 20px 0;}
.intro .text {column-count: 1;}
.services .full{position:relative; float:left; display:block; width:100%; margin:0;}
.services .full:nth-of-type(even) .right{position:absolute; bottom:0; left:0;}
.services .full:nth-of-type(even) .left{padding-bottom:500px !important;}
.services .full .left {float:left; display:block; width:100%; padding:100px 120px;}
.services .full .right {float:left; display:block; width:100%; height:400px;}
.services .full .left:nth-of-type(even) {padding:80px; text-align: left;}
.services .full .left h1::after{width:100%; top:-20px;}
.services .full:last-child{margin-bottom:80px;}
.projects.page .container{width:100%;}
.projects.page .wrapper{position:relative; float:left; display:block; width:100%; margin:0;}
.projects.page .wrapper:nth-of-type(even) .image{position:absolute; top:0; left:0;}
.projects.page .wrapper:nth-of-type(even) .content{padding-top:500px !important;}
.projects.page .image, .project.page .content{float:left; display:block; width:100%;}
.projects.page .image{height:400px;}
.projects.page .wrapper .content{padding:100px 120px;}
.projects.page .wrapper .content h1::after{width:100%; top:-20px;}
.projectinfo{margin-top:56px; padding-bottom:50px;}
.projectinfo .left, .projectinfo .right{width:100%; text-align:left; padding:40px 0;}
.pager{padding:30px 0 100px;}
}
@media screen and (max-width:750px){
.services .full:nth-of-type(even) .left{padding-bottom:220px !important;}
.services .full .left {float:left; display:block; width:100%; padding:80px 40px 20px;}
.services .full .right {float:left; display:block; width:100%; height:200px;}
.services .full .left:nth-of-type(even) {padding:80px 40px 20px; text-align: left;}
.services .full:last-child{margin-bottom:80px;}
.services .full .left h1::after{top:-10px;}
.projects.page{padding-top:0;}
.projects.page .wrapper:nth-of-type(even) .content{padding-top:250px !important;}
.projects.page .image{height:200px;}
.projects.page .wrapper .content{padding:50px 40px 80px;}
.projectdetail .container{width:100%;}
.intro.projectdetail h1{width:80%; margin-left:10%; font-size:30px; margin-bottom:30px;}	
.contactinfo {padding: 100px 0 50px 0;}
.contactinfo .full {display: table;}
.contactinfo .full .left {width: 100%; display: table; padding: 50px 40px 30px 40px;}
.contactinfo .full .left h1 {padding-right: 20px; margin-bottom: 20px;}
.contactinfo .full .left h2::after{width:100%; top:-20px;}
.contactinfo .full .left ul {padding-right: 20px; float: none;}
.contactinfo .full .right {width: 100%; display: table; height: 230px;}
.contactinfo .full .left h1::after {right:0; width: 3px; height: 350px; left: inherit;}
.form {padding-bottom: 100px;}
.form .formcont {width: 100%;}
.form .formcont form {margin-top: 30px !important;}
.form .formcont form div {width: 100%;}
button {margin-top: 10px;}
.pager{padding:40px 0;}
}
@media screen and (max-width:650px){
}