/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


body, h1, h2, h3, h4, h5, h6, li, p, a {
	font-family:"futura-pt", sans-serif !important;
}
a {color:#fff;}
a:hover {color:#ccc;}
p, h3, a {
	font-weight:400 !important;
}
h1,h2 {
	font-weight:700 !important;
}

.customnav {
	list-style:none;
	text-align:right;
	margin:0;
	padding:0;
}
.customnav li {
	margin:0;
	padding:0;
	display:inline-block;
	color:#fff;
	font-size:16px;
	text-transform:uppercase;
}
.customnav li a {
	display:block;
	padding:0 20px;
	color:#fff;
}
.customnav li a:hover {
	opacity:0.5;
}
.boxhalf {height:100%;}
.boxhalf .elementor-widget-container {
	display:flex;
	align-items:center;
}


.box1, .box2, .boxhalf.lastbox,.box3,.tavoite .e-con-inner {
	position:relative;
}
.box1:before {
	border:0;
	position:absolute;
	left:0;
	top:0;
	content:'';
	height:25px;
	width:25px;
	border-left:1px solid #000;
	border-top:1px solid #000;
}
.box1:after {
	border:0;
	position:absolute;
	left:0;
	bottom:0;
	content:'';
	height:25px;
	width:25px;
	border-left:1px solid #000;
	border-bottom:1px solid #000;
}

.box2:before {
	border:0;
	position:absolute;
	left:-25px;
	top:-1px;
	bottom:0;
	content:'';
	width:50px;
	border-bottom:1px solid #000;
	border-top:1px solid #000;
}
.box2:after {
	border:0;
	position:absolute;
	left:-1px;
	right:-1px;
	top:-1px;
	height:25px;
	content:'';
	border-left:1px solid #000;
	border-right:1px solid #000;
}
.box2 .elementor-widget-heading {position:static;}
.box2 .elementor-widget-heading:before {
	border:0;
	position:absolute;
	right:-25px;
	top:-1px;
	bottom:-1px;
	content:'';
	width:50px;
	border-bottom:1px solid #000;
	border-top:1px solid #000;
	z-index:100;
}
.box2 .elementor-widget-heading:after {
	border:0;
	position:absolute;
	left:-1px;
	right:-1px;
	bottom:-1px;
	height:25px;
	content:'';
	border-left:1px solid #000;
	border-right:1px solid #000;
	z-index:100;
}
.boxhalf.lastbox:after {
	position:absolute;
	right:0;
	bottom:0;
	content:'';
	height:25px;
	width:25px;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}


#palvelut .box1:before,
#palvelut .box1:after,
#palvelut .box2:before,
#palvelut .box2:after,
#palvelut .box2 .elementor-widget-heading:before,
#palvelut .box2 .elementor-widget-heading:after,
#palvelut .boxhalf.lastbox:after {
border-color:#fff;	
}

#palvelut .box3:before {
	border:0;
	position:absolute;
	right:0;
	top:0;
	left:auto;
	content:'';
	height:25px;
	width:25px;
	border-right:1px solid #fff;
	border-top:1px solid #fff;
}
#palvelut .box3:after {
	border:0;
	position:absolute;
	right:0;
	bottom:0;
	content:'';
	height:25px;
	width:25px;
	border-right:1px solid #fff;
	border-bottom:1px solid #fff;
}


.tavoite .e-con-inner:before {
	border:0;
	position:absolute;
	left:0;
	top:0;
	content:'';
	height:25px;
	width:25px;
	border-left:1px solid #fff;
	border-top:1px solid #fff;
}
.tavoite .e-con-inner:after {
	border:0;
	position:absolute;
	right:0;
	bottom:0;
	content:'';
	height:25px;
	width:25px;
	border-right:1px solid #fff;
	border-bottom:1px solid #fff;
}

@media(max-width:756px) {
	.customnav {display:none;transition:all 0.5s linear;
	position:fixed;
		top:0;
		bottom:0;
		left:0;
		right:0;
		justify-content:center;
		align-content:center;
		flex-direction:row;
		flex-wrap:wrap;
	}
	.customnav li {flex: 0 0 100%; text-align:center;padding:15px 0;font-size:1.5rem;}
	.customnav.opened {
		display: flex;
		transition: all 0.5s linear;
		background: rgba(0,0,0,0.7);
		backdrop-filter: blur(10px);
		transition:all 0.5s linear;
	}
.lines {
	width:40px;
	height:40px;
	position:fixed;
	display:inline-block;
	z-index:1000;
	top:40px;
	right:40px;
}
.line {
	height:5px;
	width:30px;
	left:5px;
	background:#fff;
	position:absolute;
}
.line1 {top:7px;
	transition:all 0.3s linear;}
.line2 {top:17px;}
.line3 {top:27px;
	transition:all 0.3s linear;}

.lines.open .line2 {display:none;}
.lines.open .line1 {
	transform: rotate(45deg);
    top: 50%;
    margin-top: -3px;
	transition:all 0.3s linear;
}
.lines.open .line3 {
	transform: rotate(-45deg);
    top: 50%;
    margin-top: -3px;
	transition:all 0.3s linear;
}
}
