/*
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
13.3 List Pagination
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

45. Parallax / Jarallax

96. Calendar Horizontal
97. Rotating Elements
98. Flexslider
99. Magnific gallery

*/

/*
=======================================================================
	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(4vh, 2rem);
    --default-margin-2: min(6vh, 3rem);
    --default-margin-3: min(8vh, 4rem);
    --default-margin-4: min(10vh, 6rem);
}

@media (min-width: 1200px) {
    :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(16vh, 12rem);
    }
}


/*
=======================================================================
	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 (max-width: 768px) {
    .small-media {
        width: 100%;
        float: none;
        margin-left: 0;
    }

        .small-media::after {
            display: none;
        }
}

@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;
    }

    .small-media-right.fullwidth {
        width: 130%;
    }

        .small-media-right.fullwidth img {
            margin-left: 12.5%;
        }
}




/*
=======================================================================
	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%;
    }
/*header.mainheader .header-elements .header-element {display: table-cell;vertical-align:middle;}*/


/*
=======================================================================
	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 > a {
        opacity: 0.8;
        border-bottom: 2px solid transparent;
    }

    header.white .site-navigation ul.sf-menu > li.active > a {
        opacity: 1;
        border-color: #fff;
    }

    header.white .site-navigation ul.sf-menu > li > a:hover {
        opacity: 1;
    }


/*
=======================================================================
	6.3 Site Header Search
=======================================================================
*/

.bttn-site-search a {
    position: static;
    padding-right: 0;
}

    .bttn-site-search a:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f002";
        padding-left: 10px;
    }

    .bttn-site-search a[aria-expanded="true"]:after {
        content: "\f00d";
    }

.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%;
        /*min-width: 500px;*/
        /*left: -200px !important;*/
        /*display: table-cell;*/
    }

@media screen and (min-width: 991px) {
    .site-search div {
        left: -200px !important;
    }
}

    .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 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 hsl(var(--dropdown));
        }

        .site-navigation ul.sf-menu > li > ul > li:first-child:hover:before {
            border-bottom: 10px solid hsl(var(--dropdown-hover));
        }

    .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: hsl(var(--dropdown-hover));
    }

.mobile-nav.btn-hamburger {
    display: block !important;
}

.mobile-nav.bttn-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";
}

.mm-menu_offcanvas.mm-menu_opened {
    box-shadow: #00000030 1px 1px 10px;
    margin: 0 3px 5px 0;
    z-index: 2;
    transition: all 1s ease-out;
}

@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 article {
    position: relative;
}

[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-"] .listtext > :last-child,
.column-content > :last-child {
    margin-bottom: 0 !important;
}

.bordertop {
    border-top: 1px solid #e0e0e0;
}

.borderbottom {
    border-bottom: 1px solid #e0e0e0;
}


/*
=======================================================================
	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(.background-video):not(.borderbottom) +
section:not(.background-color):not(.background-image):not(.background-video):not(.bordertop) {
    padding-top: 0;
}

/* For 'Text and Image' */
section:not(.background-color):not(.background-image):not(.background-video):not(.borderbottom) +
section:not(.background-color):not(.background-image):not(.background-video):not(.bordertop) {
    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;
        font-size: 0.8em;
        color: rgba(0,0,0,.5);
        text-transform: capitalize;
    }

    article .byline-author {
        font-size: 0.8em;
    }

        article .byline-author:before {
            font-family: "Font Awesome 5 Pro";
            content: "\f2be";
            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 {
        margin-bottom: 2rem;
        font-size: 1.15rem;
    }

.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;
    border-radius: 20px;
}

    .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 15px 0;
    padding: 0;
    font-weight: bold;
}

.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;
}

.listtext a:first-of-type {
    text-decoration: none;
}

.listtext a:hover {
    text-decoration: underline;
}

.listtext .listteaser {
    font-size: .9em;
}

.listdate {
    display: inline-block;
    opacity: 0.75;
    font-size: 0.9em;
}

    .listdate + .listteaser {
        margin-top: 1rem;
    }




.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;
    }

    .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: 1.6rem;
    }

    .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: 1.6rem;
    }
    /* 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: 1.6rem;
    }
}


/*
=======================================================================
	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: rgba(var(--themecolor), 1);
}

    .page-link:hover {
        z-index: 2;
        color: rgba(var(--themecolor), 1);
        background-color: rgba(var(--themecolor), .15);
    }

.page-item.active .page-link {
    background-color: rgba(var(--themecolor), 1);
    border-color: rgba(var(--themecolor), 1);
}

.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: 40px;
}

@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 !important;
    }
}

@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 !important;
    }
}

@media (min-width:768px) and (max-width:991px) {
    [class*="listelement-"] {
        margin-bottom: 50px;
    }

    .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 !important;
    }
}

@media (min-width:992px) and (max-width:1199px) {
    [class*="listelement-"] {
        margin-bottom: 60px;
    }

    .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 !important;
    }
}

@media (min-width:1200px) {
    [class*="listelement-"] {
        margin-bottom: 60px;
    }

    .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 !important;
    }
}

.row.list > [class*="col-"]:last-child {
    margin-bottom: 0 !important;
}


/*
=======================================================================
	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;
}*/

.hidden{
    display:none;
}

/*
=======================================================================
	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;
    background-color: rgba(var(--themecolor), 1);
}

    .sub-footer,
    .sub-footer a {
        color: #b3b3b3;
    }


@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
=======================================================================
*/


/* When module is not full width */

.text-and-image:not(.module-fullwidth) {
    margin: 0 auto;
}

@media (min-width: 768px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 696px;
    }
}

@media (min-width: 992px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 900px;
    }
}

@media (min-width: 1200px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 1110px;
    }
}

@media (min-width: 1300px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 1210px;
    }
}

@media (min-width: 1400px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 1310px;
    }
}

@media (min-width: 1500px) {
    .text-and-image:not(.module-fullwidth) {
        max-width: 1410px;
    }
}


/* Misc */

.text-and-image {
    position: relative;
    overflow: hidden;
}

.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;
}

.image-content > * {
    width: 100%;
    height: 100%;
    display: block;
}

/* Reverse order for mobile view */
@media screen and (max-width: 767px) {
    .text-and-image {
        display: flex;
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 768px) {
    .text-and-image .image-content {
        display: block;
        position: relative;
    }

    /* CROP YES - FULLWIDTH YES */
    .text-and-image:not(.nocrop) .image-content {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        height: 100%;
        width: 50%;
        z-index: 3;
        margin-top: 0;
    }

        .text-and-image:not(.nocrop) .image-content > * {
            object-fit: cover;
            height: 100%;
            width: 100%;
        }



    /* CROP NO - FULLWIDTH YES */
    .text-and-image.module-fullwidth.nocrop .image-content {
        width: 50%;
        float: right;
    }

    .text-and-image.module-fullwidth.nocrop.text-and-image-text-right .image-content {
        float: left;
    }

    .text-and-image.module-fullwidth.nocrop > .container {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        transform: translateY(-50%);
    }



    /* CROP NO - FULLWIDTH NO */
    .text-and-image.nocrop:not(.module-fullwidth) .image-content {
        width: 50%;
        float: right;
    }

        .text-and-image.nocrop:not(.module-fullwidth) .image-content img {
            height: 100%;
        }

    .text-and-image.nocrop:not(.module-fullwidth).text-and-image-text-right .image-content {
        float: left;
    }

    .text-and-image.nocrop:not(.module-fullwidth) .column {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .text-and-image.nocrop:not(.module-fullwidth).text-and-image-text-left .column {
        left: 0;
    }

    .text-and-image.nocrop:not(.module-fullwidth).text-and-image-text-right .column {
        right: 0;
    }


    /* CROP YES - FULLWIDTH NO */
    .text-and-image:not(.nocrop) .image-content {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 50%;
    }

        .text-and-image:not(.nocrop) .image-content > * {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }


    /* Mobile view */
    .text-and-image .image-content {
        width: 100%;
    }


    /* Misc other stuff */
    .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.nocrop.valigntop .container {
        align-items: flex-start;
    }

    .text-and-image.nocrop.valignbottom .container {
        align-items: flex-end;
    }
}

@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 .colteaser {
        font-size: 1.1em;
    }
}


/*
=======================================================================
	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: 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: 767px) {
    .text-and-image.module-fullwidth.background.text-and-image-text-left .text-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .text-and-image.module-fullwidth.background.text-and-image-text-right .text-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .text-and-image:not(.module-fullwidth).background.text-and-image-text-left .text-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .text-and-image:not(.module-fullwidth).background.text-and-image-text-right .text-content {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media screen and (max-width: 575px) {
    .text-and-image.elementbottomspace0 + .text-and-image {
        margin-top: var(--default-margin-2) !important;
    }

    .text-and-image .text-content {
        padding-left: 30px;
        padding-right: 30px;
    }

    .text-and-image:not(.background) .text-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .text-and-image:not(.background) .text-content {
        padding-top: var(--default-margin-1);
        padding-bottom: var(--default-margin-1);
    }
}


/*
=======================================================================
	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: 0;
    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: #9e9e9e;
}

.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;
            }
}



/*
=======================================================================
	45. Jarallax Parallax
=======================================================================
*/

.jarallax {
    position: relative;
    z-index: 0;
}

    .jarallax > .jarallax-img {
        position: absolute;
        object-fit: cover;
        /* support for plugin https://github.com/bfred-it/object-fit-images */
        font-family: 'object-fit: cover;';
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1;
    }


/*
=======================================================================
	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 {
    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);
    }

    .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;
    }
}

/*
=======================================================================
	Custom Fonts
=======================================================================
*/

/*@import url('//fonts.googleapis.com/css2?family=Inter:wght@200;300;700&display=swap');*/


/*
=======================================================================
	Custom Properties
=======================================================================
*/

:root {
    --themecolor: 46, 48, 142;
    --dropdown: 120, 2%, 35%;
    --dropdown-hover: 220, 2%, 55%;
}


/*
=======================================================================
	Bootstrap Col Double Margin
=======================================================================
*/

@media screen and (min-width: 991px) {
    .container {
        padding-right: 30px;
        padding-left: 30px;
    }

        .container .row {
            margin-right: -30px;
            margin-left: -30px;
        }

    .col, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
        position: relative;
        min-height: 1px;
        padding-right: 30px;
        padding-left: 30px;
    }
}

/*
=======================================================================
	General
=======================================================================
*/

body {
}

h1, h2, h3, h4, h5, h6 {
    /*font-family: 'Inter', sans-serif;*/
}

a {
    color: rgba(var(--themecolor), 1);
}

/* Link Hover */
article .text a:not(.bttn):not(.image-link):hover,
article .text a:not(.bttn):not(.image-link):focus {
    background-color: rgba(var(--themecolor), 1);
    box-shadow: rgba(var(--themecolor), 1) -5px 0px 0px 0px, rgba(var(--themecolor), 1) 5px 0px 0px 0px;
    border-radius: 5px;
    border-bottom-color: transparent;
    color: #fff;
    text-decoration: none;
}


/*
=======================================================================
	Main header General
=======================================================================
*/

:root {
    --header-height: 75px;
    --header-height-compressed: 60px;
}

@media (min-width:1200px) {
    :root {
        --header-height: 100px;
        --header-height-compressed: 80px;
    }
}




header.mainheader {
    width: 100%;
    transition: height 0.4s ease-in-out;
    -webkit-transition: height 0.4s ease-in-out;
    -moz-transition: height 0.4s ease-in-out;
    transition: background 0.4s ease-in-out;
    -webkit-transition: background 0.4s ease-in-out;
    -moz-transition: background 0.4s ease-in-out;
    border: 0;
    background-color: rgba(var(--themecolor), 1);
}

body header.mainheader:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
}

.mainheader .header-elements {
    height: var(--header-height);
    transition: all 0.7s ease-in-out;
    -webkit-transition: all 0.7s ease-in-out;
    -moz-transition: all 0.7s ease-in-out;
}

    .mainheader .header-elements .sf-menu a {
        font-size: .8em;
        font-weight: lighter;
    }

@media (min-width:768px) {
}

@media (min-width:991px) {
    .mainheader .header-elements .sf-menu a {
        font-size: 1em;
    }
}

@media (min-width:1200px) {
    .mainheader .header-elements .sf-menu a {
        font-size: 1em;
    }
}


/*
=======================================================================
	Main header Fixed
=======================================================================
*/

header.mainheader.sticky {
    position: sticky;
    top: 0; /* Verdi tilsvarende høyde på evt. pre-header */
    z-index: 9;
}


    /*
=======================================================================
	Main header Sticky
=======================================================================
*/

    header.mainheader.sticky.fixed {
        position: sticky;
        top: 0;
        left: 0;
        z-index: 9;
        width: 100%;
    }

    header.mainheader.sticky.fixed {
        border-bottom: 1px solid rgba(0,0,0,0.15);
    }

        header.mainheader.sticky.fixed .header-elements {
            height: var(--header-height-compressed);
        }

@media (min-width:1200px) {
    header.mainheader .header-elements { /*padding-top: 20px;padding-bottom: 20px;*/
    }

    header.mainheader.sticky.fixed .header-elements {
        padding-top: 0;
        padding-bottom: 0;
    }

    header.mainheader.sticky-fixed .site-logo {
        width: 200px;
    }
}


/*
=======================================================================
	Front page header without background
=======================================================================
*/

.itemid-193 header.mainheader:not(.fixed).nobg {
    background: none !important;
    position: absolute;
}

.itemid-193 header.mainheader.fixed.nobg {
    position: fixed;
}


/*
=======================================================================
	Section General
=======================================================================
*/

.darker-10:before {
    background-color: rgba(var(--themecolor), .1);
}

.darker-20:before {
    background-color: rgba(var(--themecolor), .2);
}

.darker-30:before {
    background-color: rgba(var(--themecolor), .3);
}

.darker-40:before {
    background-color: rgba(var(--themecolor), .4);
}

.darker-50:before {
    background-color: rgba(var(--themecolor), .5);
}

.darker-60:before {
    background-color: rgba(var(--themecolor), .6);
}

.darker-70:before {
    background-color: rgba(var(--themecolor), .7);
}

.darker-80:before {
    background-color: rgba(var(--themecolor), .8);
}

.darker-90:before {
    background-color: rgba(var(--themecolor), .9);
}



/*
=======================================================================
	Custom Front Page
=======================================================================
*/

.itemid-198 {
    padding-top: calc(60px + var(--header-height)) !important;
    padding-bottom: 60px !important;
}

    .itemid-198.xltitle h1 {
        font-size: 2rem;
        font-weight: bold;
    }

    .itemid-198 .teaser {
        font-weight: lighter;
    }

@media (min-width:768px) {
    .itemid-198 {
        padding-top: calc(100px + var(--header-height)) !important;
        padding-bottom: 100px !important;
    }

        .itemid-198.xltitle h1 {
            font-size: 2.5rem;
        }
}

@media (min-width:991px) {
    .itemid-198 {
        padding-top: calc(100px + var(--header-height)) !important;
        padding-bottom: 100px !important;
    }

        .itemid-198.xltitle h1 {
            font-size: 3rem;
        }
}

@media (min-width:1200px) {
    .itemid-198 {
        padding-top: calc(160px + var(--header-height)) !important;
        padding-bottom: 160px !important;
    }

        .itemid-198.xltitle h1 {
            font-size: 4rem !important;
        }

        .itemid-198 .teaser {
            font-size: 1.4em;
        }
}

@media (min-width:1500px) {
    .itemid-198.xltitle h1 {
        font-size: 4.5rem !important;
    }
}



/*
=======================================================================
	Custom Filter
=======================================================================
*/

.mix-controls {
    margin-bottom: 3rem;
}

    .mix-controls button {
        border: 0;
        color: #636363;
        background: #e6e6e6;
        margin-right: 1rem;
        padding: 1rem;
    }

        .mix-controls button:last-of-type {
            margin-right: 0;
        }

        .mix-controls button:focus {
            outline: none;
        }

        .mix-controls button.mixitup-control-active {
            background: rgba(var(--themecolor), 1);
            color: #fff;
        }



/*
=======================================================================
	Custom Footer
=======================================================================
*/


.site-footer .column .column-content h2 {
    margin: 0 !important;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 1px;
}

    .site-footer .column .column-content h2 + p {
        margin-top: .75rem;
        font-weight: lighter;
    }

.site-footer .column .column-content a {
    text-decoration: underline;
}

.site-footer .column.col1 img {
    width: 150px !important;
    height: inherit !important;
}

.site-footer a[href*="/maps/"]:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f041";
    display: inline-block;
    margin-right: 10px;
}

@media (min-width:768px) {
    .site-footer .col.col1 img {
        width: 200px;
    }
}

@media (min-width:991px) {
}

@media (min-width:1200px) {
    .site-footer .col .column-content h2 {
        margin: 0 !important;
        font-size: 1.7rem;
    }
}


/*
=======================================================================
	Edit Link
=======================================================================
*/

section {
    position: relative;
}

.er-edit-link {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 5;
    fill: #a6a6a6;
}


/*
=======================================================================
	Responsive Iframe
=======================================================================
*/

.video-container {
    position: relative;
    padding-bottom: 56.25%;
}

    .video-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }


.visible-xs{
    display:none;
}

@media (max-width:769px) {
    .visible-xs {
        display: block;
    }
}

.dropdown-toggle::after {
    border:0;
    vertical-align:0;
    content: none;
}
