
/* 
======================================================
THEME FONTS
======================================================
*/

/*
font-family: 'Poppins', sans-serif;
font-weight: 400;
font-weight: 600;
font-weight: 700;

*/

/* 
======================================================
THEME COLORS
======================================================
*/
/* --- Primary color --- */
/*background*/
.bg-primary {
	background-color: #3BB348 !important;
}
/*text*/
.txt-primary {
	color: #3BB348 !important;
}

/* --- Scales of grey --- */
/*background*/
.bg-light-grey {
	background-color: #f2f3f4 !important;
}

.bg-mid-grey {
	background-color: #a0a5a8 !important;
}

.bg-dark-grey {
	background-color: #121212 !important;
}
/*text*/
.txt-light-grey {
	color: #f2f3f4 !important;
}

.txt-mid-grey {
	color: #a0a5a8 !important;
}

.txt-dark-grey {
	color: #3d474d !important;
}

/* 
======================================================
BASE
======================================================
*/

::selection {
	background-color: #045522;
	color: #FFFFFF;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: 'Poppins', sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
	-webkit-font-smoothing: antialiased;
	/* Font rendering in Chrome on Mac */
	-moz-osx-font-smoothing: grayscale;
	/* Font rendering in Firefox on Mac */
}

a,
a:link,
a:active {
	color: #3BB348;
	text-decoration: none;
}

	a:hover {
		text-decoration: none;
		color: #336180;
	}

ul {
	padding-left: 1.25rem;
}

li {
	font-size: 1rem;
}

td {
	font-size: 1rem;
}

img {
	max-width: 100%;
}

.scroll-to {
	display: block;
	position: relative;
	top: -77px;
	visibility: hidden;
}

@media screen and (min-width: 992px) {

	.scroll-to {
		top: -99px;
	}
}

@media screen and (min-width: 1200px) {

	.scroll-to {
		top: -121px;
	}
}

/* 
======================================================
TEXT AND TYPOGRAPHY
======================================================
*/

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	line-height: 1.2;
	text-transform: none;
}

h1 {
	font-size: 1.75rem;
	font-weight: 700;
	margin-bottom: .5rem;
	text-transform: initial;
}

h2 {
	font-size: 1.25rem;
	font-weight: 600;
	margin-bottom: .25rem;
	text-transform: uppercase;
}

h3 {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: .25rem;
	text-transform: uppercase;
}

h4 {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: .25rem;
}

h5 {
	font-size: 1rem;
	margin-bottom: .25rem;
}

h6 {
	font-size: .875rem;
	margin-bottom: .25rem;
}

h3 + h4 {
	margin-top: .75em;
}

p {
	font-weight: 400;
	line-height: 1.5;
}

img + p,
video + p {
	margin-top: 1rem;
}

p + h2,
p + h3,
p + h4 {
	margin-top: 1.5em;
}

p:last-child {
	margin-bottom: 0;
}

p.ingress {
	font-size: 1.125rem;
	font-weight: 600;
}

p strong {
	font-weight: 600;
}

@media (min-width: 576px) {
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		-webkit-hyphens: manual;
		-ms-hyphens: manual;
		hyphens: manual;
		/*hyphen only at ‐ or ­ (if needed)*/
	}
}

@media (min-width: 992px) {
	h1 {
		font-size: 2rem;
	}

	h2 {
		font-size: 1.5rem;
	}

	h3 {
		font-size: 1.25rem;
	}

	h4 {
		font-size: 1.125rem;
	}

	p.ingress {
		font-size: 1.25rem;
		line-height: 1.4;
	}
}

@media (min-width: 1200px) {
	h1 {
		font-size: 2.5rem;
	}
}

/* 
======================================================
LAYOUT UTILITIES
======================================================
*/

/* Spacing utilites X */

.padding-x-row {
	padding-left: 15px;
	padding-right: 15px;
	transition: .5s;
}

@media (min-width: 768px) {
	.padding-x-row {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

@media (min-width: 1200px) {
	.padding-x-row {
		padding-left: 8vw;
		padding-right: 8vw;
	}
}


/* Spacing utilites y */

.padding-y-row {
	padding-top: 2rem;
	padding-bottom: 2rem;
	transition: .5s;
}

@media (min-width: 960px) {
	.padding-y-row {
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}
}

@media (min-width: 1200px) {
	.padding-y-row {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
}


/* 
======================================================
SITE COMPONENTS
======================================================
*/

/* ========= Site Header ========= */
#site-header {
	background-color: #fff !important;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.10), 0 3px 1px -2px rgba(0,0,0,0.08), 0 1px 5px 0 rgba(0,0,0,0.2);
}

header#site-header {
	background-color: #fff !important;
}


/* ____________	Navbar ____________ */

.navbar {
	padding: 0rem;
}

.navbar-expand-xl .navbar-collapse {
	flex-direction: column;
	align-items: flex-end;
}

.navbar-brand img {
	width: 140px;
	height: auto;
}

#main-nav a.nav-link {
	color: #000;
	font-weight: 600;
	text-transform: uppercase;
	font-size: 1rem;
	padding: 0.5rem 0.625rem;
	white-space: nowrap;
}

#main-nav > .nav-item:last-child {
	margin-right: -0.625rem;
}

@media screen and (min-width: 1400px) {

	#main-nav a.nav-link {
		padding: 0.5rem 1rem;
	}

	#main-nav > .nav-item:last-child {
		margin-right: -1rem;
	}
}

@media screen and (min-width: 1700px) {

	#main-nav a.nav-link {
		font-size: 1.125rem;
	}
}

#secondary-menu a.nav-link {
	font-size: .875rem;
	color: #595959;
	;
}

#main-nav a.nav-link:hover {
	color: #3BB348;
}

span.green-text {
	color: #3BB348;
}

/* Mobile menu */

#main-nav {
	margin-left: -1rem;
	margin-right: -1rem;
	padding-top: 1rem;
}

	#main-nav .nav-item {
		position: relative;
	}

	#main-nav .nav-link {
		padding: 1rem 1rem;
	}

	#main-nav .nav-item .nav-link {
		border-top: 1px solid rgb(196, 196, 196, .3);
	}

@media screen and (min-width: 768px) {

	#main-nav {
		margin-left: -2rem;
		margin-right: -2rem;
	}

		#main-nav .nav-link {
			padding: 1rem 2rem;
		}
}

@media screen and (min-width: 992px) {

	#main-nav {
		margin-left: -3rem;
		margin-right: -3rem;
	}

		#main-nav .nav-link {
			padding: 1rem 3rem;
		}
}

/* Desktop */

@media screen and (min-width: 1200px) {

	#main-nav {
		margin-left: 0;
		margin-right: 0;
		border-top: 1px solid rgb(196, 196, 196, .3);
		padding-top: 1rem;
	}

		#main-nav .nav-item .nav-link {
			border: none;
		}

		#main-nav .nav-link {
			padding: 0.5rem 1rem;
		}
}

/* Dropdown mobile*/

#main-nav .dropdown-toggle {
	position: absolute;
	padding: 0.5rem 1rem;
	right: 0;
	top: 0;
	height: 60px;
	border-left: 1px solid rgb(196, 196, 196, .3);
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgb(196, 196, 196, .1);
}

	#main-nav .dropdown-toggle .fa-chevron-down {
		font-size: 1.75rem;
	}

	#main-nav .dropdown-toggle:after {
		display: none;
	}

#main-nav .dropdown-menu {
	width: 100%;
	padding: 0.5rem 0;
	margin: 0;
	border: none;
	border-top: 1px solid rgb(196, 196, 196, .3);
}

	#main-nav .dropdown-menu a.nav-link {
		font-weight: 400;
		text-transform: none;
		font-size: 1rem;
		white-space: wrap;
		padding: 0.5rem 1rem;
		border: none
	}

@media screen and (min-width: 768px) {

	#main-nav .dropdown-menu a.nav-link {
		padding: 0.5rem 2rem;
	}
}

@media screen and (min-width: 992px) {

	#main-nav .dropdown-menu a.nav-link {
		padding: 0.5rem 3rem;
	}
}

/* Dropdown desktop */

@media screen and (min-width: 1200px) {

	#main-nav .dropdown-toggle {
		display: none;
	}

	#main-nav .dropdown-menu {
		background-color: #f2f3f4;
		border-radius: 0;
		border: none;
		margin: 0;
		padding: 0;
		width: 250px;
	}

		#main-nav .dropdown-menu a.nav-link {
			color: #3d474d;
			font-size: .875rem;
			border-top: 1px solid #c8ced3;
			line-height: 1.1;
			white-space: wrap;
			padding: 1rem 1rem;
		}

			#main-nav .dropdown-menu a.nav-link:hover {
				color: #3BB348;
			}

	.dropdown:hover .dropdown-menu {
		display: block;
		margin-top: 0;
	}
}


@media (min-width: 992px) {
	.navbar-brand img {
		width: 190px;
		height: auto;
	}

	#secondary-menu a.nav-link {
		padding-right: .75rem;
		padding-left: .75rem;
	}
}

/* Mobile menu button */
.navbar .navbar-toggler {
	width: 32px;
	height: 24px;
	position: relative;
	transform: rotate(0deg);
	transition: .5s ease-in-out;
	cursor: pointer;
	padding: 0;
	outline: none !important;
	box-shadow: none !important;
	border: none;
}

.navbar-toggler span {
	display: block;
	position: absolute;
	height: 3px;
	width: 32px;
	background: #000;
	opacity: 1;
	transform: rotate(0deg);
	transition: .25s ease-in-out;
}

	.navbar-toggler span:nth-child(1) {
		top: 0;
		transform-origin: right center;
	}

	.navbar-toggler span:nth-child(2) {
		top: 12px;
	}

	.navbar-toggler span:nth-child(3) {
		top: 24px;
		transform-origin: right center;
	}

.navbar-toggler:not(.collapsed) span:nth-child(1) {
	transform: rotate(-45deg);
	top: 0px;
	right: 0;
	background-color: #000;
}

.navbar-toggler:not(.collapsed) span:nth-child(2) {
	opacity: 0;
}

.navbar-toggler:not(.collapsed) span:nth-child(3) {
	transform: rotate(45deg);
	top: 23px;
	right: 0;
	background-color: #000;
}


/* ========= Hero Block ========= */

#feature-media {
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	display: flex;
	flex-wrap: wrap;
	height: 100vh;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 1112px) and (-webkit-min-device-pixel-ratio: 2) {
	#feature-media {
		background-attachment: scroll;
		margin-top: -25px;
	}
}








#video-media {
	height: 80vh;
	overflow: hidden;
	z-index: -1;
}

@media screen and (min-width: 768px) {

	#video-media {
		height: 80vh;
		margin-top: 0;
	}
}

#video-media #inkaVideo {
	position: absolute;
	right: 0;
	bottom: 0;
	min-width: 100%;
	min-height: 100%;
	z-index: -1;
}

	#video-media #inkaVideo.mobile-video {
		position: relative;
		min-width: none;
		min-height: none;
		object-fit: cover;
		height: 100%;
		width: 100%;
		object-fit: cover;
	}





.hero-caption {
	max-width: 800px;
	/*	margin: 0 auto;*/
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}

	.hero-caption h1 {
		color: #fff;
		font-size: 2.25rem;
		line-height: 1.1;
		text-transform: uppercase;
		font-weight: 700;
		text-align: center;
	}

	.hero-caption p {
		margin: 1rem 0;
		text-align: center;
	}

.hero-text {
	font-size: 1.25rem;
}

.left-hero {
	margin-right: 1rem;
}

.left-hero-button {
	width: 100%;
}

@media (min-width: 576px) {
	.hero-caption {
		align-items: initial;
	}

		.hero-caption h1 {
			font-size: 2.75rem;
		}

		.hero-caption h1, .hero-caption p {
			text-align: left;
		}
}

@media (min-width: 992px) {
	.hero-caption h1 {
		font-size: 3rem;
	}

	.hero-caption p {
		font-size: 1.375rem;
	}
}

@media (min-width: 1200px) {
	.hero-caption h1 {
		font-size: 3.125rem;
	}

	.hero-caption p {
		font-size: 1.5rem;
	}
}

@media (max-width: 576px) {
	.btn-group {
		display: block;
	}

	.left-hero-button {
		width: 100%;
	}

	.left-hero {
		margin-right: 0;
	}
}
/* ========= Subpage Header Image ========= */
#header-img {
	height: 26vw;
	min-height: 320px;
}

	#header-img img {
		object-fit: cover;
		object-position: center;
		width: 100%;
		height: 100%;
	}

/* ========= Breadcrumb ========= */
.sticky-bread {
	position: sticky;
	top: 73px;
	z-index: 99;
}

.breadcrumb {
	background-color: #fff;
	border-bottom: 1px solid #dee2e6;
}

.breadcrumb-item {
	font-size: .75rem;
	font-weight: 600;
	text-transform: uppercase;
}

	.breadcrumb-item a {
		color: #828b94;
	}

.breadcrumb .active {
	color: #336180;
}

@media (min-width: 992px) {
	.sticky-bread {
		top: 104px;
	}
}

/* ========= Page Headings ========= */
.subpage-header {
	background-color: #f2f3f4;
}

	.subpage-header h1 {
		color: #336180;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 1;
		margin: 0;
	}

.section-header h2 {
	color: #3d474d;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}

@media (min-width: 992px) {
	.page-header h1 {
		font-size: 1.75rem;
	}

	.section-header h2 {
		font-size: 1.5rem;
	}
}

/* ========= Buttons ========= */
.theme-btn {
	display: inline-block;
	padding: .75rem 2rem;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	line-height: 1;
	border-radius: 3px;
	background-color: #3BB348;
	border: 1px solid #3BB348;
	transition: 0.25s;
}

a.theme-btn {
	color: #fff;
}

.theme-btn:hover {
	background-color: transparent;
	border: 1px solid #3BB348;
	color: #3BB348;
}

.hero-caption .theme-btn {
	border: 1px solid #fff;
	background-color: transparent;
}

	.hero-caption .theme-btn:hover {
		border: 1px solid #3BB348;
		background-color: #3BB348;
		color: #fff;
	}

.theme-btn.btn-lg {
	padding: 1rem 2rem;
	min-width: 200px;
}



/* ========= Service-section ========= */

.service-section .service-item img {
	padding: 2rem;
}

.service-item {
	border: 1px solid #E9E9E9;
	border-left: none;
	background: #fff;
}

	.service-item:hover {
		background: #F2F6F4;
	}

.service-section .row {
	margin: 0;
}

@media (min-width: 992px) {
	.service-item {
		padding: 0 3rem 3rem 3rem;
	}
}

@media (max-width: 991px) {
	.service-item {
		padding: 1rem;
	}
}
/* ========= Founders ========= */

.founders-item-img {
	padding-left: 0;
	padding-right: 0;
}


.founders-item-text {
	background: #F2F6F4;
}

@media (min-width: 1200px) {
	.founders-item-text {
		padding: 4rem;
		margin-left: -4rem;
		margin-bottom: -4rem;
		margin-top: 4rem;
	}

	.founders-item-img img {
		width: 110%;
		height: auto;
		padding-left: 0;
		padding-right: 0;
	}
}

@media (max-width: 1199px) {
	.founders-item-text {
		padding-left: 2rem;
	}

	.founders-item-img img {
		max-width: 100%;
		height: auto;
	}
}

@media (max-width: 992px) {
	.founders-item-text {
		padding-left: 15px;
		padding-right: 15px;
		padding-top: 2rem;
		padding-bottom: 2rem
	}

	.founders-item-img img {
		max-width: 100%;
		height: auto;
	}
}

/* ========= feature-section ========= */

.card {
	box-shadow: 0px 4px 4px 0px #0000001A;
	border: none;
}

.card-img-top img {
	border-top-left-radius: .25rem !important;
	border-top-right-radius: .25rem !important;
	height: 200px;
}

.card-body a {
	color: #000;
}

	.card-body a:hover {
		color: #fff;
	}

.card-body:hover {
	background: #3BB348;
	color: #fff !important;
}


@media (max-width: 992px) {
	.card {
		margin-bottom: 2rem;
	}
}

/* 
–––––––––––––––––––––––––––––––––––––––––––––––––
TIMELINE
–––––––––––––––––––––––––––––––––––––––––––––––––
*/

.timeline {
	border-left: 2px solid #006E51;
	padding-left: 5rem;
	padding-top: 2rem;
}

.time-post {
	display: flex;
	margin-bottom: 1rem;
	align-items: flex-start;
	position: relative;
}

	.time-post:last-child {
		margin-bottom: 0;
	}

.time-year {
	width: 80px;
	height: 80px;
	flex-basis: 66px;
	flex-grow: 0;
	flex-shrink: 0;
	background-color: #006E51;
	padding-top: 0.5rem;
	padding-bottom: 1rem;
	border-radius: 50%;
	color: #ffffff;
	font-size: 1.25rem;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	transform: translateX(-33px);
}

.time-events {
	margin-left: 57px;
	position: relative;
	padding: 0.875rem 1rem;
}

.time-post::before {
	content: "";
	display: block;
	position: absolute;
	top: 40px;
	left: -80px;
	width: 40px;
	height: 2px;
	background: #006E51;
	z-index: 1;
}

.time-events ul {
	padding-left: 1rem;
	margin: 0;
}

.time-events li {
	margin-bottom: 0.25rem;
}

	.time-events li:last-child {
		margin-bottom: 0;
	}

@media screen and (min-width: 576px) {



	.time-year {
		transform: translateX(-40px);
	}

	.time-events {
		margin-left: 30px;
		padding: 1.5rem;
	}
}


@media screen and (min-width: 1700px) {

	.timeline {
		margin-top: 4rem;
	}
}

@media screen and (max-width: 576px) {

	.timeline {
		margin-left: 0;
	}

	.time-post::before {
		width: 50px;
	}
}

@media screen and (max-width: 992px) {

	.timeline {
		margin-top: 2rem;
	}
}

/* 
END TIMELINE
–––––––––––––––––––––––––––––––––––––––––––––––––
*/

.contact-section {
	background: #F2F6F4;
}

.contact-img {
	border-radius: 50%;
	width: 210px;
	height: 210px;
}

	.contact-img img {
		border: 1px solid #3BB348;
		padding: 5px;
		border-radius: 50%;
		width: 200px;
		height: 200px;
	}

.contact-page p a {
	text-decoration: underline;
}

/* ========= Contact cards ========= */

#contact-cards {
	background-color: #F2F6F4;
}

.contact-card {
	background-color: #fff;
	border-radius: 2px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.18);
	margin-bottom: 1.75rem;
	padding: 1rem;
	height: 100%;
}

#contact-cards .col-lg-6 {
	margin-bottom: 2rem;
}

.contact-card img {
	width: 100%;
	min-height: 120px;
	aspect-ratio: 1/1;
	object-fit: cover;
}

.contact-card .fas {
	color: #3BB348;
	margin-right: .5rem;
}

.contact-card p:first-child {
	margin-top: 0;
}

.contact-card h3 {
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 0;
	text-transform: uppercase;
}

.contact-card ul {
	list-style-type: none;
	margin: 0.5rem 0;
	padding: 0;
}

.contact-card li {
	line-height: 1.2rem;
	margin: .125rem 0;
}

	.contact-card li a {
		color: #3BB348;
	}

		.contact-card li a:hover {
			color: #336180;
		}



/* ========= iFrame Map ========= */

.contact-map iframe {
	width: 100%;
	height: 320px;
}

/* ========= Site Foot ========= */

#sidfot {
	color: #fff;
}

	#sidfot h3 {
		margin-bottom: .75rem;
		font-size: 1.25rem;
		font-weight: 700;
		text-transform: uppercase;
		color: #fff;
		border-top: 1px solid rgba(255, 255, 255, 0.2);
		padding-top: 1.25rem;
	}

	#sidfot h4 {
		color: #fff;
		font-size: 1rem;
		text-transform: uppercase;
		font-weight: 700;
	}

	#sidfot p {
		font-size: .875rem;
	}

	#sidfot small {
		font-size: .75rem;
	}

	#sidfot img.world {
		opacity: .5;
		padding: 1rem;
	}

	#sidfot a[href^=tel] {
		text-decoration: inherit;
		color: inherit;
	}

.sociala-ikoner a {
	margin-right: 0.5rem;
	color: grey;
}

	.sociala-ikoner a:hover {
		margin-right: 0.5rem;
		color: #336180;
	}

.footer-logo img {
	max-height: 200px;
}

@media screen and (max-width: 992px) {
	.footer-logo img {
		max-height: 100px;
	}
}

.privacy {
	border-top: 0.5px solid rgba(196, 196, 196, 0.2);
	color: #fff;
}



/* Enkel men inte optimal lösning för css fixed position paralax bakgrund på mobila enheter	*/
@media only screen and (min-device-width: 320px) and (max-device-width: 1112px) and (-webkit-min-device-pixel-ratio: 2) {
	.hero-block {
		background-attachment: scroll;
	}
}


.subpage-section {
	border-bottom: 1px solid rgb(196, 196, 196, .3);
}

	.subpage-section img {
		max-width: 100%;
		height: auto;
	}

.narrow-subpage-container {
	max-width: 1100px;
}

p.quote {
	border-left: 4px solid #3BB348;
	padding-left: 1rem;
	font-size: 1.125rem;
}

@media screen and (min-width: 1200) {

	p.quote {
		font-size: 1.25rem;
	}
}

/* General page */

.header-banner {
	background-color: #fff;
	background-position: top center;
	background-size: cover;
	margin-top: 68px;
	display: flex;
	min-height: 25vw;
	flex-direction: column;
	justify-content: center;
}

@media screen and (min-width: 992px) {
	.header-banner {
		margin-top: 90px;
	}
}

@media screen and (min-width: 1200px) {

	.header-banner {
		margin-top: 95px;
		min-height: 20vw;
	}
}

@media screen and (min-width: 1700px) {
	.header-banner {
		margin-top: 128px;
	}
}

.txt-white {
	color: #3BB348 !important;
}

/* Umbraco forms */

.umbraco-forms-container.col-md-12 {
	padding: 0;
}

.umbraco-forms-field.epostadress.shortanswer.alternating, .umbraco-forms-field.namn.shortanswer.mandatory {
}

.button-col {
	padding: 0;
}

.umbraco-forms-form {
	padding: 10px 0 10px 0
}

.umbraco-forms-caption {
	font-size: 2em !important;
	line-height: 2em !important
}

.umbraco-forms-field {
	clear: both
}

	.umbraco-forms-field div label {
		display: inline
	}

label.umbraco-forms-label {
	font-weight: 700;
	display: block;
	background: 0 0 !important
}

.umbraco-forms-form small {
	display: block;
	float: left;
	clear: both;
	padding: 5px 5px 5px 200px
}

.umbraco-forms-form fieldset {
	padding: 1em 1em 0 0;
	margin: 0 0 1.5em 0;
	border: none !important
}

.umbraco-forms-form .umbraco-forms-navigation {
	padding: 1em 0
}

.umbraco-forms-form legend {
	font-weight: 700;
	font-size: 1.2em;
	line-height: 1.2em;
	display: block
}

.umbraco-forms-form input.text, .umbraco-forms-form input.title, .umbraco-forms-form select, .umbraco-forms-form textarea {
	margin: .5em 0;
	border: 1px solid #bbb
}

	.umbraco-forms-form input.text:focus, .umbraco-forms-form input.title:focus, .umbraco-forms-form select:focus, .umbraco-forms-form textarea:focus {
		border: 1px solid #666
	}

.umbraco-forms-form input.text, .umbraco-forms-form textarea {
	max-width: 400px !important;
	padding: 5px;
	display: block;
	width: 95%
}

.umbraco-forms-form textarea {
	height: 250px
}

.umbraco-forms-form input.fileupload {
	height: auto !important
}

.umbraco-forms-form .checkboxlist, .umbraco-forms-form .radiobuttonlist, .umbraco-forms-form span.checkbox {
	display: block;
	float: left;
	padding: 10px
}

.umbraco-forms-form .checkboxlist-horizontal div, .umbraco-forms-form .radiobuttonlist-horizontal div {
	display: inline;
	float: left;
	margin-right: 10px
}

.umbraco-forms-form .checkboxlist label {
	float: left;
	clear: left
}

.umbraco-forms-form .checkbox input, .umbraco-forms-form .checkboxlist input, .umbraco-forms-form .radiobuttonlist input {
	width: auto !important;
	height: auto !important;
	border: none !important;
	display: inline !important
}

.umbraco-forms-form .hiddenfield {
	display: none
}

.umbraco-forms-button {
	margin-right: 10px;
	padding: 2px 10px
}

.umbraco-forms-error-message {
	padding: .8em;
	margin-bottom: .5em;
	border: 2px solid #fbc2c4
}

.umbraco-forms-error-message {
	background: #fbe3e4;
	color: #8a1f11
}

.umbraco-forms-form input.contourError, .umbraco-forms-form input.input-validation-error, .umbraco-forms-form textarea.contourError, .umbraco-forms-form textarea.input-validation-error {
	background: #fbe3e4;
	border-color: #fbc2c4
}

.umbraco-forms-form span.contourError, .umbraco-forms-form span.field-validation-error {
	color: #8a1f11 !important;
	background: 0 0 !important
}

.umbraco-forms-form #recaptcha_widget_div {
	margin-left: 200px
}

.umbraco-forms-form .field-validation-error {
	padding-left: 5px
}

.umbraco-forms-hidden {
	display: none !important
}

/* ======= Video-header ======= */
#video-container {
	overflow: hidden;
	position: relative;
	height: 100%;
	min-height: 320px;
}

.medimi-video {
	object-fit: cover;
	height: 100%;
	width: 100%;
}

#text-container {
	background-color: #F2F6F4;
	height: 100%;
	padding: 1rem;
	position: relative;
}

	#text-container h1 {
		text-transform: uppercase;
	}

.text-content {
	background-color: #fff;
	background-image: url(../images/heart_new.png);
	background-size: contain;
	background-position: bottom right;
	background-repeat: no-repeat;
	border-radius: 0.25rem;
	margin-top: -4rem;
	padding: 1rem;
	width: auto;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media (min-width: 992px) {
	#text-container {
		background-color: #F2F6F4;
		height: 100%;
		padding: 2rem;
		position: relative;
		min-height: 420px;
	}

	.text-content {
		position: absolute;
		top: 4vw;
		bottom: 4vw;
		right: 2rem;
		width: calc(50vw - 2rem);
		padding: 2vw;
		margin-top: 0;
	}
}

.icon-content p {
	opacity: 1;
}

@media (max-width: 992px) {
	#text-container h1 {
		text-align: center;
	}

	#text-container {
		text-align: center;
	}
}

@media (min-width: 1200px) {
	.text-content {
		right: 8vw;
		width: calc(50vw - 8vw);
	}
}

.modal-header {
	border: 0;
	padding-bottom: 0;
}


/* ======= End video-header ======= */

[type="button"] {
	-webkit-appearance: none;
}


#umbraco_form_4f3586b89d4c48ebbd600a7c1d51afe2 .umbraco-forms-field-wrapper input, #umbraco_form_4f3586b89d4c48ebbd600a7c1d51afe2 .umbraco-forms-field-wrapper textarea {
	max-width: 100% !important;
	width: 95%;
}



.btn.primary {
	display: inline-block;
	padding: .75rem 2rem;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	line-height: 1;
	border-radius: 3px;
	background-color: #3BB348;
	border: 1px solid #3BB348;
	transition: 0.25s;
}

	.btn.primary:hover {
		background-color: transparent;
		border: 1px solid #3BB348;
		color: #3BB348;
	}

.umbraco-forms-navigation.row-fluid .col-md-12 {
	padding: 1em 0;
}

/* 
======================================================
LINKED SECTION PAGE
======================================================
*/

/* ------- Header ------- */

.section-page-header {
	background-color: #045522;
	justify-content: space-between;
}

	.section-page-header * {
		color: #FFFFFF;
	}

	.section-page-header > div {
		flex: 0 0 100%;
	}

@media screen and (min-width: 768px) {

	.section-page-header > div {
		flex-basis: calc(50% - 1rem);
	}
}

@media screen and (min-width: 1200px) {

	.section-page-header {
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
		flex-basis: calc(50% - 1rem);
	}
}

.section-page-header-text {
	padding-bottom: 2rem;
}

	.section-page-header-text h1 {
		margin-bottom: 0.5em;
	}

	.section-page-header-text p {
		font-size: 1.125rem;
		font-size: clamp(1.125rem, 0.816rem + 0.644vw, 1.5rem);
		line-height: 1.2;
	}

@media screen and (min-width: 768px) {

	.section-page-header-text {
		padding-right: 2rem;
		padding-bottom: 0;
	}
}

@media screen and (min-width: 1200px) {

	.section-page-header-text {
		padding-right: 3rem;
	}
}

.section-page-menu {
	list-style: none;
	padding-left: 0;
	border-top: 1px solid rgba(255,255,255,0.2);
}

@media screen and (min-width: 768px) {

	.section-page-menu {
		border-top: none;
	}
}

@media screen and (min-width: 1700px) {

	.section-page-menu {
		column-count: 2;
		column-gap: 2rem;
	}
}

.section-page-menu .nav-link {
	padding: 0.5em 0;
	color: #FFFFFF;
	border-bottom: 1px solid rgba(255,255,255,0.2);
	display: flex;
	justify-content: space-between;
	align-items: center;
	break-inside: avoid-column;
}

	.section-page-menu .nav-link:hover {
		color: #FFFFFF;
	}

	.section-page-menu .nav-link .fa-chevron-right {
		font-size: 0.75rem;
		margin-left: 2rem;
		transition: transform ease 0.2s;
	}


	.section-page-menu .nav-link:hover .fa-chevron-right {
		transform: rotate(90deg);
	}

/* ------- Content sections ------- */

.linked-content-section.d-flex {
	justify-content: space-between;
}

	.linked-content-section.d-flex > div {
		flex: 0 0 100%;
	}

.linked-content-section:nth-of-type(even) {
	background-color: #F8F8F8;
}

.image-quote-linked-section .content-section-image {
	order: 1;
}

.image-quote-linked-section .content-section-quote {
	order: 2;
}

@media screen and (min-width: 768px) {

	.linked-content-section.d-flex > div {
		flex-basis: 50%;
	}

	.linked-content-section.d-flex:nth-of-type(odd) > div:first-child {
		order: 2;
	}

	.linked-content-section:nth-of-type(odd) > div:last-child {
		order: 1;
	}

	.linked-content-section.d-flex:nth-of-type(odd) > div:first-child {
		order: 2;
	}

	.image-quote-linked-section:nth-of-type(even) > .content-section-image {
		order: 2;
	}

	.image-quote-linked-section:nth-of-type(even) > .content-section-quote {
		order: 2;
	}
}

/* ------- Padding images & quotes ------- */

.linked-content-section.d-flex > div:last-child {
	padding-top: 2rem;
}

.image-quote-linked-section.d-flex > div:last-child {
	padding-top: 0rem;
}

.image-quote-linked-section.d-flex > div:first-child {
	padding-top: 2rem;
}

@media screen and (min-width: 768px) {

	.linked-content-section.d-flex > div:last-child {
		padding-top: 0;
	}

	.image-quote-linked-section.d-flex > div:first-child {
		padding-top: 0;
	}

	.content-section-image {
		padding-left: 2rem;
	}

	.linked-content-section:nth-of-type(odd) > div.content-section-image {
		padding-left: 0;
		padding-right: 2rem;
	}

	.image-quote-linked-section .content-section-quote {
		padding-right: 1rem;
	}

	.image-quote-linked-section:nth-of-type(odd) > .content-section-quote {
		padding-right: 0;
		padding-left: 1rem;
	}

	.text-quote-linked-section .content-section-quote {
		padding-left: 3rem;
	}

	.text-quote-linked-section:nth-of-type(odd) > div.content-section-quote {
		padding-left: 0;
		padding-right: 3rem;
	}
}

@media screen and (min-width: 1200px) {

	.content-section-image {
		padding-left: 3rem;
	}

	.linked-content-section:nth-of-type(odd) > div.content-section-image {
		padding-left: 0;
		padding-right: 3rem;
	}

	.text-quote-linked-section .content-section-quote {
		padding-left: 4rem;
	}

	.text-quote-linked-section:nth-of-type(odd) > div.content-section-quote {
		padding-left: 0;
		padding-right: 4rem;
	}
}

/* ------- Text ------- */

.content-section-text h2 {
	margin-bottom: 1rem;
	font-size: clamp(1.25rem, 0.806rem + 0.926vw, 1.5rem);
}

.content-section-text h3:not(:first-child) {
	margin-top: 1.8em;
}

.content-section-text p {
	font-size: clamp(1rem, 0.778rem + 0.463vw, 1.125rem);
}

.content-section-text li {
	color: #000000;
	font-size: clamp(1rem, 0.778rem + 0.463vw, 1.125rem);
}

	.content-section-text li:not(:last-child) {
		margin-bottom: 0.5em;
	}

/* ------- Image ------- */

.content-section-image img {
	width: 100%;
}

/* ------- Quote ------- */

.content-section-quote h2 {
	margin-bottom: 1rem;
}

.quote-wrap {
	border-left: 4px solid #3BB348;
	padding-left: 1rem;
}

.quote-text {
	font-size: 1.125rem;
	max-width: 54ch;
}

@media screen and (min-width: 1200px) {

	p.quote-text {
		font-size: 1.25rem;
	}
}

/* ------- Centered text block ------- */

.content-section-center-text {
	width: 100%;
	max-width: 770px;
	margin: 0 auto;
}

/* ------- Button ------- */

.linked-content-section p + a.theme-btn {
	margin-top: 1em;
}

/* 
======================================================
FOOTER CONTACT SECTION
======================================================
*/

.footer-contact-section {
	background-color: #045522;
	justify-content: center;
}

	.footer-contact-section > div {
		flex: 0 0 100%;
	}

@media screen and (min-width: 576px) {

	.footer-contact-section > div.footer-contact-image {
		flex-basis: 33.33%;
	}

	.footer-contact-section > div.footer-contact-text {
		flex-basis: 66.66%;
		padding-left: 2rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

@media screen and (min-width: 1100px) {

	.footer-contact-section {
		padding-left: calc(50% - 450px);
		padding-right: calc(50% - 450px);
	}
}

.footer-contact-image img {
	width: 100%;
	max-width: 300px;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	border: 2px solid #FFFFFF;
	color: #FFFFFF;
	margin: 0 auto 1.5rem;
	display: block;
}

@media screen and (min-width: 576px) {

	.footer-contact-image img {
		margin: 0 0 0 auto;
	}
}

.footer-contact-text * {
	color: #FFFFFF;
	text-align: center;
}

@media screen and (min-width: 576px) {

	.footer-contact-text * {
		text-align: left;
	}
}

.footer-contact-text-main h3 {
	text-transform: none;
	font-size: clamp(1.5rem, 1.038rem + 1.282vw, 2rem);
}

.footer-contact-text-main p {
	font-size: clamp(1rem, 0.885rem + 0.321vw, 1.125rem);
}

.footer-contact-text-info {
	border-top: 1px solid #3BB348;
	margin-top: 1rem;
	padding-top: 1rem;
}

	.footer-contact-text-info h4 {
		font-size: 1rem;
		margin-bottom: 0;
		font-weight: 700;
	}

	.footer-contact-text-info p {
		margin-bottom: 0.25em;
	}

.footer-contact-info-list {
	list-style: none;
	padding-left: 0;
}

	.footer-contact-info-list a {
		color: #FFFFFF;
	}

	.footer-contact-info-list .fal {
		width: 1rem;
		margin-right: 0.75em;
		color: #3BB348;
	}

/* 
======================================================
KNOWLEDGE BANK PAGE
======================================================
*/

.knowledge-bank-header {
	background-size: cover;
	background-position: center;
	width: 100%;
	aspect-ratio: 5 / 1;
}

	.knowledge-bank-header h1 {
		color: #FFFFFF;
		font-weight: 700;
		margin: 0;
	}

.knowledge-bank-preamble p.ingress {
	font-weight: 400;
	max-width: 68ch;
	margin: 0 auto 1.25em;
}

@media screen and (min-width: 1200px) {

	.knowledge-bank-preamble p.ingress {
		margin-bottom: 2.5em;
	}
}

.knowledge-bank-items-section {
	margin-left: -0.5rem;
	margin-right: -0.5rem;
}

	.knowledge-bank-items-section > .d-flex > a {
		flex: 0 0 calc(100% - 1rem);
		margin: 0 0.5rem 1.5rem;
	}

@media screen and (min-width: 576px) {

	.knowledge-bank-items-section > .d-flex > a {
		flex-basis: calc(50% - 1rem);
	}
}

@media screen and (min-width: 992px) {

	.knowledge-bank-items-section > .d-flex > a {
		flex-basis: calc(33.33% - 1rem);
	}
}

@media screen and (min-width: 1200px) {

	.knowledge-bank-items-section {
		margin-right: -1rem;
		margin-left: -1rem;
	}

		.knowledge-bank-items-section > .d-flex > a {
			flex-basis: calc(33.33% - 2rem);
			margin: 0 1rem 2rem;
		}
}

.knowledge-bank-section-button-wrap {
	text-align: center;
}

	.knowledge-bank-section-button-wrap button[aria-expanded="true"] {
		display: none;
	}

a.knowledge-bank-item {
	color: #000000;
	display: flex;
	flex-direction: column;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.25);
}

	a.knowledge-bank-item:hover {
		color: #000000;
		outline: 1px solid #3bb348;
	}

	a.knowledge-bank-item img {
		width: 100%;
		aspect-ratio: 3 / 2;
	}

.knowledge-bank-item-text {
	background-color: #FFFFFF;
	border-top: 1px solid #CCCCCC;
	padding: clamp(1rem, 0.299rem + 1.13vw, 1.5rem) clamp(1rem, -0.401rem + 2.26vw, 2rem);
	flex-grow: 1;
}

p.knowledge-bank-category {
	color: #3BB348;
	font-weight: 600;
	margin: 0;
	text-transform: uppercase;
}

.knowledge-bank-item-text h2,
.knowledge-bank-item-text h3 {
	font-size: 1.25rem;
	margin-top: 0;
}

p.knowledge-bank-preview-content {
	font-weight: 300;
}

/* 
======================================================
KNOWLEDGE BANK ITEM PAGE
======================================================
*/

.knowledge-bank-article-wrap {
	max-width: 900px;
	margin: 0 auto;
}

	.knowledge-bank-article-wrap h2 {
		margin-top: 0.25rem;
		text-transform: none;
		font-size: clamp(1.625rem, 1.464rem + 0.714vw, 2rem); /* 360-1200 */
		margin-bottom: 1rem;
	}

	.knowledge-bank-article-wrap h4 {
		font-weight: 500;
	}

	.knowledge-bank-article-wrap p.ingress {
		font-weight: 500;
		font-size: clamp(1.125rem, 1.071rem + 0.238vw, 1.25rem); /* 360-1200 */
	}

	.knowledge-bank-article-wrap p:not(.knowledge-bank-category):not(.ingress) {
		font-weight: 300;
		font-size: clamp(1rem, 0.946rem + 0.238vw, 1.125rem); /* 360-1200 */
	}

	.knowledge-bank-article-wrap li {
		font-weight: 300;
		font-size: clamp(1rem, 0.946rem + 0.238vw, 1.125rem); /* 360-1200 */
	}

.knowledge-bank-article-image {
	margin-top: 2rem;
}

	.knowledge-bank-article-image img {
		width: 100%;
		border-radius: 8px;
	}

.knowledge-bank-archive-headline h2 {
	margin-bottom: 2rem;
}

.knowledge-bank-button-wrap {
	margin-top: 1rem;
}

.grecaptcha-badge {
	bottom: 6rem !important;
}

.knowledge-bank-cta-banner {
	background-color: #F2F6F4;
	padding: 2rem;
	margin-top: 2rem;
	border-radius: 8px;
}

	.knowledge-bank-cta-banner h2,
	.knowledge-bank-cta-banner h3,
	.knowledge-bank-cta-banner p,
	.knowledge-bank-cta-banner a {
		color: #212529;
	}

	.knowledge-bank-cta-banner a {
		font-weight: 400;
	}

	.knowledge-bank-cta-banner h2,
	.knowledge-bank-cta-banner h3 {
		font-size: 1.875rem;
		margin-bottom: 0.5rem;
	}

	.knowledge-bank-cta-banner p {
		font-weight: 400 !important;
	}

	.knowledge-bank-cta-banner a:hover {
		color: #3BB348;
	}

	.knowledge-bank-cta-banner .footer-contact-info-list .far {
		margin-right: 0.625rem;
		width: 1rem;
		color: #3BB348;
	}
