﻿


article ol li:last-child, article ul li:last-child {
    margin-bottom: 0;
}


td {
    vertical-align: text-bottom;
    padding: 1vw 1vw 1vw 0;
}






.outer
{
  display: table;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.middle
{
  display: table-cell;
  vertical-align: middle;
}

.inner
{
  margin-left: auto;
  margin-right: auto;
  max-width: 475px;
width: 86%;
}











.overlay ul.h1 li {
height: calc(100% / 12);

    min-height: 33px;
}









.outer {
    display: block;

}
























#symbol
{
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 999999;
  fill: #fff;
  max-width: 400px;
  opacity: 0;
  -moz-transition: all .2s ease-in;
  -o-transition: all .2s ease-in;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
pointer-events:none;
}

.is-changing #symbol
{
  opacity: 1;
}











.menu .inner
{
  margin-left: auto;
  margin-right: auto;
  width: 400px;
  padding-top: 200px;
  margin-left: 18%;
}







@media (max-width:960px)
{

#symbol
{

  max-width: 150px;

}

  .opening-block
  {
    height: 56.25vw;
  }
}

.opening-block .opening-media
{
  width: 100%;
  height: 100vh;
  object-position: 50% 50%;
  object-fit: cover;
  position: relative;
}

@media (max-width:960px)
{
  .opening-block .opening-media
  {
    height: 56.25vw;
  }
}

.opening-block .opening-media .video-wrapper
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  overflow: hidden;
}

@media (max-width:960px)
{
  .opening-block .opening-media .video-wrapper
  {
    height: 56.25vw;
  }
}

.opening-block .opening-media .video-wrapper iframe
{
  width: 100vw;
  height: 56.25vw;
  min-height: 100vh;
  min-width: 177.77vh;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width:960px)
{
  .opening-block .opening-media .video-wrapper iframe
  {
    min-height: 0;
    min-width: 0;
  }
}

.opening-block .overlay-film
{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #010101;
  opacity: 0;
}

.opening-logo
{
  width: 100%;
  height: 100vh;
  position: relative;
}

@media (max-width:960px)
{
  .opening-logo
  {
    height: 56.25vw;
  }
}

.opening-logo .logo
{
  position: absolute;
  height: 2.94117647rem;
  width: auto;
  bottom: 45px;
  left: 45px;
  z-index: 60;
  opacity: 1;
}

@media (max-width:960px)
{
  .opening-logo .logo
  {
    width: 25%;
    height: auto;
  }
}

@media (max-width:640px)
{
  .opening-logo .logo
  {
    bottom: 20px;
    left: 20px;
  }
}

.opening-logo .logo.hidden
{
  opacity: 0;
}

.overlay-home
{
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
  transition: 555ms opacity ease;
}




/*
=======================================================================
	Custom 
=======================================================================
*/


a
{
  word-wrap: break-word;
}



ol, ul
{
  padding-left: 0;
  list-style-type: square;
}







body
{
  overflow-wrap: break-word;
}





a.active
{
  text-decoration: underline;
}

.menu
{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: 100%;
  height: 100vh;
  width: 100%;
  color: #fff;
  padding-top: 18vw;
  background: #010101;
  z-index: 20;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: .166s opacity ease;
  transition: .5s opacity ease;
}

input#op
{
  display: none;
}

.lower label
{
  font-weight: normal;
  float: right;
}

.lower label:hover
{
  cursor: pointer;
}

.overlay
{
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #fff;
}

.overlay label
{
  width: 58px;
  height: 58px;
  position: absolute;
  right: 20px;
  top: 40px;
  z-index: 100;
  cursor: pointer;
  font-weight: normal;
}

.overlay nav
{
  text-align: left;
  position: relative;
  top: 45%;
  height: 60%;
  font-size: 24px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);

}

.overlay ul
{
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  height: 100%;
  position: relative;
}

.overlay ul li
{
  display: block;

}

.overlay ul li a
{
  display: block;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

.lower ~ .overlay-hugeinc
{
  opacity: 0;
  visibility: hidden;

  -webkit-transition: opacity 0.7s, visibility 0s 0.5s;
  transition: opacity 0.7s, visibility 0s 0.5s;
}

#op:checked ~ .overlay-hugeinc
{
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.overlay-hugeinc nav
{
/*  -moz-perspective: 300px; */
}

.overlay-hugeinc nav ul
{
  opacity: 0.4;
  -webkit-transform: translateY(-25%) rotateX(35deg);
  transform: translateY(-25%) rotateX(35deg);
  -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s;
}

#op:checked ~ .overlay-hugeinc nav ul
{
  opacity: 1;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

#op:not(:checked) ~ .overlay-hugeinc nav ul
{
  -webkit-transform: translateY(25%) rotateX(-35deg);
  transform: translateY(25%) rotateX(-35deg);
}





.overlay-hugeinc .bilde nav
{
/*  -moz-perspective: 300px;  */
padding-left: 20%;
}

.overlay-hugeinc .bilde nav ul
{
  opacity: 0.4;
  -webkit-transform: translateY(25%) rotateX(35deg);
  transform: translateY(25%) rotateX(35deg);
  -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s;
}

#op:checked ~ .overlay-hugeinc .bilde nav ul
{
  opacity: 1;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

#op:not(:checked) ~ .overlay-hugeinc .bilde nav ul
{
  -webkit-transform: translateY(-25%) rotateX(-35deg);
  transform: translateY(-25%) rotateX(-35deg);
}







.overlay-hugeinc .bilde {

padding-top: 22vw;
}


.menu.visible
{
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

.menu ul
{
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.menu ul li
{
  margin-bottom: .6rem;
}






.menu-prompt
{
  position: absolute;
  top: 0;
margin-right: 28px;
  color: white;
  z-index: 30;
  display: block;
  width: 1.83823529rem;
  height: 1.83823529rem;
  cursor: pointer;
  transition: all 1.5s ease;
  transform: translateX(0) translateY(-12.5%);
  transition-property: width, transform;
  -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
  transition: opacity 0.5s, visibility 0s 0.5s;
}

.menu-prompt {
    position: absolute;
    top: 0;
margin-right: 28px;
    right: 0;
    /* left: 90.5%; */
    color: white;
    z-index: 30;
    display: block;
    width: 1.83823529rem;
    height: 1.83823529rem;
    cursor: pointer;
    transition: all 1.5s ease;
    transform: translateX(0) translateY(-12.5%);
    transition-property: width, transform;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}

.menu-prompt:before,
.menu-prompt:after
{
  content: '';
  color: inherit;
  display: block;
  position: absolute;
  width: 1.83823529rem;
  height: 2px;
  top: 50%;
  background: #000;
  transition: all 222ms ease;
}

.menu-prompt:before
{
  transform: translateY(-6px);
}

.menu-prompt:after
{
  transform: translateY(6px);
}

.menu-prompt1:hover:before
{
  transform: translateY(-5px);
}

.menu-prompt1:hover:after
{
  transform: translateY(5px);
}

[data-menu-open="true"] header.mainheader {

    position: fixed;

}

[data-menu-open="true"] .menu-prompt,
.carousel-overlay .menu-prompt,
.video-viewer .menu-prompt
{
  transform: translateX(0);
}

[data-menu-open="true"] .menu-prompt:before,
.carousel-overlay .menu-prompt:before,
.video-viewer .menu-prompt:before
{
  transform: translateY(0) rotate(-45deg);
}

[data-menu-open="true"] .menu-prompt:after,
.carousel-overlay .menu-prompt:after,
.video-viewer .menu-prompt:after
{
  transform: translateY(0) rotate(45deg);
}

[data-menu-open="true"] .menu-prompt:hover:before,
.carousel-overlay .menu-prompt:hover:before,
.video-viewer .menu-prompt:hover:before,
[data-menu-open="true"] .menu-prompt:hover:after,
.carousel-overlay .menu-prompt:hover:after,
.video-viewer .menu-prompt:hover:after
{
  background: #A1A1A1;
}

[data-home-ready="false"] .menu-prompt
{
  opacity: 0;
}
/*
@media (max-width:640px)
{
  .menu-prompt
  {
    top: 20px;
    right: 20px;
    transform: translateY(-25%);
  }
}*/

[data-menu-open="true"] .menu-prompt,
[data-main-content="true"] .menu-prompt,
[data-carousel-open="true"] .menu-prompt,
.no-top-image .menu-prompt
{
  color: #2F378C;
}

[data-menu-open="true"] .menu-prompt:hover,
[data-main-content="true"] .menu-prompt:hover,
[data-carousel-open="true"] .menu-prompt:hover,
.no-top-image .menu-prompt:hover
{
  color: #A1A1A1;
}

img
{
  width: 100%;
}




/*
=======================================================================
	Section Padding
=======================================================================
*/

.home-top-clean
{
  margin-top: 0;
}

/* Less */
.lesstopspace
{
  padding-top: 15px;
}

.lessbottomspace
{
  padding-bottom: 15px;
}

/* Standard */
.topspace
{
  padding-top: 30px;
}

.bottomspace
{
  padding-bottom: 30px;
}

/* More */
.moretopspace
{
  padding-top: 60px;
}

.morebottomspace
{
  padding-bottom: 60px;
}

/* Even More */
.evenmoretopspace
{
  padding-top: 100px;
}

.evenmorebottomspace
{
  padding-bottom: 100px;
}

@media screen and (min-width: 768px)
{

  .lesstopspace
  {
    padding-top: 30px;
  }

  .lessbottomspace
  {
    padding-bottom: 30px;
  }

  .topspace
  {
    padding-top: 40px;
  }

  .bottomspace
  {
    padding-bottom: 40px;
  }

  .morebottomspace
  {
    padding-bottom: 100px;
  }

  .moretopspace
  {
    padding-top: 100px;
  }

  .evenmorebottomspace
  {
    padding-bottom: 150px;
  }

  .evenmoretopspace
  {
    padding-top: 150px;
  }
}

@media screen and (min-width: 991px)
{
  .lesstopspace
  {
    padding-top: 30px;
  }

  .lessbottomspace
  {
    padding-bottom: 30px;
  }

  .topspace
  {
    padding-top: 50px;
  }

  .bottomspace
  {
    padding-bottom: 50px;
  }

  .morebottomspace
  {
    padding-bottom: 125px;
  }

  .moretopspace
  {
    padding-top: 125px;
  }

  .evenmorebottomspace
  {
    padding-bottom: 175px;
  }

  .evenmoretopspace
  {
    padding-top: 175px;
  }
}

@media screen and (min-width: 200px)
{
  .lesstopspace
  {
    padding-top: 30px;
    padding-top: 3vw;
  }

  .lessbottomspace
  {
    padding-bottom: 30px;
    padding-bottom: 3vw;
  }

  .topspace
  {
    padding-top: 80px;
    padding-top: 4vw;
  }

  .bottomspace
  {
    padding-bottom: 80px;
    padding-bottom: 4vw;
  }

  .morebottomspace
  {
    padding-bottom: 150px;
    padding-bottom: 5vw;
  }

  .moretopspace
  {
    padding-top: 150px;
    padding-top: 5vw;
  }

  .evenmorebottomspace
  {
    padding-bottom: 200px;
    padding-bottom: 6vw;
  }

  .evenmoretopspace
  {
    padding-top: 200px;
    padding-top: 6vw;
  }
}

article ol, article ul,ol, ul {
    padding-left: 19px;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6
{
  line-height: 1.3;
}



@media screen and (max-width: 768px)
{
  body
  {
    font-size: 18px;
  }
}

@media (min-width: 1400px)
{
  body
  {
    font-size: 24px;
    font-size: 1.4vw;
  }
}

@media (min-width: 1600px)
{
  .body
  {
    font-size: 30px;
    font-size: 1.5vw;
  }

  h1,h1.page-section-title
  {
    font-size: 4.5rem;
    font-size: 3.1vw;
    font-size: 2.4vw;
    margin-bottom: 90px;
  }
}



.cont
{
  display: flex;
  justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 0;
}
















/*
=======================================================================
	Custom Bootstrap
=======================================================================
*/

.containerwidth
{
  margin-left: auto;
  margin-right: auto;
}

.col-md-offset-3
{
  margin-left: 0;
}

/*
=======================================================================
	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-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
  {
    position: relative;
    min-height: 1px;
    padding-right: 30px;
    padding-left: 30px;
  }
}


/*
=======================================================================
	Main header General
=======================================================================
*/

header.mainheader
{
  z-index: 9999;
  top: 40px;
  width: 100%;
  position: absolute;
  left: 0;
  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;
}

body header.mainheader:before
{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
}

.mainheader .header-elements
{
  padding-top: 25px;
  padding-bottom: 25px;
  transition: all 0.7s ease-in-out;
  -webkit-transition: all 0.7s ease-in-out;
  -moz-transition: all 0.7s ease-in-out;
}

