﻿/*
1. Custom Bootstrap
2. Skip Navigation
3. General Styling
4. General Title
4.1 General Title Main
5. General Image
5.1 General Image Size / Shape
6. Site Header
6.1 Site Header Logo
6.2 Site Header (white)
6.3 Site Header Search
7. Navigation
8. Mobile Navigation
9. Section General
9.1 Section Padding
9.2 Section Background
10. Article General
11. General Button
12. Column 
12.1 Column Media
12.2 Column Background
12.3 Column Vertical Align
13. List
13.1 Listelement Title Size
13.2 Employee List
14. Target Last Same Width Row in Grid (Beta)
15. Search result
16. White
17. Form
18. Misc
20. Site Sub footer
21. Calendar
21.1 Calendar Template 1
21.2 Calendar Template 2
21.3 Calendar Template 3

40. Element Feedback
41. Element Imagebanner
42. Element Right and Left Content - Text and Image
42.1 Element Right and Left Content Padding
42.2 Element Right and Left Content Width
42.3 Element Right and Left Content w/ Background Color
43. Open/close content

97. Rotating Elements
97. Flexslider

*/

/*
=======================================================================
	1. Custom Bootstrap
=======================================================================
*/

.container .container {padding:0!important;margin:0!important;width:auto!important;}

.containerwidth {margin-left:auto;margin-right:auto;}

@media (min-width:1300px) {.container {max-width:1270px;}}
@media (min-width:1400px) {.container {max-width:1370px;}}
@media (min-width:1500px) {.container {max-width:1470px;}}

@media (min-width:1300px) {.containerwidth {max-width:1210px;}}
@media (min-width:1400px) {.containerwidth {max-width:1310px;}}
@media (min-width:1500px) {.containerwidth {max-width:1410px;}}


/*
=======================================================================
	2. Skip Navigation
=======================================================================
*/

#tilinnhold, #tilnavigasjon {
	position: absolute;
	overflow: hidden;
	z-index:99999;
	text-align:center;
	width:100%;
	color:#fff;
	top:-35px;
	font-size:18px;
	-webkit-transition: all 0.3s ease;                  
	-moz-transition: all 0.3s ease;                 
	-o-transition: all 0.3s ease;   
	-ms-transition: all 0.3s ease;          
	transition: all 0.3s ease;
	}

#tilinnhold:focus, #tilnavigasjon:focus {
	height:40px;
	line-height:40px;
	text-align:center;
	width:100%;
	top:0;
	background: #000;
	}


/*
=======================================================================
	3. General styling
=======================================================================
*/

html {font-size: 100%;}

body {
    font-weight: normal;
    line-height: 1.45;
}

main:focus {outline:0;}

h1,h2,h3,h4,h5,h6 {
	margin:0 0 1.25rem 0;
	}

h1 {font-size:1.8rem}
h2 {font-size:1.6rem}
h3 {font-size:1.5rem}
h4 {font-size:1.5rem}
h5 {font-size:1.5rem}
h6 {font-size:1.5rem}
.xltitle h1.page-section-title {font-size: 3.2rem;font-weight:900;}
.xltitle h2.page-section-title {font-size: 2.6rem;font-weight:900;}

a {
	text-decoration: none;
	-webkit-transition: all 0.3s ease;                  
	-moz-transition: all 0.3s ease;                 
	-o-transition: all 0.3s ease;   
	-ms-transition: all 0.3s ease;          
	transition: all 0.3s ease;
	}

a:focus,
a:hover {color:#000;}

blockquote { border-left: 5px solid #929292;}

section blockquote {margin:20px 0 0 0;}
section div[class*="col-"] ~ blockquote {margin:0;}
section blockquote p {margin:0;padding:0;}


@media only screen and (min-width:768px) {
	body {font-size: 16px;}
	h1 {font-size:3rem}
	.xltitle h1.page-section-title {font-size:3rem;}
	h2 {font-size:1.7rem}
	.xltitle h2.page-section-title {font-size:3rem;}
	h3 {font-size:1.3rem}
	h4 {font-size:1.3rem}
	h5 {font-size:1.2rem}
	h6 {font-size:1.1rem}
	}

@media only screen and (min-width:991px) {
	body {font-size: 17px;line-height: 1.65;}
	h1 {font-size:2.8rem}
	.xltitle h1.page-section-title {font-size:4rem!important;}
	h2 {font-size:1.7rem}
	.xltitle h2.page-section-title {font-size:4rem!important;}
	h3 {font-size:1.4rem}
	h4 {font-size:1.4rem}
	h5 {font-size:1.3rem}
	h6 {font-size:1.2rem}
	}

@media only screen and (min-width:1200px) {
	body {font-size: 19px;}
	h1 {font-size:3.5rem}
	.xltitle h1.page-section-title {font-size:5rem!important;}
	h2 {font-size:1.7rem}
	.xltitle h2.page-section-title {font-size:5rem!important;}
	h3 {font-size:1.4rem}
	h4 {font-size:1.4rem}
	h5 {font-size:1.3rem}
	h6 {font-size:1.2rem}
	}


/*
=======================================================================
	4. Margins
=======================================================================
*/

:root {
    --default-margin-0: 0;
    --default-margin-1: min(10vh, 3rem);
    --default-margin-2: min(11vh, 5rem);
    --default-margin-3: min(12vh, 6rem);
    --default-margin-4: min(13vh, 10rem);
}


/*
=======================================================================
	4. General Title
=======================================================================
*/

.page-section-title {margin-bottom:2rem}

h1.page-section-title {font-size:2.5rem;}
h2.page-section-title {font-size:2rem;}	
h3.page-section-title {font-size:1.75rem;}	
h4.page-section-title {font-size:1.75rem;}	
h5.page-section-title {font-size:1.75rem;}	
h6.page-section-title {font-size:1.75rem;}	

@media only screen and (min-width:768px) {
	}

@media only screen and (min-width:991px) {
	.page-section-title {margin-bottom:2.5rem}

	h1.page-section-title {font-size:3rem;}
	h2.page-section-title {font-size:2.5rem;}	
	h3.page-section-title {font-size:2rem;}	
	h4.page-section-title {font-size:2rem;}	
	h5.page-section-title {font-size:2rem;}	
	h6.page-section-title {font-size:2rem;}	
	}

@media only screen and (min-width:1200px) {
	.page-section-title {margin-bottom:3rem}
	
	h1.page-section-title {font-size:3.5rem;}
	h2.page-section-title {font-size:2.5rem;}	
	h3.page-section-title {font-size:2rem;}	
	h4.page-section-title {font-size:2rem;}	
	h5.page-section-title {font-size:2rem;}	
	h6.page-section-title {font-size:2rem;}	
	}


/*
=======================================================================
	4.1 General Title Main
=======================================================================
*/

.page-article h2:first-of-type {margin-bottom:1.25rem;}

@media only screen and (min-width:768px) {
	article.page-article h1 {font-size:2.8rem}
	article.page-article h2 {font-size:2rem!important;margin-bottom:1rem!important;}
	}

@media only screen and (min-width:991px) {
	article.page-article h1  {font-size: 3rem}
	article.page-article h2  {font-size: 2rem!important;}
	}

@media only screen and (min-width:1200px) {
	article.page-article h1  {font-size: 3.2rem}
	article.page-article h2  {font-size: 2rem!important;}
	}


/*
=======================================================================
	5. General Image
=======================================================================
*/

.circular figure .thumb {
	-webkit-border-radius: 1000px;
	-moz-border-radius: 1000px;
	border-radius: 1000px;	
	}

.circular figure  {margin-left: auto;margin-right:auto;}
.circular figure a:hover		 {background: none;}

figure figcaption {font-size:0.9em;opacity:0.8;
	-webkit-transition: all 0.3s ease;                  
  -moz-transition: all 0.3s ease;                 
  -o-transition: all 0.3s ease;   
  -ms-transition: all 0.3s ease;          
  transition: all 0.3s ease;
	}

figure:hover figcaption {opacity:1;}


/*
=======================================================================
	5.1 General Image Size / Shape
=======================================================================
*/

.img-fluid {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
    }

/* Article image styles */
.thumb  {/*margin:0 auto;*/width:100%;}
.large-media {width: 100%; margin: 0 0 1.5rem 0;}

.small-media {
	position:relative;
	-webkit-transition: all .4s ease-in-out;
  -moz-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
	}
	
.small-media:after {
	position:absolute;
	top:10px;
	right:10px;
	font-family: "Font Awesome 5 Pro";
	content: "\f055";
	margin-left:10px;
	opacity:0.7;
	color:#fff;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	pointer-events: none;
	}

.small-media:after:hover {opacity:1;}	

.small-media.fullwidth:after {
	-moz-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	}

[class^="small-media"]:hover {cursor:pointer;}

.small-media.fullwidth { width: 100%; float:right; margin: 0 0 20px 0;}
.small-media.fullwidth img {width:100%;}
.small-media-left { width: 40%; float:left; margin: 0 20px 20px 0;}
.small-media-left.fullwidth { width: 100%; float:left; margin: 0 0 20px 0;}

.small-media-right { width: 40%; float:right; margin: 0 0 20px 20px;}
.small-media-right.fullwidth { width: 100%; float:right; margin: 0 0 20px 0;}

figure {position:relative;}
figure a:hover,
a:hover figure {background: #fff;display:block;}

@media screen and (min-width: 768px) {
	.large-media {margin: 0 0 1.75rem 0;}
	}
	
@media screen and (min-width: 991px) {
	.large-media {margin: 0 0 2rem 0;}
	figure a:hover img,
	a:hover figure img {opacity:0.90;}
	}

@media screen and (min-width: 1200px) {
	.large-media {margin: 0 0 2.5rem 0;}
	}




/*
=======================================================================
	6. Site Header
=======================================================================
*/

header.mainheader {position:relative;z-index:999;border-bottom: 1px solid rgba(0,0,0,0.15);}
header.mainheader > .container {position:relative;}

header.mainheader div[class*="col-"] {height:100%;}

header.mainheader .header-elements {display: flex;    justify-content: space-between;align-items: center;padding-top:15px;padding-bottom:15px;width:100%;}


/*
=======================================================================
	6.1 Site Header Logo
=======================================================================
*/

.site-logo {width:150px;
	-webkit-transition: width 0.7s ease;                  
	-moz-transition: width 0.7s ease;                 
	-o-transition: width 0.7s ease;   
	-ms-transition: width 0.7s ease;          
	transition: width 0.7s ease;
	}

@media screen and (min-width: 768px) {
	.site-logo {width:200px;}
	}
	
@media screen and (min-width: 991px) {
	}

@media screen and (min-width: 1200px) {
	.site-logo {width:275px;}
	}


/*
=======================================================================
	6.2 Site Header (white)
=======================================================================
*/

header.white {color:#fff;}
header.white .site-navigation ul.sf-menu a,
header.white .site-navigation ul.sf-menu:hover a {color: #fff;text-decoration:none!important;}
header.white .site-navigation ul.sf-menu > li.active > a > span {color:#fff;opacity:1;border-color:#fff;}
header.white .site-navigation ul.sf-menu > li > a:hover {opacity:1;}


/*
=======================================================================
	6.3 Site Header Search
=======================================================================
*/

/*.btn-site-search {display:block!important;}*/
.btn-site-search a {position:static;padding-right:0;}

.wrapper-site-search-outer {display:none;padding-bottom:10px;}
.wrapper-site-search {display:table;height:100%;width:100%;}
.wrapper-site-search-inner {display:table-cell;vertical-align:middle;}

.site-search {
	width:100%;
	padding:0;
	border: 0;
	margin-top:0;
	margin-bottom:0;
	-webkit-transition: all 0.15s ease-out;
	-moz-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	border: 1px solid rgba(0, 0, 0, 0.3);
	background: #fff;
	}
	
.site-search div {
	box-sizing: border-box;
	width: 100%;
	display: table-cell;
	}

.site-search input[type=text] {
	height: 45px;
	line-height:50px;
	width: 100%;
	padding: 0 20px;
	float:left;
	margin: 0;
	border: 0;
	color: #000;
	font-size: 1em;
	font-weight:100;
	background: #fff;
	-webkit-transition: all 0.15s ease-out;
	-moz-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	}

.site-search input[type=text]:focus {outline:0;}

.site-search button {
	float:left;
	width: 45px;
	height: 45px;
	border: 0;
	background-color:transparent;
	background-image: url(../images/icon-search.png);
	background-repeat: no-repeat;
	color: #bfbfbf;
	cursor: pointer;
	font-size: 1.4em;
	-webkit-transition: all 0.15s ease-out;
	-moz-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	}

.site-search button:hover {
	opacity:1;
	}


/*
=======================================================================
	7. Navigation
=======================================================================
*/

.site-navigation {float:right;}
.site-navigation .sf-menu > li {display:none;}

.site-navigation .sf-menu > li > a > span {opacity:0.8;border-bottom: 2px solid transparent;}
.site-navigation .sf-menu > li.active > a > span {opacity:1;border-color: #000;color:#000;}

.site-navigation ul.sf-menu > li > ul > li:first-child {position:relative;}
.site-navigation ul.sf-menu > li > ul > li:first-child:before {
	content:"";
	position:absolute;top:-10px;left:45px;
	width: 0; 
	height: 0; 
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid var(--accent-color);
	}

.site-navigation ul.sf-menu > li > ul > li:first-child:hover:before {
	border-bottom: 10px solid #6f7073;
	}

.site-navigation ul.sf-menu > li > a {font-size:1em;color:#828282;font-weight:400;}
.site-navigation ul.sf-menu > li:hover > a {color:#000;}
.site-navigation ul.sf-menu li a.sf-with-ul:after {
	font-family: "Font Awesome 5 Pro";
	content: "\f107";
	padding-left: 10px;
	}

.site-navigation  ul.sf-menu li li a.sf-with-ul:after {
	font-family: "Font Awesome 5 Pro";
	content: "\f105";
	padding-left: 10px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	}

.site-navigation  ul.sf-menu li li:hover a.sf-with-ul:after {
	padding-left: 20px;
	}

.site-navigation  ul.sf-menu li li:hover {
	background:var(--accent-color-hover);
	}

.mobile-nav.btn-hamburger {display:block!important;}
.mobile-nav.btn-site-search {display:block!important;}
.mobile-nav.mini-basket {display:block!important;}


@media screen and (min-width: 768px) {
	}
	
@media screen and (min-width: 991px) {
	.site-navigation ul.sf-menu > li > a {font-size:1.1em;}

	}

@media screen and (min-width: 1200px) {
	.site-navigation .sf-menu > li {display:inline-block;padding: .75em 1em;}
	.site-navigation .sf-menu > li > a {padding: 0;}
	.site-navigation .sf-menu > li li a {padding: .75em 1em;}
	}


/*
=======================================================================
	Mobile navigation / Mmenu / Fast food (V2)
=======================================================================
*/

.mainheader .header-elements .sf-menu li.mobile-nav a {font-size: 1em;}


.mobile-nav.btn-hamburger a {padding-right:0;}
.mobile-nav.btn-hamburger a:after {
	font-family: "Font Awesome 5 Pro";
	content: "\f0c9";
	display:inline-block;
	margin-left:7px;
	}

.mm-opened .mobile-nav.btn-hamburger a:after {
	content: "\f00d";
	}

@media screen and (min-width: 576px) {
	.mainheader .header-elements .sf-menu li.mobile-nav a {font-size: 1.1em;}
	}	

@media screen and (min-width: 768px) {
	.mainheader .header-elements .sf-menu li.mobile-nav a {font-size: 1.2em;}
	}
	
@media screen and (min-width: 991px) {
	}

@media screen and (min-width: 1200px) {
	.mobile-nav.btn-hamburger {display:none!important;}
	}


/*
=======================================================================
	Mmenu IE fix
=======================================================================
*/

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.mm-menu {
		z-index: 10
		}
	}


/*
=======================================================================
	Mobile navigation / Mmenu / Fast food
=======================================================================
*/

/*
.c-hamburger {
  display: none;
  overflow: hidden;
  margin: 0;
  padding: 0;
  width: 30px;
  height: 40px;
  font-size: 0;
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  border-radius: none;
  border: none;
  cursor: pointer;
  -webkit-transition: background 0.3s;
          transition: background 0.3s;
	background:none;
	z-index:999999;
	}

.c-hamburger:focus {
  outline: none;
	}

.c-hamburger span {
  display: block;
  position: absolute;
  top: 17px;
  left: 0;
  right: 0;
  height: 4px;
	}

.c-hamburger span::before,
.c-hamburger span::after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 4px;
  content: "";
	}

.c-hamburger span::before {
  top: -10px;
	}

.c-hamburger span::after {
  bottom: -10px;
	}
	
header .c-hamburger {
  position: absolute;
	top:50%;
	margin-top:-20px;
	right:15px;
	}

header .c-hamburger span {background: #000;}
header .c-hamburger span::before,
header .c-hamburger span::after {
  background-color: #000;
	}

header.white .c-hamburger span {background: #fff;}
header.white .c-hamburger span::before,
header.white .c-hamburger span::after {
  background-color: #fff;
	}

@media (max-width:767px) {
	.c-hamburger {display:block;}
	}
*/

/*
=======================================================================
	9. Section General
=======================================================================
*/

section.fullwidth > .container {padding:0;max-width:100%;}

/*section {overflow:hidden;}*/

/*[class*="darker-"] {position: relative;}*/
[class*="darker-"]:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	}

/* Remove margin-bottom on last element */
div[class*="listelement-"] > :last-child, 
div[class*="listelement-"] .text  > :last-child,
.column-content > :last-child {margin-bottom:0!important;}

.bordertop {border-top:1px solid #e0e0e0;}
.borderbottom {border-bottom:1px solid #e0e0e0;}

section.justify-content-center .container > .row {
    -ms-flex-pack: center!important;
    justify-content: center!important;
}

section.justify-content-right .container > .row {
    -ms-flex-pack: right!important;
    justify-content: right!important;
}


/*
=======================================================================
	9.1 Section Padding
=======================================================================
*/

.home-top-clean {margin-top: 0;}

/* Standard */
.topspace, .topspace2 {padding-top: var(--default-margin-2);}
.bottomspace, .bottomspace2 {padding-bottom: var(--default-margin-2);}

/* Standard + */
.topspace3 {padding-top:var(--default-margin-3);}
.bottomspace3 {padding-bottom:var(--default-margin-3);}

/* Standard ++ */
.topspace4 {padding-top:var(--default-margin-4);}
.bottomspace4 {padding-bottom:var(--default-margin-4);}

section:not(.background-color):not(.background-image):not(.borderbottom).bottomspace + 
section:not(.background-color):not(.background-image):not(.bordertop).topspace {padding-top:0;}

/* For 'Text and Image' */
section:not(.background-color):not(.background-image):not(.borderbottom).bottomspace + 
section:not(.background-color):not(.background-image):not(.bordertop).elementtopspace2 {margin-top:0;}


/*
=======================================================================
	9.2 Section Background
=======================================================================
*/

.bg-cover {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center center;
    }

.bg-fixed {
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-color: #464646;
    height:100%;
    }


/*
=======================================================================
	10. Article General
=======================================================================
*/

article {}

article blockquote {margin-top:0;margin-bottom:0;}

article .text a {text-decoration:underline;}

article .text p {padding:0;}

article .text > * {margin-bottom:1.5rem;}
article .text > :last-child {margin-bottom:0;}

article .byline {margin-top:2rem;margin-bottom:2rem;font-size:0.8em;color: rgba(0,0,0,.5);}

article .byline-author {font-size:0.8em;}
article .byline-author:before {
	font-family: "Font Awesome 5 Pro";
	content: "\f007";
	margin-right:10px;
	display:inline-block;
	}

article .byline-date {margin-top:.2rem;color: rgba(0,0,0,.5);font-size:0.8em;}
article .byline-date:before {
	font-family: "Font Awesome 5 Pro";
	content: "\f017";
	margin-right:10px;
	display:inline-block;
	}


article .teaser {font-size: 1.3em;}

.text h1,.text h2,.text h3,.text h4,.text h5,.text h6 {margin-bottom:1.5rem;}
.text *:not(figure) + h1,
.text *:not(figure) + h2,
.text *:not(figure) + h3,
.text *:not(figure) + h4,
.text *:not(figure) + h5,
.text *:not(figure) + h6,
.text *:not(figure) > h1,
.text *:not(figure) > h2,
.text *:not(figure) > h3,
.text *:not(figure) > h4,
.text *:not(figure) > h5,
.text *:not(figure) > h6{margin-top:2.5rem;}

.text * + h1,.text * + h2,.text * + h3,.text * + h4,.text * + h5,.text * + h6,
.text * > h1,.text * > h2,.text * > h3,.text * > h4,.text * > h5,.text * > h6 {margin-bottom:0.75rem;}

article .text ol,
article .text ul {padding-bottom: 0.5rem;}

article .text ol li,
article .text ul li {margin-bottom: 0.35rem;}

.bordertop {border-top:1px solid #e0e0e0;}
.borderbottom {border-bottom:1px solid #e0e0e0;}


@media screen and (min-width: 768px) {
	article p.teaser {font-size:1.2rem;}
	}
	
@media screen and (min-width: 991px) {
	article p.teaser {font-size:1.25rem;}
	}

@media screen and (min-width: 1200px) {
	article p.teaser {font-size:1.4rem;}
	}

/*
=======================================================================
	11. General Button
=======================================================================
*/

.bttn {
    color: #000;
    border: 2px solid #000;
    padding: 11px 30px;
    display: inline-block;
    text-decoration: none !important;
    background: none;
    text-transform: uppercase;
    font-size:17px;
		white-space: normal;
    }

.bttn:hover {
    text-decoration: none;
    background: #000;
    color: #fff;
    }

.bttn-solid {
    background: #563d7c;
    color:#fff;
    border-color:transparent;
}

.white .bttn {
    color: #fff;
    border: 2px solid #fff;
    }

.white .bttn:hover {
    color: #000;
    background: #fff;
    }

@media (min-width:1200px) {
    .bttn {
        padding: 11px 30px;
        letter-spacing: 2px;
    }
}

.er-edit-link {
    float: right;
}

/*
=======================================================================
	12. Column 
=======================================================================
*/

.listelement-col .column {height: 100%;}
.listelement-col .column-content a {display: inline-block;}
.listelement-col .column-content h3 a {color:#333;}
.listelement-col .column-content .teaser {}
.listelement-col .column-content .bttn {width: 100%;}

.listelement-col figure {margin:0;}
.listelement-col .column,
.listelement-col .column-content-wrapper,
.listelement-col figure,
.listelement-col .column-content {
    background-image: no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

    .xltitle .col h2 {font-size: 2rem;}

    @media (min-width:350px) {
        .listelement-col .column-content .bttn {
            width: auto;
            display: inline-block;
        }
    }


/*
=======================================================================
	2 Column General
=======================================================================
*/

@media (max-width:767px) {
    .listelement-col:last-child {margin-bottom:0!important;}
    }


/*
=======================================================================
	3 Column General
=======================================================================
*/

@media (max-width:767px) {
    
    }

/*
=======================================================================
	4 Column General
=======================================================================
*/

@media (max-width:767px) {
   
    }








/*
=======================================================================
	12.1 Column Media
=======================================================================
*/

.row-col figure {
    width: 100%;
    padding-bottom: 1.5rem;
    }

.row-col figure img {width: 100%;}
.row-col.circular figure {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    }

.row-col.circular figure img {
    max-width: 300px;
    }

@media (min-width:991px) {
    .row-col.circular figure { /*padding-top:2rem;*/
        width: 100%;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

.row-col.circular figure img {
        max-width: 220px;
        }
    }

@media (min-width:1200px) {
    .row-col.circular figure {}
    .row-col.circular figure img {
        max-width: 250px;
        }
    }


/*
=======================================================================
	12.2 Column Background
=======================================================================
*/

    /* Column content padding */
    .colbg .column-content,
    .colbgimg .column-content {
        padding: 1.5rem;
    }

    /* Column figure padding */
    .colbg figure,
    .colbgimg figure {
        padding-bottom: 0;
    }

    .circular .colbg figure {
        padding-top: 1.5rem;
    }

    .circular .colbgimg figure {
        padding-top: 1.5rem;
    }

    /* --- */

    .listelement-col.colbg .column-content h3,
    .listelement-col.colbgimg .column-content h3 {
        margin-top: 0;
    }

    .colbgimg .listelement-col > div {
        position: relative;
    }

        .colbgimg .listelement-col > div .column-content {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
        }

        .colbgimg .listelement-col > div .column-background-image {
            display: block;
            visibility: hidden;
            width: 100%;
        }

    .listelement-col > div .column-background-image {
        display: none;
    }

    /* Vertical position content with backgorund image */
    .colbgimg .listelement-col > div .column-content {
        position: absolute;
        left: 0;
        width: 100%;
        height: auto;
    }

    .colbgimg.col-va-top .listelement-col > div .column-content {
        top: 0;
    }

    .colbgimg.col-va-middle .listelement-col > div .column-content {
        top: 50%;
        transform: translateY(-50%);
    }

    .colbgimg.col-va-bottom .listelement-col > div .column-content {
        top: auto;
        bottom: 0;
    }

    /* END Vertical position */


    .listelement-col > div {
        position: relative;
    }

    .listelement-col .coverlink {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 3;
    }

        .listelement-col .coverlink:hover {
            background: rgba(255,255,255, 0.2);
        }

    @media (min-width:768px) {
    }

    @media (min-width:991px) {
        .circular .colbg figure,
        .circular .colbgimg figure {
            padding-top: 1.5rem;
        }

        .colbg .column-content,
        .colbgimg .column-content {
            padding: 2rem;
        }
    }

    @media (min-width:1200px) {
    }


/*
=======================================================================
	Column Background Large Image
=======================================================================
*/

    /* Column Background Image */
    .listelement-col.colbgimg .column {
        background-position: center center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        overflow: hidden;
    }


/*
=======================================================================
	12.3 Column Vertical Align
=======================================================================
*/

    section:not(.col-small-image).col-va-top .row.list {
        align-self:flex-start;
    }

    section:not(.col-small-image).col-va-middle .row.list > div[class*="col-"] {
        align-self:center;
    }

    section:not(.col-small-image).col-va-bottom .row.list > div[class*="col-"] {
        align-self:flex-end;
    }


/*
=======================================================================
	Column Dynamic
=======================================================================
*/

.row-col-dynamic > :last-child {
    margin-bottom: 0 !important;
    }


/*
=======================================================================
    13. List
=======================================================================
*/

    .row-list.center .row-list-wrapper {
        justify-content: center;
    }

    div[class*="listelement-"] h1,
    .listelement h1 {
        margin: 0 0 5px 0;
        padding: 0;
    }

    .listelement a {
        color: #000;
        }

    .listelement a:hover {
        text-decoration: none;
        }

    .listelement a:hover h1 {
        text-decoration: underline;
        }

    .listelement-large-image img {
        margin: 0;
        width: 100% !important;
        height: 100% !important;
    }

    *[class*="listelement-"] figure {
        margin-bottom: 1rem;
    }

    .list .text a:first-of-type {
        text-decoration: none;
    }

    .list .text a:hover {
        text-decoration: underline;
    }

    .list .text .teaser {
        font-size: .9em;
    }

    .listdate {
        display: inline-block;
        opacity: 0.6;
        font-size: 0.7em;
    }

    .listdate span {
        text-transform:capitalize;
    }

    .pagination {
        margin-top: 1rem;
        margin-bottom: 0;
    }

        .pagination > .active > a,
        .pagination > .active > a:focus,
        .pagination > .active > a:hover,
        .pagination > .active > span,
        .pagination > .active > span:focus,
        .pagination > .active > span:hover {
            z-index: 3;
            color: #fff;
            cursor: default;
            background-color: #404040;
            border-color: #404040;
        }

        .pagination > li > a,
        .pagination > li > span {
            color: #404040;
            background-color: transparent;
        }


    .list-button {
        margin-top: 1rem;
    }

    .bttn.bttn-list {
        margin-top: 0;
    }


    @media (min-width:768px) {
        .col-sm-12.listelement-small-image figure {
            margin-bottom: 0;
        }
    }

    @media (min-width:991px) {
    }

    @media (min-width:1200px) {
        .col-lg-12.listelement-small-image figure {
            margin-bottom: 0;
        }

        .pagination, .list-button {
            margin-top: 2rem;
        }
    }


    /*
=======================================================================
	13.1 Listelement Title Size
=======================================================================
*/

    /* No image */
    .list > .col-2.listelement-no-image-plain h1 {font-size: 0.6rem !important;} /* not likely to happen at all */
    .list > .col-3.listelement-no-image-plain h1 {font-size: 0.8rem !important;} /* not likely to happen at all */
    .list > .col-4.listelement-no-image-plain h1 {font-size: 1rem !important;} /* not likely to happen */
    .list > .col-6.listelement-no-image-plain h1 {font-size: 1.2rem !important;}
    .list > .col-12.listelement-no-image-plain h1 {font-size: 1.4rem !important;}/* one column full width */

    @media (min-width:576px) {
        .list > .col-sm-2.listelement-no-image-plain h1 {font-size: 0.6rem !important;} /* not likely to happen at all */
        .list > .col-sm-3.listelement-no-image-plain h1 {font-size: 1rem !important;}
        .list > .col-sm-4.listelement-no-image-plain h1 {font-size: 1.2rem !important;}
        .list > .col-sm-6.listelement-no-image-plain h1 {font-size: 1.4rem !important;}
        .list > .col-sm-12.listelement-no-image-plain h1 {font-size: 1.6rem !important;} /* one column full width */
    }

    @media (min-width:768px) {
        .list > .col-md-2.listelement-no-image-plain h1 {font-size: 0.6rem !important;} /* not likely to happen at all */
        .list > .col-md-3.listelement-no-image-plain h1 {font-size: 1rem !important;}
        .list > .col-md-4.listelement-no-image-plain h1 {font-size: 1.2rem !important;}
        .list > .col-md-6.listelement-no-image-plain h1 {font-size: 1.4rem !important;}
        .list > .col-md-12.listelement-no-image-plain h1 {font-size: 1.6rem !important;} /* one column full width */
    }

    @media (min-width:991px) {
        .list > .col-lg-2.listelement-no-image-plain h1 {font-size: 1rem !important;} /* not likely to happen */
        .list > .col-lg-3.listelement-no-image-plain h1 {font-size: 1.1rem !important;}
        .list > .col-lg-4.listelement-no-image-plain h1 {font-size: 1.2rem !important;}
        .list > .col-lg-6.listelement-no-image-plain h1 {font-size: 1.4rem !important;}
        .list > .col-lg-12.listelement-no-image-plain h1 {font-size: 1.6rem !important;} /* one column full width */
    }

    @media (min-width:1200px) {
        .list > .col-xl-2.listelement-no-image-plain h1 {font-size: 1rem !important;}
        .list > .col-xl-3.listelement-no-image-plain h1 {font-size: 1.4rem !important;}
        .list > .col-xl-4.listelement-no-image-plain h1 {font-size: 1.6rem !important;}
        .list > .col-xl-6.listelement-no-image-plain h1 {font-size: 1.6rem !important;}
        .list > .col-xl-12.listelement-no-image-plain h1 {font-size: 2rem !important;} /* one column full width */
    }

    /* Large image */
    .list > .col-2.listelement-large-image h1 {font-size: 0.6rem;}/* not likely to happen at all*/
    .list > .col-3.listelement-large-image h1 {font-size: 0.8rem;}/* not likely to happen */
    .list > .col-4.listelement-large-image h1 {font-size: 1rem;}/* not likely to happen */
    .list > .col-6.listelement-large-image h1 {font-size: 1.2rem;}
    .list > .col-12.listelement-large-image h1 {font-size: 1.4rem;}/* one column full width */

    @media (min-width:576px) {
        .list > .col-sm-2.listelement-large-image h1 {font-size: 0.6rem;}/* not likely to happen at all */
        .list > .col-sm-3.listelement-large-image h1 {font-size: 1rem;}
        .list > .col-sm-4.listelement-large-image h1 {font-size: 1.2rem;}
        .list > .col-sm-6.listelement-large-image h1 {font-size: 1.4rem;}
        .list > .col-sm-12.listelement-large-image h1 {font-size: 1.6rem;}/* one column full width */
    }

    @media (min-width:768px) {
        .list > .col-md-2.listelement-large-image h1 {font-size: 0.6rem;}/* not likely to happen at all */
        .list > .col-md-3.listelement-large-image h1 {font-size: 1rem;}
        .list > .col-md-4.listelement-large-image h1 {font-size: 1.2rem;}
        .list > .col-md-6.listelement-large-image h1 {font-size: 1.4rem;}
        .list > .col-md-12.listelement-large-image h1 {font-size: 1.6rem;}/* one column full width */
    }

    @media (min-width:991px) {
        .list > .col-lg-2.listelement-large-image h1 {font-size: 1rem;}/* not likely to happen */
        .list > .col-lg-3.listelement-large-image h1 {font-size: 1.1rem;}
        .list > .col-lg-4.listelement-large-image h1 {font-size: 1.2rem;}
        .list > .col-lg-6.listelement-large-image h1 {font-size: 1.4rem;}
        .list > .col-lg-12.listelement-large-image h1 {font-size: 1.6rem;}/* one column full width */
    }

    @media (min-width:1200px) {
        .list > .col-xl-2.listelement-large-image h1 {font-size: 1rem;}
        .list > .col-xl-3.listelement-large-image h1 {font-size: 1.4rem;}
        .list > .col-xl-4.listelement-large-image h1 {font-size: 1.6rem;}
        .list > .col-xl-6.listelement-large-image h1 {font-size: 2rem;}
        .list > .col-xl-12.listelement-large-image h1 {font-size: 2rem;}/* one column full width */
    }

    /* Small image */
    .list > .col-2.listelement-small-image h1 {font-size: 0.6rem;} /* not likely to happen at all */ /* Same as karge image */
    .list > .col-3.listelement-small-image h1 {font-size: 0.8rem;} /* not likely to happen at all */ /* Same as karge image */
    .list > .col-4.listelement-small-image h1 {font-size: 1rem;} /* not likely to happen */ /* Same as karge image */
    .list > .col-6.listelement-small-image h1 {font-size: 1.2rem;} /* Same as karge image */
    .list > .col-12.listelement-small-image h1 {font-size: 1.4rem;}/* one column full width */

    @media (min-width:576px) {
        .list > .col-sm-2.listelement-small-image h1 {font-size: 0.6rem;} /* not likely to happen at all */
        .list > .col-sm-3.listelement-small-image h1 {font-size: 1rem;}
        .list > .col-sm-4.listelement-small-image h1 {font-size: 1.2rem;}
        .list > .col-sm-6.listelement-small-image h1 {font-size: 1.4rem;}
        .list > .col-sm-12.listelement-small-image h1 {font-size: 1.6rem;} /* one column full width */
        }

    @media (min-width:768px) {
        .list > .col-md-2.listelement-small-image h1 {font-size: 0.6rem;} /* not likely to happen at all */
        .list > .col-md-3.listelement-small-image h1 {font-size: 1rem;}
        .list > .col-md-4.listelement-small-image h1 {font-size: 1.2rem;}
        .list > .col-md-6.listelement-small-image h1 {font-size: 1.4rem;}
        .list > .col-md-12.listelement-small-image h1 {font-size: 1.6rem;} /* one column full width */
        }

    @media (min-width:991px) {
        .list > .col-lg-2.listelement-small-image h1 {font-size: 0.8rem;}/* not likely to happen at all */
        .list > .col-lg-3.listelement-small-image h1 {font-size: 1rem;}/* not likely to happen at all */
        .list > .col-lg-4.listelement-small-image h1 {font-size: 1.1rem;}/* not likely to happen */
        .list > .col-lg-6.listelement-small-image h1 {font-size: 1.2rem;}
        .list > .col-lg-12.listelement-small-image h1 {font-size: 2rem;}/* one column full width */
        }

    @media (min-width:1200px) {
        .list > .col-xl-2.listelement-small-image h1 {font-size: 1rem;}/* not likely to happen */
        .list > .col-xl-3.listelement-small-image h1 {font-size: 1.1rem;}/* not likely to happen */
        .list > .col-xl-4.listelement-small-image h1 {font-size: 1.2rem;}/* not likely to happen */
        .list > .col-xl-6.listelement-small-image h1 {font-size: 1.4rem;}
        .list > .col-xl-12.listelement-small-image h1 {font-size: 2rem;}
    }


/*
=======================================================================
	13.2 Employee list
=======================================================================
*/

    .listelement-employee {
        font-size: 0.85em;
        letter-spacing: 1px;
        }

    .listelement-employee article figure { /*max-width:50%;*/
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1rem;
        }

    .list .listelement-employee article h3 {
        margin-bottom: 0 !important;
        font-weight: bold !important;
        }

    .listelement-employee article .text > * {margin: 0;}
    .listelement-employee article .text a {display: inline-block;}
    .listelement-employee article .employee-position {margin: .5rem 0;}
    .listelement-employee article .employee-email.email-overflow a span {display: none;}
    .listelement-employee article .employee-email.email-overflow a:before {content: "Send e-post";}

    .listelement-employee h1 {font-size:1.3em;}


/*
=======================================================================
	13.3 List Pagination
=======================================================================
*/

.page-link--first::before,
.page-link--previous::before,
.page-link--next::after,
.page-link--last::after {font-family: "Font Awesome 5 Pro";}

.page-link--first::before,
.page-link--previous::before {margin-right:10px;}

.page-link--next::after,
.page-link--last::after {margin-left:10px;}

.page-link--first::before {content: "\f100";}
.page-link--previous::before {content: "\f104";}
.page-link--next::after {content: "\f105";}
.page-link--last::after {content: "\f101";}

.page-link {
    color:#000;
    border-color:transparent;
    -webkit-border-radius: 0!important;
    -moz-border-radius: 0!important;
    -o-border-radius: 0!important;
    border-radius: 0!important;
}

.page-link:hover {
    z-index: 2;
    color: #fff;
    background-color: #048ba8;
}

.page-item.active .page-link {
    background-color:#048ba8;
    border-color: transparent;
}

.pagination {
    margin-top: 1rem;
    margin-bottom: 0;
}

@media (min-width:1200px) {
    .pagination {
        margin-top: 2rem;
    }
}


/*
=======================================================================
	14. Target Last Same Width Row in Grid (Beta)
=======================================================================
*/

    [class*="listelement-"] {margin-bottom: var(--default-listelement-margin);}

    @media (max-width:575px) {
        .list > .col-12:nth-child(1n+1):nth-last-child(-n+1),
        .list > .col-12:nth-child(1n+1):nth-last-child(-n+1) ~ .col-12,
        .list > .col-6:nth-child(2n+1):nth-last-child(-n+2),
        .list > .col-6:nth-child(2n+1):nth-last-child(-n+2) ~ .col-6,
        .list > .col-4:nth-child(3n+1):nth-last-child(-n+3),
        .list > .col-4:nth-child(3n+1):nth-last-child(-n+3) ~ .col-4,
        .list > .col-3:nth-child(4n+1):nth-last-child(-n+4),
        .list > .col-3:nth-child(4n+1):nth-last-child(-n+4) ~ .col-3,
        .list > .col-2:nth-child(6n+1):nth-last-child(-n+6),
        .list > .col-2:nth-child(6n+1):nth-last-child(-n+6) ~ .col-2 {
            margin-bottom: 0;
        }
    }

    @media (min-width:576px) and (max-width:767px) {
        .list > .col-sm-12:nth-child(1n+1):nth-last-child(-n+1),
        .list > .col-sm-12:nth-child(1n+1):nth-last-child(-n+1) ~ .col-sm-12,
        .list > .col-sm-6:nth-child(2n+1):nth-last-child(-n+2),
        .list > .col-sm-6:nth-child(2n+1):nth-last-child(-n+2) ~ .col-sm-6,
        .list > .col-sm-4:nth-child(3n+1):nth-last-child(-n+3),
        .list > .col-sm-4:nth-child(3n+1):nth-last-child(-n+3) ~ .col-sm-4,
        .list > .col-sm-3:nth-child(4n+1):nth-last-child(-n+4),
        .list > .col-sm-3:nth-child(4n+1):nth-last-child(-n+4) ~ .col-sm-3,
        .list > .col-sm-2:nth-child(6n+1):nth-last-child(-n+6),
        .list > .col-sm-2:nth-child(6n+1):nth-last-child(-n+6) ~ .col-sm-2 {
            margin-bottom: 0;
        }
    }

    @media (min-width:768px) and (max-width:991px) {
        [class*="listelement-"] {margin-bottom: var(--default-listelement-margin);}

        .list > .col-md-12:nth-child(1n+1):nth-last-child(-n+1),
        .list > .col-md-12:nth-child(1n+1):nth-last-child(-n+1) ~ .col-md-12,
        .list > .col-md-6:nth-child(2n+1):nth-last-child(-n+2),
        .list > .col-md-6:nth-child(2n+1):nth-last-child(-n+2) ~ .col-md-6,
        .list > .col-md-4:nth-child(3n+1):nth-last-child(-n+3),
        .list > .col-md-4:nth-child(3n+1):nth-last-child(-n+3) ~ .col-md-4,
        .list > .col-md-3:nth-child(4n+1):nth-last-child(-n+4),
        .list > .col-md-3:nth-child(4n+1):nth-last-child(-n+4) ~ .col-md-3,
        .list > .col-md-2:nth-child(6n+1):nth-last-child(-n+6),
        .list > .col-md-2:nth-child(6n+1):nth-last-child(-n+6) ~ .col-md-2 {
            margin-bottom: 0;
        }
    }

    @media (min-width:992px) and (max-width:1199px) {
        [class*="listelement-"] {margin-bottom: var(--default-listelement-margin);}

        .list > .col-lg-12:nth-child(1n+1):nth-last-child(-n+1),
        .list > .col-lg-12:nth-child(1n+1):nth-last-child(-n+1) ~ .col-lg-12,
        .list > .col-lg-6:nth-child(2n+1):nth-last-child(-n+2),
        .list > .col-lg-6:nth-child(2n+1):nth-last-child(-n+2) ~ .col-lg-6,
        .list > .col-lg-4:nth-child(3n+1):nth-last-child(-n+3),
        .list > .col-lg-4:nth-child(3n+1):nth-last-child(-n+3) ~ .col-lg-4,
        .list > .col-lg-3:nth-child(4n+1):nth-last-child(-n+4),
        .list > .col-lg-3:nth-child(4n+1):nth-last-child(-n+4) ~ .col-lg-3,
        .list > .col-lg-2:nth-child(6n+1):nth-last-child(-n+6),
        .list > .col-lg-2:nth-child(6n+1):nth-last-child(-n+6) ~ .col-lg-2 {
            margin-bottom: 0;
        }
    }

    @media (min-width:1200px) {
        [class*="listelement-"] {margin-bottom: var(--default-listelement-margin);}

        .list > .col-xl-12:nth-child(1n+1):nth-last-child(-n+1),
        .list > .col-xl-12:nth-child(1n+1):nth-last-child(-n+1) ~ .col-xl-12,
        .list > .col-xl-6:nth-child(2n+1):nth-last-child(-n+2),
        .list > .col-xl-6:nth-child(2n+1):nth-last-child(-n+2) ~ .col-xl-6,
        .list > .col-xl-4:nth-child(3n+1):nth-last-child(-n+3),
        .list > .col-xl-4:nth-child(3n+1):nth-last-child(-n+3) ~ .col-xl-4,
        .list > .col-xl-3:nth-child(4n+1):nth-last-child(-n+4),
        .list > .col-xl-3:nth-child(4n+1):nth-last-child(-n+4) ~ .col-xl-3,
        .list > .col-xl-2:nth-child(6n+1):nth-last-child(-n+6),
        .list > .col-xl-2:nth-child(6n+1):nth-last-child(-n+6) ~ .col-xl-2 {
            margin-bottom: 0;
        }
    }

    .row.list > [class*="col-"]:last-child {
        margin-bottom: 0;
    }


/*
=======================================================================
	15. Search result
=======================================================================
*/

    #searchlist h2 {
        margin-bottom: 4rem;
    }

    .section-searchresult .searchresult-filter input[type="checkbox"] {
        margin-right: 10px;
    }

    .section-searchresult .searchresult-filter input[type="checkbox"]:hover,
    .section-searchresult .searchresult-filter label:hover {
        cursor: pointer;
    }

    .listelement-search-result:last-child {
        border-bottom: 0;
    }

    .listelement-search-result h3 {
        margin: 0;
        padding: 0;
    }

    .listelement-search-result p {
        margin: 0;
        padding: 0;
    }

    .searchresult-category {
        margin: 0;
        padding: 0;
        display: none;
    }

    .searchresult-category span {
        font-weight: 500;
    }


/*
=======================================================================
    15.1 Search result filter
=======================================================================
*/

.section-search input[type="checkbox"], .section-search input[type="radio"] {
    margin-right: 10px;
    }


    /*
=======================================================================
	16. White (if white on dark background)
=======================================================================
*/

    .white p,
    .white div,
    .white h1,
    .white h2,
    .white h3,
    .white h4,
    .white h5,
    .white h6 {
        color: white;
    }

    .white blockquote {
        border-left: 5px solid #fff;
    }

    .white a {
        color: #fff;
        text-decoration: none;
    }

        .white a:focus,
        .white a:hover {
            color: #fff;
            text-decoration: underline;
        }

    .white article a {
        color: #fff;
        text-decoration: underline;
    }

    .white a ~ a {
        text-decoration: none;
    }

    .white div[class^="listelement-"] ~ a:hover,
    .white a:hover {
        text-decoration: underline;
    }

    .white a ~ a:hover {
        text-decoration: underline;
    }

    .white select {
        color: #555; /* Tekst inni selectboksene skal fortsatt være mørk */
    }

    .white span {
    }


/*
=======================================================================
	17. Form
=======================================================================
*/

    .form-group {
        position: relative;
        margin-bottom: 30px;
    }

    .form-group:last-child {
        position: relative;
        margin-bottom: 0;
    }

    .input-group input,
    .input-group button {
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -o-border-radius: 0;
        border-radius: 0;
    }

.fileinput-button:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f07c";
    display: inline-block;
}

.ui-state-error {
    border: 1px solid #c33 !important;
}

    .ui-state-highlight {
        background-color: #ffa;
    }

    .validateTips {
        padding: 10px 0;
        line-height: 1.8em;
    }

        .validateTips em {
            font-weight: 700;
        }

    .required {
        color: #F00;
        font-size: 1.3em;
        font-weight: 300;
    }

    .has-error + .help-block.validation-block {
        color: #fff;
        padding: .6rem 1rem;
        background: #a94442;
        display: inline-block;
        animation-duration: .8s;
        animation-name: fadeIn;
    }

        .has-error + .help-block.validation-block:before {
            font-family: "Font Awesome 5 Pro";
            content: "\f05a";
            margin-right: 10px;
            display: inline-block;
        }

    @keyframes fadeIn {
        0% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }

    .form-field {
        position: relative;
    }

        .form-field.has-success input {
            border: 1px solid #5bb12f;
            border: 1px solid #5bb12f;
        }

        .form-field div[class*="col-"].has-error + div[class*="col-"] input {
            border: 1px solid #a94442;
        }

        .form-field.has-success:after,
        .form-field.has-error:after {
            position: absolute;
            top: 50%;
            -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
            transform: translateY(-50%);
            right: 15px;
            animation-duration: .8s;
            animation-name: bounceIn;
        }

    @keyframes bounceIn {
        0% {
            opacity: 0;
        }

        100% {
            opacity: 1;
        }
    }


    /* Success icon */
    .form-field.has-success:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f164";
        color: #5bb12f;
    }

    /* Error icon */
    .form-field.has-error:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f165";
        color: #c33;
    }



    @media (max-width: 767px) {
        .form-group {
            margin-bottom: 20px;
        }
    }


/*
=======================================================================
	17.1 Custom Checkbox and Radio
=======================================================================
*/

.radio + .radio,
.checkbox + .checkbox {margin-top:10px;}


.radio:last-of-type, .checkbox:last-of-type {
    margin-bottom: 0;
}

.radio label,
.checkbox label {
    position: relative;
    padding-left: 30px;
    margin-bottom:0;
}

.radio label:hover,
.checkbox label:hover {
    cursor:pointer;
}

/* Checkbox */

.checkbox input[type=checkbox] {
    display: none;
}
/* to hide the checkbox itself */
.checkbox input[type=checkbox] + label:before {
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    content: "\f0c8";
    position: absolute;
    left: 0;
}

.checkbox input[type=checkbox]:checked + label:before {
    content: "\f14a";
} /* checked icon */


/* Radio */
.radio input[type=radio] {
    display: none;
}
/* to hide the checkbox itself */
.radio input[type=radio] + label:before {
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    content: "\f111";
    position: absolute;
    left: 0;
}

.radio input[type=radio]:checked + label:before {
    content: "\f058";
} /* checked icon */

.radio input[type=radio]:checked + label:before {
    letter-spacing: 5px;
} /* allow space for check mark */


/*
=======================================================================
	18. Misc
=======================================================================
*/

.one-line {
white-space: nowrap;
width: 100%;
overflow: hidden;
-o-text-overflow: ellipsis;
-ms-text-overflow: ellipsis;
text-overflow: ellipsis;
height: 1.3em;
}

.center {text-align: center !important;}
.center img {margin: auto;}.right {text-align: right !important;}
.left {text-align: left !important;}
.push-bottom {margin-bottom: 35px;}
.push-top {margin-top: 35px;}


/*
=======================================================================
	20. Site Sub footer
=======================================================================
*/

.sub-footer {
    padding: 30px 0;
    border-top: 1px solid rgba(255,255,255,0.15);
    font-weight: lighter;
    font-size:0.8em;
    color:#b3b3b3;
    }

.sub-footer,
.sub-footer a {color:#fff;}
.sub-footer a {opacity:.7;}


@media (min-width:768px) {
    .sub-footer .copyright {float: left;}
    .sub-footer .credits {float: right;}
    }


/*
=======================================================================
	21. Calendar
=======================================================================
*/


/*
=======================================================================
	21.1 Calendar Template 1
=======================================================================
*/

    .calendar-template1 .calendar-date {
        margin-bottom: 0.7em;
    }

        .calendar-template1 .calendar-date div[class*="calendar-date-"],
        .calendar-template1 .calendar-date div[class*="calendar-start-"],
        .calendar-template1 .calendar-date div[class*="calendar-end-"] {
            display: inline-block;
        }

        .calendar-template1 .calendar-date div[class*="calendar-date-"] {
            margin-right: 15px;
        }


    /* Date */
    .calendar-template1 .calendar-start-day:before {
        font-family: "Font Awesome 5 Pro";
        content: "\f017";
        margin-right: 10px;
        display: inline-block;
    }

    .calendar-template1 .calendar-start-day,
    .calendar-template1 .calendar-end-day {
        font-size: .9em;
        font-weight: normal;
        letter-spacing: 1px;
        text-transform: uppercase;
    }

    .calendar-template1 .calendar-start-date,
    .calendar-template1 .calendar-end-date {
        font-size: .9em;
        font-weight: bold;
        text-transform: uppercase;
    }

    .calendar-template1 .calendar-start-time,
    .calendar-template1 .calendar-end-time {
        font-size: .9em;
        font-weight: normal;
        text-transform: uppercase;
    }

    /* Text */
    .calendar-template1 .calendar-text h3 {
        font-size: 1.1em;
        margin: 0 !important;
    }

    .calendar-template1 .calendar-text-items > * {
        margin-bottom: 2rem;
    }

    .calendar-template1 .calendar-text-items > :last-child {
        margin-bottom: 0;
    }

    .calendar-template1 .listelement-calendarlist .calendar-text > :last-child {
        margin-bottom: 0;
    }

    @media (min-width: 768px) {
    }

    @media (min-width: 991px) {
    }

    @media (min-width: 1200px) {
        .calendar-template1 .listelement-calendarlist {
            margin-bottom: 40px !important;
        }

        .calendar-template1 .calendar-date-wrapper {
            padding: 0 .5rem;
        }

        .calendar-template1 .calendar-date div[class*="calendar-date-"] {
            margin: auto;
        }

        .calendar-template1 .calendar-start-day:before {
            content: "";
        }

        .calendar-template1 .calendar-date {
            display: flex;
            text-align: center;
        }

            .calendar-template1 .calendar-date > * {
                align-self: center;
                margin-right: 15px;
            }

            .calendar-template1 .calendar-date > :last-child {
                margin-right: 0;
            }

        .calendar-template1 .calendar-text {
            border-left: 2px solid #e0e0e0;
            padding-left: 2rem;
        }
    }

/*
=======================================================================
	21.2 Calendar Template 2
=======================================================================
*/

    .calendar-template2 .calendar-date {
        margin-bottom: 0.7em;
    }

        .calendar-template2 .calendar-date div[class*="calendar-date-"],
        .calendar-template2 .calendar-date div[class*="calendar-start-"],
        .calendar-template2 .calendar-date div[class*="calendar-end-"] {
            display: inline-block;
        }

        .calendar-template2 .calendar-date div[class*="calendar-date-"] {
            margin-right: 15px;
        }

    /* Date */
    .calendar-template2 .calendar-start-day:before {
        font-family: "Font Awesome 5 Pro";
        content: "\f017";
        margin-right: 10px;
        display: inline-block;
    }

    .calendar-template2 .calendar-start-day,
    .calendar-template2 .calendar-end-day {
        font-size: .9em;
        font-weight: normal;
        letter-spacing: 1px;
        text-transform: uppercase;
    }

    .calendar-template2 .calendar-start-date,
    .calendar-template2 .calendar-end-date {
        font-size: .9em;
        font-weight: bold;
        text-transform: uppercase;
    }

    .calendar-template2 .calendar-start-time,
    .calendar-template2 .calendar-end-time {
        font-size: .9em;
        font-weight: normal;
        text-transform: uppercase;
    }

    /* Text */
    .calendar-template2 .calendar-text h3 {
        font-size: 1.1em;
        margin: 0 !important;
    }

    .calendar-template2 .calendar-text-items > * {
        margin-bottom: 2rem;
    }

    .calendar-template2 .calendar-text-items > :last-child {
        margin-bottom: 0;
    }

    .calendar-template2 .listelement-calendarlist .calendar-text > :last-child {
        margin-bottom: 0;
    }

    @media (min-width: 768px) {
    }

    @media (min-width: 991px) {
    }

    @media (min-width: 1200px) {
        .calendar-template2 .listelement-calendarlist {
            margin-bottom: 40px !important;
        }

        .calendar-template2 .calendar-date-wrapper {
            padding: 0 .5rem;
        }

        .calendar-template2 .calendar-date div[class*="calendar-date-"] {
            margin: auto;
        }

        .calendar-template2 .calendar-start-day:before {
            content: "";
        }

        .calendar-template2 .calendar-date {
            display: flex;
            text-align: center;
        }

            .calendar-template2 .calendar-date > * {
                align-self: center;
                margin-right: 15px;
            }

            .calendar-template2 .calendar-date > :last-child {
                margin-right: 0;
            }

        .calendar-template2 .calendar-text-items {
            border-left: 2px solid #e0e0e0;
            padding-left: 2rem;
        }
    }


    /*
=======================================================================
	21.3 Calendar Template 3
=======================================================================
*/

    .calendar-template3 .calendar-date {
        margin-bottom: 0.7em;
    }

        .calendar-template3 .calendar-date div[class*="calendar-date-"],
        .calendar-template3 .calendar-date div[class*="calendar-start-"],
        .calendar-template3 .calendar-date div[class*="calendar-end-"] {
            display: inline-block;
        }

        .calendar-template3 .calendar-date div[class*="calendar-date-"] {
            margin-right: 15px;
        }


    /* Date */
    .calendar-template3 .calendar-start-day:before {
        font-family: "Font Awesome 5 Pro";
        content: "\f017";
        margin-right: 10px;
        display: inline-block;
    }

    .calendar-template3 .calendar-start-day,
    .calendar-template3 .calendar-end-day {
        font-size: .9em;
        font-weight: normal;
        letter-spacing: 1px;
        text-transform: uppercase;
    }

    .calendar-template3 .calendar-start-date,
    .calendar-template3 .calendar-end-date {
        font-size: .9em;
        font-weight: bold;
        text-transform: uppercase;
    }

    .calendar-template3 .calendar-start-time,
    .calendar-template3 .calendar-end-time {
        font-size: .9em;
        font-weight: normal;
        text-transform: uppercase;
    }

    /* Text */
    .calendar-template3 .calendar-text h3 {
        font-size: 1.1em;
        margin: 0 !important;
    }

    .calendar-template3 .calendar-text-items > * {
        margin-bottom: 2rem;
    }

    .calendar-template3 .calendar-text-items > :last-child {
        margin-bottom: 0;
    }

    .calendar-template3 .listelement-calendarlist .calendar-text > :last-child {
        margin-bottom: 0;
    }

    @media (min-width: 768px) {
    }

    @media (min-width: 991px) {
    }

    @media (min-width: 1200px) {
        .calendar-template3 .listelement-calendarlist {
            margin-bottom: 40px !important;
        }

        .calendar-template3 .calendar-date-wrapper {
            padding: 0 .5rem;
        }

        .calendar-template3 .calendar-date div[class*="calendar-date-"] {
            margin: auto;
        }

        .calendar-template3 .calendar-start-day:before {
            content: "";
        }

        .calendar-template3 .calendar-date {
            display: flex;
            text-align: center;
        }

            .calendar-template3 .calendar-date > * {
                align-self: center;
                margin-right: 15px;
            }

            .calendar-template3 .calendar-date > :last-child {
                margin-right: 0;
            }

        .calendar-template3 .calendar-text-items {
            border-left: 2px solid #e0e0e0;
            padding-left: 2rem;
        }
    }


/*
=======================================================================
	40. Element Feedback
=======================================================================
*/

    .feedback-options {
        margin: 0;
        padding: 0;
        list-style: none;
    }

        .feedback-options li {
            margin: 0;
            padding: 0;
            display: block;
            float: left;
            width: 50%;
            text-align: center;
        }

            .feedback-options li:first-child {
                margin: 0;
            }

            .feedback-options li a {
                display: inline-block;
                padding: 1rem;
                color: #333;
                opacity: 0.8;
                -webkit-transition: all 0.3s ease;
                -moz-transition: all 0.3s ease;
                -o-transition: all 0.3s ease;
                -ms-transition: all 0.3s ease;
                transition: all 0.3s ease;
            }

                .feedback-options li a:hover {
                    text-decoration: none;
                    opacity: 1;
                    transform: scale(1.05);
                }

            .feedback-options li figure {
                margin: 0;
            }

                .feedback-options li figure img {
                    max-width: 50px;
                    margin: 0 auto 0.7rem auto;
                }

            .feedback-options li figcaption {
                text-align: center;
                font-size: .9rem;
            }

    .feedback-wrapper {
        display: table;
        width: 100%;
        height: 100%;
    }

        .feedback-wrapper h3 {
            text-align: center;
        }

    .feedback-wrapper-inner {
        display: table-cell;
        vertical-align: middle;
    }


    @media (min-width: 768px) {
        .feedback-options li {
            width: 25%;
        }

        .feedback-wrapper h3 {
            text-align: left;
        }
    }

    @media (min-width: 991px) {
    }

    @media (min-width: 1200px) {
    }


/*
=======================================================================
	41. Element Imagebanner
=======================================================================
*/

.imagebanner img {
    width: 100%;
    }


/*
=======================================================================
	42. Element Right and Left Content - Text and Image
=======================================================================
*/

    .text-and-image {
        position: relative;
        overflow: hidden;
    }

    /*.text-and-image .image-content-xs {margin-bottom: 1.5rem;}*/

    .module-fullwidth .text-and-image.text-and-image-text-right .text-content {padding-right: 0;}
    .module-fullwidth .text-and-image.text-and-image-text-left .text-content {padding-left: 0;}

    .text-and-image .image-content {height: 100%;}
    .text-and-image .image-content-xl {display: none;}

    @media screen and (min-width: 768px) {

        .text-and-image:not(.nobg) .image-content-xs {display: none;}

        .text-and-image .image-content-xs {width:50%;margin-bottom:0;}
        .text-and-image .image-content-xl {display: block;}

        /* Ordinary img */
        .text-and-image .image-content-inner-inner {
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%); /* Safari */
            -ms-transform: translate(-50%, -50%); /* IE 9 */
            transform: translate(-50%, -50%);
            max-width: 100%;
            max-height: 100%;
        }

        /* Background img */
        .text-and-image .image-content {
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            height: 100%;
            width: 50%;
            z-index: 3;
            background-repeat: no-repeat;
            background-position: center center;
            -webkit-background-size: cover;
            -moz-background-size: cover;
            -o-background-size: cover;
            background-size: cover;
            margin-top: 0;
        }

        .text-and-image-text-right .col-md-6 {
            float: right;
        }

        .text-and-image-text-right .image-content {
            left: 0;
            right: auto;
        }

        .text-and-image .text-content {
            padding-left: 0;
            padding-right: 0;
        }
        .module-fullwidth .text-and-image.text-and-image-text-right .text-content {
            padding-left: 2rem;
        }

        .text-and-image.nobg .image-content-xl  {
            display:none;
        }

        .text-and-image.nobg .container {
            display: flex;
            align-items: center;
        }

        .text-and-image.nobg.valigntop .container {
            align-items: flex-start;
        }

        .text-and-image.nobg.valignbottom .container {
            align-items: flex-end;
        }

        .text-and-image.nobg.text-and-image-text-left .container {
            flex-direction: row-reverse;
        }
    }

    @media screen and (min-width: 991px) {
        .module-fullwidth .text-and-image.text-and-image-text-right .text-content {
            padding-left: 3rem;
        }
    }

    @media screen and (min-width: 1200px) {
        .text-and-image .text-content .colteaser {font-weight: 400;}
        .text-and-image .text-content .pretitle {margin-left: 0;}
        .text-and-image h2 {font-size: 3rem;}
        .text-and-image .text-content .teaser {font-size: 1.2em;font-weight:lighter;}
    }


/*
=======================================================================
	42.1 Element Right and Left Content Padding
=======================================================================
*/

    .text-and-image.elementtopspace1 {margin-top: var(--default-margin-1);} 
    .text-and-image.elementtopspace2 {margin-top: var(--default-margin-2);} 
    .text-and-image.elementtopspace3 {margin-top: var(--default-margin-3);}
    .text-and-image.elementtopspace4 {margin-top: var(--default-margin-4);}

    .text-and-image.elementbottomspace1 {margin-bottom: var(--default-margin-1);} 
    .text-and-image.elementbottomspace2 {margin-bottom: var(--default-margin-2);} 
    .text-and-image.elementbottomspace3 {margin-bottom: var(--default-margin-3);}
    .text-and-image.elementbottomspace4 {margin-bottom: var(--default-margin-4);}

    .text-and-image.contenttopspace0 .text-content {padding-top: var(--default-margin-0);}
    .text-and-image.contenttopspace1 .text-content {padding-top: var(--default-margin-1);} 
    .text-and-image.contenttopspace2 .text-content {padding-top: var(--default-margin-2);} 
    .text-and-image.contenttopspace3 .text-content {padding-top: var(--default-margin-3);}
    .text-and-image.contenttopspace4 .text-content {padding-top: var(--default-margin-4);}

    .text-and-image.contentbottomspace0 .text-content {padding-bottom: var(--default-margin-0);}
    .text-and-image.contentbottomspace1 .text-content {padding-bottom: var(--default-margin-1);}
    .text-and-image.contentbottomspace2 .text-content {padding-bottom: var(--default-margin-2);}
    .text-and-image.contentbottomspace3 .text-content {padding-bottom: var(--default-margin-3);}
    .text-and-image.contentbottomspace4 .text-content {padding-bottom: var(--default-margin-4);}


@media screen and (min-width: 577px) {
    .text-and-image.module-fullwidth .image-content-xs {padding-top: var(--default-margin-2);}
}

@media screen and (max-width: 767px) {

    .text-and-image .text-content {padding-top:1.5rem!important;}
    .text-and-image .text-content {padding-top:1.5rem!important;}

    .text-and-image .text-content {padding:var(--default-margin-2);padding-top: calc((var(--default-margin-2) / 2));}
    .text-and-image.module-fullwidth.background.text-and-image-text-left .text-content {padding-left: 0;padding-right:0;}
    .text-and-image.module-fullwidth.background.text-and-image-text-right .text-content {padding-left: 0;padding-right:0;}
    .text-and-image.module-fullwidth:not(.background) .image-content-xs {padding-top: 0;}
}

    @media screen and (min-width: 768px) {
        .text-and-image.background .text-content {
            padding-left:var(--default-margin-2);
            padding-right:var(--default-margin-2);
        } 

        .text-and-image.text-and-image-text-right:not(.background) .text-content {padding-left:var(--default-margin-2);} 
        .text-and-image.text-and-image-text-left:not(.background) .text-content {padding-right:var(--default-margin-2);} 

        .text-and-image.module-fullwidth.text-and-image-text-left .text-content {padding-left: 0;}
        .text-and-image.module-fullwidth.text-and-image-text-right .text-content {padding-right: 0;}
    }


@media screen and (max-width: 576px) {
    .text-and-image .text-content {padding-top:1.5rem!important;padding-left: 15px;padding-right: 15px;}
    .text-and-image.background .text-content {padding-bottom: 15px;}

    .text-and-image:not(.background) .text-content {padding-left: 15px;padding-right: 15px;padding-bottom: 15px;}
    .text-and-image.background.module-fullwidth .image-content-xs {/*padding-left:15px;padding-right:15px;*/padding-top:15px;}
}


/*
=======================================================================
	42.2 Element Right and Left Content Width
=======================================================================
*/

    .text-and-image .column {
        position: relative;
        min-height: 1px;
        float: left;
    }

    .text-and-image-text-right .column {
        float: right;
    }

    @media (min-width: 767px) {

        .text-and-image .column {
            width:50%;
        }
    }

/*
=======================================================================
	42.3 Element Right and Left Content w/ Background Color
=======================================================================
*/

@media (max-width: 767px) {
    /*.text-and-image.background-color > .container {max-width:100%;padding:0;}*/
    .text-and-image.background-color {margin-top:0;padding-bottom:40px;background-color:transparent!important;}
    .text-and-image.background-color .column {float:none;}    
    .text-and-image.background-color .image-content-xs {margin-bottom:0;}
    .text-and-image.background-color .text-content {padding:30px 0;}
    }

@media (min-width: 768px) {
    .text-and-image.background-color .text-content > .container {padding:0;}
    }


/*
=======================================================================
	43. Accordion
=======================================================================
*/

.accordion-item {
	border-bottom: 1px solid #CCC;
	margin-bottom:15px;
	padding-bottom:10px;
	-webkit-transition: all 0.3s ease;                  
	-moz-transition: all 0.3s ease;                 
	-o-transition: all 0.3s ease;   
	-ms-transition: all 0.3s ease;          
	transition: all 0.3s ease;	
    }

.accordion-item-header h3 {
	color:#000;
    margin:0;
}

.accordion-item-header-link h3:before {
	font-family: "Font Awesome 5 Pro";
	content: "\f175";
	margin-right: 10px;
	display:inline-block;
	-webkit-transition: all 0.3s ease;                  
	-moz-transition: all 0.3s ease;                 
	-o-transition: all 0.3s ease;   
	-ms-transition: all 0.3s ease;          
	transition: all 0.3s ease;	
	color: #890d5f;
}

.accordion-item-header-link[aria-expanded="true"] h3:before {transform: rotate(180deg)}	

.accordion-item-header-link {
    border:0;
    background:none;
    padding:0;
    width:100%;
    text-align:left;
}

.accordion-item-header-link:focus {
    outline:0;
}

.accordion-item-body {padding-top:15px;}


/*
=======================================================================
	44. Timeline Vertical
=======================================================================
*/

.timeline-header {
	padding: 2.5rem 1.5rem;
	text-align: center;
	}

.timeline ul {
	padding-left:0;
	}

.timeline ul li {
    list-style-type: none;
    position: relative;
    width: 4px;
    margin: 0 auto;
    background: #000;
    padding-top: 20px;
    padding-bottom: 20px;
}
.timeline ul li::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 50%;
    transform: translateX(-50%) translateY(50%);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #000;
}

.timeline ul li .timeline-item {
    position: relative;
    bottom: 0;
    width: 400px;
    padding: 15px;
    background: white;
    left: 397px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    font-size: 1rem;
}

.timeline ul li .timeline-item.text--white {
    color:#fff;
}

.timeline ul li .timeline-item::before {
    content: '';
    position: absolute;
    border: 1px solid #000;
    width: 32px;
    top: 50%;
}
.timeline ul li:nth-child(odd) div {
    left: 45px;
}
.timeline ul li:nth-child(odd) div::before {
    left: -32px;
}
.timeline ul li:nth-child(even) div {
    left: -439px;
}
.timeline ul li:nth-child(even) div::before {
    right: -32px;
}
.timeline ul li h3 {
    text-transform: uppercase;
}
.timeline ul li::after {
    transition: background .5s ease-in-out;
}
.timeline ul li.in-view::after {
    background: white;
    border: 2px solid #000;
}
.timeline ul li .timeline-item {
    visibility: hidden;
    opacity: 0;
    transition: all .5s ease-in-out;
}
.timeline ul li:nth-child(odd) div {
    transform: translate3d(200px, 0, 0);
}
.timeline ul li:nth-child(even) div {
    transform: translate3d(-200px, 0, 0);
}
.timeline ul li.in-view div {
    transform: none;
    visibility: visible;
    opacity: 1;
}

@media screen and (max-width: 900px) {
  .timeline ul li .timeline-item {
    width: 250px;
  }
  .timeline ul li:nth-child(even) div {
    left: -289px;
    /*250+45-6*/
  }
	.timeline {
		overflow:hidden;
	}		
}

@media screen and (max-width: 600px) {
    .timeline ul li {
        margin-left: 20px;
    }
    .timeline ul li .timeline-item {
        width: calc(100vw - 160px);
    }
    .timeline ul li:nth-child(even) div {
        left: 45px;
    }
    .timeline ul li:nth-child(even) div::before {
        left: -32px;
    }
}


/*
=======================================================================
	96. Calendar Horizontal
=======================================================================
*/

.horizontal-calendar .slick-slider {
    /*background: rgba(0,0,0,0.05);*/
    /*
    padding-left:3rem;
    padding-right:3rem;
    */
}

.horizontal-calendar .slick-list::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100px;
    background: rgb(255,255,255);
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
}

@media (min-width: 1200px) {
    .horizontal-calendar .slick-list::after {
        width: 300px;
    }
}

.horizontal-calendar .slick-arrow {
    background: none;
}

.horizontal-calendar .slick-arrow:hover,
.horizontal-calendar .slick-arrow:focus {
    background: none;
}

.horizontal-calendar .slick-arrow::before {
    color: #000;
}

.horizontal-calendar .slick-prev {
    left: -1rem;
}

.horizontal-calendar .slick-next {
    right: 0;
}

.horizontal-calendar .slick-track {
    display:flex;
    gap: 2rem;
}

/* List Element */

.horizontal-calendar .listelement__calendar {
    flex-direction: column;
    justify-content: flex-start !important;
}

.horizontal-calendar .listelement__calendar__item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
}

.horizontal-calendar .listelement__calendar__item__header h1 {
    font-size: 1.75rem;
    font-weight: bold;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 4px solid rgba(0,0,0,0.15);
}

.horizontal-calendar .listelement__calendar__item__header h1 span {
    font-size: 1rem;
    display: block;
    font-weight: normal;
}

.horizontal-calendar .listelement__calendar:first-child h1 {
    border-color: #dc3545;
}

.listelement__calendar__item__body {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.listelement__calendar__item__body__event {
    padding: 1em;
    background: rgba(0,0,0,0.05);
    color: #000;
}

.listelement__calendar__item__body__event:hover,
.listelement__calendar__item__body__event:focus {
    background: rgba(0,0,0,0.09);
    text-decoration:none;
}


.listelement__calendar__item__body__event h2 {
    font-size: 1rem;
    font-weight: 400;
}

.listelement__calendar__item__body__event h2:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f105";
    margin-left: 10px;
    color: #dc3545;
    font-weight: 100;
}

@media (min-width: 1200px) {
    .listelement__calendar__item__body__event h2 {
        font-size: 1.25rem;
    }
}

.listelement__calendar__item__body__event__time::before {
    font-family: "Font Awesome 5 Pro";
    content: "\f017";
    margin-right: 10px;
    color: #dc3545;
}

.horizontal-calendar__footer {
    margin-top: 2rem;
}


/*
=======================================================================
	97. Rotating Elements
=======================================================================
*/

.listelement-rotating-element:not(.white) .slick-link-ext:hover + .row .bttn {background:#000;color:#fff;}
.listelement-rotating-element.white .slick-link-ext:hover + .row .bttn {background:#fff;color:#000;}

.listelement-rotating-element.xltitle h1 {font-size:2em;}

@media (min-width: 767px) {
    .listelement-rotating-element.xltitle h1 {font-size:3em;}
    }

@media (min-width: 991px) {
    .listelement-rotating-element.xltitle h1 {font-size:3.5em;}
    }

@media (min-width: 1200px) {
    .listelement-rotating-element.xltitle h1 {font-size:4.5em;}
    }


/*
=======================================================================
	98. Flexslider
=======================================================================
*/

    .flexslider {
        width: 100%;
        height: 350px;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        /*background: #f1f1f1;*/
        border: none;
        border-radius: 0;
        margin: 0px;
    }

    .flex-control-nav {
        bottom: -30px;
        padding-top: 29px;
    }

    .flexslider li {
        color: #828282;
        line-height: 16px;
    }

    .flex-control-paging li a {
        background: #cdcdcd;
        width: 6px;
        height: 6px;
        box-shadow: none;
    }

    .flexslider .flexcontainer {
        margin-top: 40px;
        padding: 0 30px;
        margin-left: auto;
        margin-right: auto;
    }

    .flexslider .slides img {
        width: auto;
        margin-top: -40px;
    }

    .flex-control-paging li a:active, .flex-control-paging li a:hover, .flex-control-paging li a.flex-active {
        background: #505050;
    }

    .flex-direction-nav .flex-next {
        right: 0px;
    }

    .flex-direction-nav a {
        background: url(../images/flexslider/bg_direction_nav_2.png) 0px 0px no-repeat transparent;
        height: 68px;
        top: 46%;
        width: 44px;
        -webkit-transition: opacity ease;
    }

    .flexslider:hover .flex-prev {
        left: 0px;
    }

    .flexslider:hover .flex-next {
        right: 0px;
    }

    /* SLIDES */

    .flexslider .bg {
        height: 350px;
    }

    .slides {
        height: 350px;
        overflow: hidden;
    }

    .txtbg h1, .txtbg h2, .txtbg h3, .txtbg h4, .txtbg h5, .txtbg h6 {
        color: #fff !important;
        background: #ff530d;
        display: inline;
    }

    .flexslider h1, .flexslider h2, .flexslider h3, .flexslider h4, .flexslider h5, .flexslider h6 {
        margin-top: 0px;
    }

    .txtbg p {
        color: #fff;
        background: rgba(108,108,108,0.8);
        display: inline;
    }

    .txtbg a {
        color: #fff;
    }

    .txtbg a:hover {
        color: #ff530d;
    }

    .sliderPic {
        margin-bottom: 60px;
    }




    /*
=======================================================================
	99. Magnific gallery
=======================================================================
*/

section.gallery .list {padding-right:0;padding-left:0;}

    section.gallery figure {
    margin-bottom: 30px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
    padding-left: 15px;
    padding-right: 15px;
    }

section.gallery figure:hover {
	transform: scale(1.03);
	}

.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
  opacity: 0;
  -webkit-backface-visibility: hidden;
  /* ideally, transition speed should match zoom duration */
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
	}

.mfp-with-zoom.mfp-ready .mfp-container {
    opacity: 1;
}
.mfp-with-zoom.mfp-ready.mfp-bg {
	opacity: 0.4;
	}

.mfp-with-zoom.mfp-removing .mfp-container,
.mfp-with-zoom.mfp-removing.mfp-bg {
  opacity: 0;
	}

@media (min-width:991px) {
        section.gallery .list {
            padding-right: 15px;
            padding-left: 15px;
        }
    }