/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

/* @import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,300;0,600;0,900;1,300;1,600;1,900&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,600;1,600&display=swap');

/* 
.header-main {
	padding-top: 10px;
}
 */

strong, b {
	font-family: 'Libre Franklin', sans-serif;
	font-weight: 600;
}

select {/* companies list */
	color: #37869b;
	border: 2px solid #37869b;
	border-radius: 10px;
 	/* 
background: none;
 	box-shadow: none;
 */
}

.bg-start-top-section {
	background: url("img/bg-start-top-section-420-b.jpg") center top repeat-x;
}

.banner-start-top {
}

.header-nav-main {
	margin-top: 6px;
}

.nav > li {
	margin: 0 12px;
}

.nav > li > a {
	font-size: 1em;
	padding: 5px 0;
}

/* columns inside the section */

@media screen and (min-width: 550px) and (max-width: 849px) {

	.mob-spacing {
		padding-top: 30px!important;
		padding-bottom: 30px!important;
	}

	.mob-spacing .col {
		padding-bottom: 0;
	}
}

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

	.mob-spacing {
		padding-top: 30px!important;
		padding-bottom: 0!important;
	}

}

/* end columns inside the section */

.mobile-sidebar .nav > li > a {
	font-weight: 600;
}

.mobile-sidebar .nav > li.current-menu-item {
	background-color: #ddd;
}

.banner h3 {
	font-size: 2.5em;
}

@media only screen and (min-width: 550px) {

	.banner h3 {
		font-size: 3em;
	}

	.rounding10 {
		border-radius: 10px;
		overflow: hidden;
	}

	.rounding20 {
		border-radius: 20px;
		overflow: hidden;
	}

}

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

	.banner h3 {
		font-size: 3.5em;
	}

}

.menu-footer {
	flex-direction: row;
	justify-content: center;/* center | space-between | space-around | space-evenly */
	flex-wrap: wrap;/*  nowrap | wrap-reverse */
	align-items: center;
	margin-bottom: 20px;
}

@media only screen and (min-width: 1024px) {

	.menu-footer {
		margin-bottom: 10px;
	}

}

@media only screen and (min-width: 1200px) {

	.menu-footer {
		justify-content: space-between;/* center | space-between | space-around | space-evenly */
	}

}

.menu-footer a {
	margin-right: 6px;
	margin-left: 6px;
	padding-right: 4px;
	padding-left: 4px;
	min-height: 2em;
	line-height: 1;
	text-align: center;
}

@media only screen and (min-width: 48em) {

	.bottom-0 > div {/* row > column padding */
		padding-bottom: 0 !important;
	}

}





.h1, h1 {
	font-size: 2.7em;
	color: #335566 !important;
}

.h2, h2 {
	font-size: 2.2em;
}

.font900 {
	font-weight: 900 !important;
}

.fontblue {
	color: #335566 !important;
}




.icons-services {
	max-width: 900px !important;
}

.icons-services img {
	padding: 0 10px;
}



/* keep above other .button classes */

.button {
	display: inline;
	padding: 8px 20px;
	font-size: 1rem;
	font-weight: 900;
}


@media only screen and (min-width: 550px) {

	.button {
		font-size: 1.1rem;
	}

}


@media only screen and (min-width: 850px) {

	.button {
		font-size: 1.2rem;
	}

}

/* 
.button span {
	height: auto;
	line-height: 1;
}
 */

/* end keep above other .button classes */


.hem-nyheter .col-inner {
	padding: 12px 12px 0 12px;
	border-radius: 12px;
}

.hem-nyheter img {
	border-radius: 8px;
}

.hem-nyheter h3 {
	font-size: 1.5em;
	/* font-weight: 500; */
	line-height: 1.2;
	margin-top: .5em;
	margin-bottom: .5em;
}

.hem-nyheter .box-text {
	padding-bottom: .5em;
}

.hem-nyheter .button {
	margin-bottom: 0;
	color: #111;
	font-weight: 600;
}





.people .col {
	padding-right: 60px;
	padding-left: 60px;
}

.img-form  {
	padding-left: 60px;
}



.is-divider {
	background-color: rgba(0,0,0,.9);
	display: block;
	height: 1px;
	margin: 0 auto 50px auto;
	max-width: 1200px;
	/* width: 100%; */
}

@media only screen and (min-width: 850px) {

	.is-divider {
		margin-top: 50px;
		margin-bottom: 50px;
	}

}

.sidebar .is-divider {
	margin: 1em 0;
}










@media only screen and (min-width: 550px) {/* to switch the order of columns to check board layout */

	.row.reverse {
		flex-direction: row-reverse;
	}

}

.cbtextleft > .col-inner {/* left text column in check board layout */
	padding: 14px 40px 0 0 !important;
}

.cbtextright > .col-inner {/* right text column in check board layout */
	padding: 14px 0 0 50px !important;
}

@media only screen and (max-width: 900px) {/* 48em 768px *//* by default columns rearranged at max 549px */

	.cbtextleft > .col-inner, .cbtextright > .col-inner {/* text columns in check board layout */
		padding: 20px !important;
	}

}






.nowrap {
	white-space: nowrap;
}

.hide {
	display: none !important;
}

.clr:after {
	content: "";
	display: table;
	clear: both;
}

.quote {
	margin: 50px auto;
	padding: 20px 10px;
	Font-size: 1.8em;
	line-height: 1.2;
	font-style: italic;
	font-weight: 300;
	letter-spacing: .15em;
	width: 90%;
	border-top: 1px solid #111;
	border-bottom: 1px solid #111;
}

@media only screen and (min-width: 768px) {

	.quote {
		width: 70%;
	}

}

.company-info {
	border: 1px solid #111;
	border-radius: 20px;
	padding-top: 30px;
}

.company-upper-content {
	
}

.company-info .col.large-5 .img {/* at up to 549px device width */
	display: block;
	max-width: 380px;/* 76% */
	margin-right: auto;
	margin-left: auto;
}

.company-info .col.large-5 .img.logo-tall {/* at up to 549px device width */
	max-width: 42%;/* 76% */
}

.company-info p.lead {/* at up to 549px device width */
	font-size: 21px;
}

@media screen and (min-width: 550px) {/* company info columns to equal widths ondesktops and tablets */

	.company-info .col.large-5, .company-info .col.medium-5, .company-info .col.large-7, .company-info .col.medium-7 {
		flex-basis: 50%;
		max-width: 50%;
	}
	
	.company-info .col.large-5 .img {
		max-width: 300px;/* 60% */
		margin-right: 0;
		margin-left: 0;
	}

	.company-info .col.large-5 .img.logo-tall {
		max-width: 150px;
	}
	
	.company-info p.lead {
		font-size: 18px;
	}
	
	.company-info p:not(.lead) {
		font-size: 14px;
	}
	
	.company-info .button {
		padding: 8px 20px;
		font-size: .84rem;
	}

}

@media screen and (min-width: 850px) {/* company info columns to equal widths ondesktops and tablets */

	.company-info .col.large-5, .company-info .col.medium-5, .company-info .col.large-7, .company-info .col.medium-7 { 
		flex-basis: 50%;
		max-width: 50%;
	}

}

.bg-map {
	background: url("img/sverige-karta.png") right top no-repeat;
}





/* OM OSS   om oss   om-oss */

.menu-om-oss {
	width: 300px;
	padding: 20px 40px 60px 40px;
	background: url("img/bg-submenu.png") center top no-repeat;
	background-size: contain;
	text-align: left;
}

.menu-om-oss a {
	font-size: 1.25em;
	line-height: 1;
	color: #fff;
	text-transform: uppercase;
	min-height: initial !important;
}

@media screen and (min-width: 550px) {

	.om-oss-footer-2 .large-3 {
		flex-basis: 27%;
		max-width: 27%;
	}

	.om-oss-footer-2 .large-6 {
		flex-basis: 46%;
		max-width: 46%;
	}

}

/* end OM OSS   om oss   om-oss */








/* stories */

@media screen and (min-width: 550px) {

	.caption-emelie {
		display: flex;
		align-items: flex-end;
	}
	
	.caption-emelie p {
		margin-bottom: 0;
	}

}

.stories-sidebar {
	max-width: 270px !important;
}

.stories-sidebar img {
	border-radius: 10px;
}

.stories-sidebar h3 {
	font-weight: 300;
	font-size: 1em;
}

/* end stories */








/* karriär jobb */

.list-group {
	list-style: none;
}

.list-group li {
	margin-right: 1.3em;
	padding: 10px 20px;
	background-color: #37869b;
	border-radius: 10px;
}

.list-group a {
	color: #fff;
}

.list-group h5 {
	font-size: 1.4em;
	color: #fff;
	margin-bottom: 0;
}

.list-group small {
	font-size: .9em;
}

/* end karriär jobb */






footer section, footer section .col {/* reducing vertical space */
	padding-bottom: 0!important;
}

footer .absolute-footer {/* adding vertical space */
	padding-bottom: 20px;/* 15px */
}

.logo-footer {
	max-width: 360px;
	margin: 0 auto 20px auto;
}

footer table {
	max-width: 280px;
	margin-right: auto;
	margin-left: auto;
}

footer table td {
	border: 0;
	width: 50%;
	text-align: center;
	vertical-align: top;
	font-size: .7em;
}












/* contact form */

.contactform {
	padding: 16px 30px 0 30px;
	background-color: #37869b;
	border-radius: 20px;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

/* 
@media screen and (min-width: 960px) {

	.contactform {
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
	}

}
 */

.contactform h2, .contactform label {
	color: #fff;
	font-weight: 300;
}

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

	.contactform h2 {
		font-size: 3em;
	}

}

.contactform label {
	font-size: 1.25em;
}

.contactform form {
	margin-bottom: 0;
}

.contactform input[type="email"], .contactform input[type="tel"], .contactform input[type="text"], .contactform textarea {
	color: #fff;
	margin-bottom: 6px;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #fff;
	border-radius: 0;
	box-shadow: none;
	background-color: #37869b;/* #37869b transparent */
}

/* 
.contactform input[type="email"]:focus, .contactform input[type="tel"]:focus, .contactform input[type="text"]:focus, .contactform textarea:focus {
	background-color: #fff;
}
 */

.contactform input[type="email"], .contactform input[type="tel"], .contactform input[type="text"] {
	height: 1.75em;
}

textarea {
	border: 1px solid #fff;
	border-radius: 10px;
}

.contactform input[type="submit"], .contactform input[type="button"], .contactform button:not(.icon), .contactform .button:not(.icon) {
	border: 1px solid #fff;
}

.contactform .wpcf7 form .wpcf7-response-output {
	margin: 0;
	color: #fff;
	text-align: center;
}

.bg-trapezoid {
	display: block;
	height: 120px;
	background: url("img/bg-trapezoid.png") center bottom no-repeat;
	background-size: cover;/* auto|cover|contain */
}

@media screen and (min-width: 550px) and (max-width: 849px) {

	.bg-trapezoid {
		height: 160px;
	}

}

/* 
.bg-trapezoid {
	display: none;
	background: none;
}

@media screen and (min-width: 360px) {

	.bg-trapezoid {
		display: block;
		height: 120px;
		background: url("img/bg-trapezoid.png") center bottom no-repeat;
		background-size: cover;
	}

}
 */


/* end contact form */









/* booking form */

#bookingform {
	width: 100%;
	padding: 0;
}

#bookingform:after {
	content: "";
	display: table;
	clear: both;
}

form {
	margin-bottom: 0;
}

#bookingform .col-left, #bookingform .col-right, #bookingform h2 {
	width: 100%;
	float: none;
}

table.select, table.contact-info {
	padding-right: 20px;
	padding-left: 20px;
}

#bookingform td, #bookingform label, #bookingform input {
	margin-bottom: 0;
}

#bookingform td {
	color: #111;
	border: 0;
	padding-top: 0;
}

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

	#bookingform td.mob {
		width: 100%;
		padding-right: 0;
		padding-left: 0;
		float: left;
		/* clear: both; */
	}

	#bookingform td.mob input {
	}

}

#bookingform select, #bookingform input[type="tel"], #bookingform input[type="email"], #bookingform input[type="text"], #bookingform textarea {
	font-size: 16px;
	color: #111;
	font-weight: 300;
	padding: 0 .4em;
	border: 1px solid #333;
	box-shadow: none;
	border-radius: 10px;
	background-color: #fff;
}

#bookingform select, #bookingform input[type="tel"], #bookingform input[type="email"], #bookingform input[type="text"] {
	height: 2em;
}

#bookingform textarea {
	padding: .2em .4em;
}

#bookingform h2 {
	font-size: 1.6em;
	color: #fff;
	background-color: #37869b;
	margin-bottom: 0;
	padding: 6px 6px 6px 24px;
	clear: none;
}

#bookingform h3 {
	font-size: 1.2em;
	color: #37869b;
	text-transform: uppercase;
	margin-bottom: 3px;
}

#bookingform a {
	color: #37869b;
}

#bookingform .wpcf7 form .wpcf7-response-output {
	margin: 0 30px 30px 30px;
	text-align: center;
}

@media only screen and (min-width: 550px) {

	#bookingform h2 {
		font-size: 2.2em;
	}

}



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

	#bookingform .col-left, #bookingform .col-right {
		width: 49%;
		padding-top: 30px;
		padding-bottom: 20px;
	}

	#bookingform .col-left {
		float: left;
	}

	#bookingform .col-right {
		padding-right: 16px;
		float: right;
	}

	table.select, #bookingform h2 {
		padding-left: 40px;
	}

	table.select, table.contact-info, #bookingform h2 {
		margin-bottom: 0;
	}

}

/* 
@media only screen and (min-width: 960px) {

	table.select, #bookingform h2 {
		float: left;
		padding-left: 30px;
	}

	table.contact-info {
		float: right;
	}

	table.select, table.contact-info, #bookingform h2 {
		width: 48%;
		margin-bottom: 0;
	}

}
 */

/* end booking form */











.row-dashed .col::before, .row-solid .col::before {/* vertical line for column style solid and dashed */
	/* border-left: 1px solid #111; */
	border-left-color: #111;
}









/* - - - - - - - - plugin PLUGIN plugins - - - - - - - - */


/* - - - reCAPTCHA v3 - - - */

.grecaptcha-badge {
    visibility: hidden;
}

/* 
body.page-id-77 .grecaptcha-badge {
    visibility: visible;
}
 */

/* - - - end reCAPTCHA v3 - - - */



/* - - - - - - - - end plugin PLUGIN plugins - - - - - - - - */



@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}