/*** BRICOLAGE FONT FACE ***/
@font-face {
  font-family: "Bricolage Grotesque";
  src: url("/fonts/Bricolage/BricolageGrotesque-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bricolage Grotesque";
  src: url("/fonts/Bricolage/BricolageGrotesque-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bricolage Grotesque";
  src: url("/fonts/Bricolage/BricolageGrotesque-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bricolage Grotesque";
  src: url("/fonts/Bricolage/BricolageGrotesque-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bricolage Grotesque";
  src: url("/fonts/Bricolage/BricolageGrotesque-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
/*** BRICOLAGE FONT FACE ***/

/*** LIBRE BASKERVILLE FONT FACE ***/
@font-face {
  font-family: "Libre Baskerville";
  src: url("/fonts/Libre-Baskervville/LibreBaskerville-Italic.woff2")
    format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Libre Baskerville";
  src: url("/fonts/Libre-Baskervville/LibreBaskerville-Regular.woff2")
    format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Libre Baskerville";
  src: url("/fonts/Libre-Baskervville/LibreBaskerville-Bold.woff2")
    format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
/*** LIBRE BASKERVILLE FONT FACE ***/

/*** PLAYFAIR DISPLAY FONT FACE ***/
@font-face {
  font-family: "Playfair Display";
  src: url("/fonts/Playfair-display/PlayfairDisplay-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Playfair Display";
  src: url("/fonts/Playfair-display/PlayfairDisplay-Regular.woff2")
    format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Playfair Display";
  src: url("/fonts/Playfair-display/PlayfairDisplay-Italic.woff2")
    format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
/*** PLAYFAIR DISPLAY FONT FACE ***/

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html,
body {
  background: #fcfaf7;
  color: #332a28;
  overflow-x: hidden;
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}
#wrapper {
  transition: 0.2s;
  min-height: calc(100vh - 700px);
}
#wrapper.menu_open {
  transform: translateX(-380px);
  opacity: 0.75;
}

h1,
h2,
h3,
h4,
p {
  color: #332a28;
}

p {
  font-size: 20px;
  line-height: 32px;
  margin-bottom: 24px;
  font-weight: 100;
  font-family: "Bricolage Grotesque";
}
p:last-of-type {
  margin-bottom: 0px;
}
p a,
h3 a,
h4 a {
  color: inherit;
  text-decoration: none;
  position: relative;
  cursor: pointer;
}
p a::after,
p a::before,
h3 a::after,
h4 a::after,
h4 a::before,
h3 a::before {
  content: "";
  position: absolute;
  bottom: -2px;
  height: 1px;
  background: currentColor;
  transition-duration: 0.2s;
  user-select: none;
  pointer-events: none;
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
p a::after,
h3 a::after,
h4 a::after {
  right: 0;
  width: 100%;
}
p a::before,
h3 a::before,
h4 a::before {
  left: 0;
  width: 0%;
  transition-delay: 0.1s;
}
p a:hover::after,
h3 a:hover::after,
h4 a:hover::after {
  width: 0%;
  right: 0;
}
p a:hover::before,
h3 a:hover::before,
h4 a:hover::before {
  width: 100%;
  left: 0;
}

p.published {
  font-size: 16px;
  line-height: 20px;
  opacity: 0.8;
  margin-top: 0px;
  display: none;
}
p.excerpt {
  margin-top: 8px;
  font-size: 16px;
  line-height: 23px;
  opacity: 0.8;
  display: none;
}
.half p.excerpt,
.full p.excerpt {
  display: block;
}
.full p.excerpt {
  margin-top: 8px;
  font-size: 18px;
  line-height: 26px;
  opacity: 0.8;
}
.full .event_list_item_text {
  padding: 2px 24px;
}
.half .event_list_item_text {
  padding: 2px 18px;
}

h1 {
  font-family: "Bricolage Grotesque";
  font-size: 56px;
  line-height: 62px;
  font-weight: normal;
  margin-bottom: 46px;
}
h1:only-child {
  margin-bottom: 0px;
}

h2 {
  font-size: 42px;
  line-height: 52px;
  margin-bottom: 18px;
  margin-top: 36px;
  font-family: "Bricolage Grotesque";
  font-weight: 400;
}
h2 .playfair {
  font-weight: normal;
}
h2:first-of-type {
  margin-top: 0px;
}
h3 {
  font-size: 28px;
  margin-bottom: 16px;
  margin-top: 38px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
}
h4 {
  font-size: 22px;
  margin-bottom: 16px;
  margin-top: 18px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
}

header {
  position: fixed;
  z-index: 999;
  width: 100%;
  transition: background 0.2s;
}
header.show {
  background: #fcfaf7;
}
.pageMain header {
  background: #fcfaf7;
}
.header_content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 12px 16px;
  display: flex;
  justify-content: space-between;
}
.header_menu_button {
  background: none;
  border: none;
  font-size: 22px;
  padding: 12px;
  padding-right: 56px;
  cursor: pointer;
  font-family: "Bricolage Grotesque", sans-serif;
  font-weight: 500;

  background-image: url("/graphics/menu_icon.svg");
  background-position: center right 12px;
  background-repeat: no-repeat;
  background-size: 32px;

  background-color: #fcfaf7;
  border-radius: 5px;
}
.header_menu_button.open {
  background-image: url("/graphics/menu_icon_close.svg");
  background-size: 24px;
  background-color: transparent;
}
nav {
  position: absolute;
  right: -380px;
  top: 0;
  width: 380px;
  max-width: 100%;
  height: 100vh;
  padding: 24px 32px;
  padding-top: 124px;
  background: #fcfaf7;
  justify-content: flex-start;
  /* align-items: center; */
  display: flex;
  flex-direction: column;
  gap: 16px;

  background: #ebede6f8;
  background: #faec00;

  /* visibility: hidden;
    user-select: none;
    pointer-events: none; */
  visibility: hidden;
  transition-duration: 0.2s;
}
nav.fullscreen {
  /* background: #FAEC00; */
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 0px;
  padding-bottom: 0px;
  padding: 24px;
  height: 100vh;

  visibility: hidden;
  user-select: none;
  pointer-events: none;
  transition-duration: 0.2s;
}
nav.visible {
  visibility: visible;
  right: 0px;
}
nav.fullscreen.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
nav a {
  font-size: 25px;
  color: inherit;
  padding: 4px 0px;
  font-weight: 500;
}

.header_logo {
  transform: scale(0.95);
  transition-duration: 0.2s;
  opacity: 0;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;

  background-color: #fcfaf7;
  border-radius: 5px;
  padding: 0px 12px;
}
.show .header_logo {
  transform: scale(1);
  opacity: 1;
  pointer-events: all;
}

.header_logo img {
  width: 100%;
  max-width: 180px;
}

/*** OLD HERO ***/
/* #hero{
    position: relative;
    height: 80vh;
    width: 100%;
    overflow: hidden;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}
#hero_graphic{
    width: calc(100% - 3vw);
    max-width: 1600px;
    max-width: 1230px;
}
#hero_content{
    width: 100%;
    max-width: 1230px;
    padding: 24px;
    position: relative;
    transform: translateY(32px);
}
#hero_content p{
    font-size: 56px;
    line-height: 46px;
    color: inherit;
}
#hero_illustration{
    position: absolute;
    width: 100%;
    max-width: 580px;
    right: 0;
    bottom: 0;
    transform: translateY(54px);
} */

/*** NEW HERO ***/
/* #hero{
    position: relative;
    height: 70vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 54px;

    overflow: hidden;

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 54px;
} */
#hero_wrapper {
  width: 100%;
  height: 75vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;

  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;

  overflow: hidden;

  margin-bottom: -50px;
}
#hero {
  width: 100%;
  max-width: 1232px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 54px;
  row-gap: 54px;
  padding: 0px 54px;
  margin-bottom: 0px;
}
#hero_logo_scene {
  grid-column: 2 / 12;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
#hero_logo {
  width: 100%;
}
#hero_scene {
  width: 155%;
  height: 100%;
  position: absolute;
  pointer-events: none;
}
.hero_illustrasjon_elem {
  position: absolute;
  width: 80px;
}
#hero_blokk_liten {
  right: 5%;
  top: -50%;
}
#hero_blokk_stor {
  right: 20%;
  top: -80%;
}
#hero_fugler {
  left: 50%;
  top: -40%;
}
#hero_blokk_slanted {
  display: none;

  width: 150px;
  left: 25%;
  top: -75%;
}
#hero_tbane {
  right: 15%;
  bottom: -60%;
  width: 240px;
}
#hero_tre {
  left: 5%;
  top: 0%;
}
.float {
  animation-name: float;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-25px);
  }
  100% {
    transform: translateY(0px);
  }
}

.drive {
  animation-name: drive;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
@keyframes drive {
  0% {
    transform: translateX(0%);
  }
  35% {
    transform: translateX(-1200%);
  }
  50% {
    transform: translateX(-1200%);
    opacity: 0;
  }
  60% {
    opacity: 0;
    transform: translateX(750%);
  }
  90% {
    opacity: 1;
    transform: translateX(0%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

/*** HERO LOGO STUFF ***/
.hero_letter {
  fill: #292625;
  /* transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1); */
  /* opacity: 0; */
}
#hero_double_l {
  fill: none;
  stroke: #292625;
  stroke-linejoin: bevel;
  stroke-width: 13;

  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
}
#hero_double_l.animate {
  animation-name: drawll;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}

@keyframes drawll {
  0% {
    stroke-dashoffset: 2000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}

#hero_graphic {
  grid-column: 2 / 12;
  width: 100%;
}
#hero_content {
  grid-column: 3 / 12;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
#hero_text {
  position: relative;
  color: inherit;
  margin-bottom: 0px;
  background: #fcfaf7;
  padding: 0px 32px;
  transform: translateX(-32px);
}
/* #hero_text::before{
    content: "";
    position: absolute;
    z-index: 1;
    right: -35px;
    top: 0;
    width: 36px;
    height: 100%;
    background-image: url('/graphics/skullerud_tunnel.svg');
    background-size: contain;
    background-position: left -1px top;
    background-repeat: no-repeat;
}
#hero_text::after{
    content: "";
    position: absolute;
    z-index: 1;
    left: -100px;
    top: 0;
    width: 100px;
    height: 100%;
    background-image: url('/graphics/skullerud_tunnel_exit-v2.svg');
    background-size: contain;
    background-position: left 1px top;
    background-repeat: no-repeat;
} */

.reveal_text_container {
  width: 100%;
  max-width: 1232px;
  margin: 124px auto;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 54px;
  padding: 0px 54px;
}
.reveal_text_container h2 {
  grid-column: 1 / 3;
  font-size: 26px;
  margin-top: -30px;
  font-family: "Bricolage Grotesque";
  font-weight: normal;
}
.reveal_text {
  grid-column: 3 / 12;
  font-size: 36px;
  line-height: 54px;

  font-size: 32px;
  line-height: 52px;
}
.reveal_text span {
  /* opacity: 0.8; */
  transition: opacity 0.1s;
  font-family: "Bricolage Grotesque";
  color: #332a28;
}
.reveal_text span.no-animate {
  opacity: 1 !important;
}
.reveal_text span.reveal {
  opacity: 1 !important;
}

.content_wrapper {
  padding: 0px 16px;
}

.content_wrapper.page {
  padding-top: 90px;
}

.content_wrapper.page > *:nth-child(2) {
  margin-top: 0px;
}

.content_block {
  width: 100%;
  max-width: 1232px;
  margin: 124px auto;
  border-radius: 5px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.content_block.normal {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 54px;
  grid-auto-flow: dense;
  padding-left: 54px;
  padding-right: 54px;
}
.content_block.full {
  max-width: 100%;
}
.content_block_inner {
  width: 100%;
  max-width: 1232px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 54px;
  grid-auto-flow: dense;
  padding-left: 54px;
  padding-right: 54px;
}
.content_block_text {
  grid-column: 2 / 10;
  font-weight: 100;
}
.content_block_text h2:only-child {
  margin-bottom: 0px !important;
}
.accordion {
  grid-column: 2 / 11;
}
.content_block_text h3:first-child {
  margin-top: 0px !important;
}
.content_block.has_image .content_block_text {
  grid-column: 1 / 7;
}
.content_block.has_image.text_right .content_block_text {
  grid-column: 7 / 13;
}
.content_block.has_image .content_block_text {
  padding: 16px 0px;
}
.content_block.has_image.bg .content_block_text {
  padding: 16px 0px;
}
.content_block.bg {
  padding-top: 54px;
  padding-bottom: 54px;
}
.content_block_image {
  position: relative;
  grid-column: 7 / 13;
}
.content_block.has_image.text_right .content_block_image {
  grid-column: 1 / 7;
}
.content_block_image img {
  width: 100%;
  border-radius: 3px;
  /* position: sticky;
    top: 16px; */
}
.content_block_image img.thumb {
  width: 70px;
  height: 60px;
  object-fit: cover;
  object-position: center;
  border-radius: 3px;
  cursor: pointer;
  opacity: 0.5;
}
.content_block_image img.thumb:hover {
  opacity: 1 !important;
}
.content_block_buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 32px;
  background: #fcfaf7;
  padding: 0px 16px;
  transform: translateX(-16px);
}

/*****
*****
*****
*****
*****
*****
*****
*****
*****
BUTTONS
*****
*****
*****
*****
*****
*****
*****
*****
*****/

/* .button_container{
    width: 100%;
    max-width: 1124px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    margin-top: -54px;
}
.section_block .button_container{
    justify-content: flex-start;
    margin-top: 0px;
}
.content_block .button_container{
    justify-content: flex-start;
    margin-top: 0px;
} */

.button_container {
  width: 100%;
  max-width: 1232px;
  margin: 0 auto;
  padding-left: 54px;
  padding-right: 54px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 54px;
  grid-auto-flow: dense;
  margin-top: -54px;
  /* background: blueviolet; */
}
.button_container .button {
  grid-column: 2 / 12;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.section_block .button_container {
  margin-top: 0px;
}
.content_block .button_container {
  /* background: red; */
  display: flex;
  justify-content: flex-start;
  margin-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
}
#hero_content .button_container {
  display: flex;
  justify-content: flex-start;
  margin-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.btn {
  padding: 22px 24px;
  background: transparent;
  color: inherit;
  font-size: 20px;
  border: none;
  cursor: pointer;
  position: relative;
  display: flex;
  justify-content: space-around;
  gap: 10px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  font-style: normal;
  text-decoration: none;
}
.btn svg.btn_arrow {
  width: 50px;
  transition: color 0.5s;
  transition-timing-function: ease-out;
}
.btn svg.effect {
  position: absolute;
  left: 0;
  top: 4px;
  width: 100%;
  height: 100%;
}
.btn svg.alt_btn_path {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
.btn svg.main_btn_path {
  width: 100%;
  z-index: 2;
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
.btn span {
  position: relative;
  z-index: 2;
}
.btn_path {
  color: inherit;
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: stroke-dashoffset 1.25s;
  transition-timing-function: ease-out;
}
.btn_path_scribble {
  color: inherit;
  stroke-dasharray: 5000;
  stroke-dashoffset: 5000;
  transition: stroke-dashoffset 1s;
  transition-timing-function: ease-out;
}
.btn-secondary .btn_path_under {
  z-index: 1;
}
.btn.btn-secondary:hover .btn_path {
  z-index: 2;
  stroke-dashoffset: 0;
}
.btn.btn-secondary:hover .btn_arrow {
  color: #70adff;
}
.btn.btn-primary:hover .btn_path_scribble {
  stroke-dashoffset: 0;
}
.btn.btn-tertiary {
  padding-left: 0px;
  padding-right: 0px;
}
.btn.btn-tertiary .btn_arrow {
  transition: all 0.2s;
}
.btn.btn-tertiary:hover .btn_arrow {
  transform: translateX(5px);
  color: #00c37e;
}
/*****
*****
*****
*****
*****
*****
*****
*****
*****
BUTTONS
*****
*****
*****
*****
*****
*****
*****
*****
*****/

.section_block {
  width: 100%;
  max-width: 1232px;
  margin: 124px auto;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 54px;
  position: relative;
}
.section_block.bg {
  padding: 54px 0px;
}
.section_block.full {
  max-width: 100%;
}
.section_block h2 {
  width: 100%;
  max-width: 1232px;
  margin: 0 auto;
  /* font-size: 30px; */
  padding: 0px 54px;
}
.section_block .content_block {
  margin: 0 auto;
}
.section_block .content_block h2 {
  padding: 0px 0px;
  margin-bottom: 18px;
}
.section_illustration {
  position: absolute;
  max-width: 100px;
  max-height: 100px;
}
.section_illustration.top-left {
  top: 0px;
  left: 0px;
}
.section_illustration.top-right {
  top: 0px;
  right: 0px;
}
.section_illustration.mid-left {
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
}
.section_illustration.mid-right {
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
}
.section_illustration.bot-left {
  bottom: 0px;
  left: 0px;
}
.section_illustration.bot-right {
  bottom: 0px;
  right: 0px;
}

.bg .section_illustration.top-left {
  top: 32px;
  left: 32px;
}
.bg .section_illustration.top-right {
  top: 32px;
  right: 32px;
}
.bg .section_illustration.mid-left {
  top: 50%;
  left: 32px;
  transform: translateY(-50%);
}
.bg .section_illustration.mid-right {
  top: 50%;
  right: 32px;
  transform: translateY(-50%);
}
.bg .section_illustration.bot-left {
  bottom: 32px;
  left: 32px;
}
.bg .section_illustration.bot-right {
  bottom: 32px;
  right: 32px;
}

.accordion_elem {
  position: relative;
}
/* .accordion_elem.open{
    margin: 12px 0px;
} */
.accordion_elem:first-of-type.open {
  margin-top: 0px;
}
.accordion_elem .accordion_header {
  position: relative;
  z-index: 2;
  margin: 0px;
  padding: 24px 0px;
  border-top: 1px solid #d3d3d3;
  cursor: pointer;
  background-image: url("/graphics/vertical_arrow.svg");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: 22px;
  font-weight: 500;
  padding-right: 32px;
  user-select: none;
}
.accordion_elem.open::before {
  position: absolute;
  content: "";
  width: calc(100% + 48px);
  height: 100%;
  left: -24px;
  background-color: var(--accordion-bg);
  user-select: none;
  pointer-events: none;
  border-radius: 5px;
}
.accordion_elem.open + .accordion_elem .accordion_header {
  border-top: 1px solid transparent;
}
.accordion_elem.open .accordion_header {
  background-image: url("/graphics/vertical_arrow_up.svg");
  border-top: 1px solid transparent;
}
.accordion_elem .accordion_text {
  position: relative;
  z-index: 2;
  display: none;
  padding-bottom: 24px;
}
.accordion_elem.open .accordion_text {
  display: block;
}

.scroll_text {
  width: calc(100% + 32px);
  transform: translateX(-16px);
  margin: 176px auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.scroll_text p {
  font-size: 5.5vw;
  line-height: 6.5vw;
  text-wrap: nowrap;
  font-family: sans-serif;
  position: relative;
  white-space: nowrap;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  font-style: normal;
  margin-bottom: 0px;
  letter-spacing: -2px;
}

.image_block {
  display: block;
  width: 100%;
  max-width: 1232px;
  margin: 0 auto;
}
.section_block .image_block {
  border-radius: 3px;
  width: calc(100% - 108px);
}
.image_block.img_full {
  width: calc(100% + 32px);
  max-width: calc(100% + 32px);
  transform: translateX(-16px);
}
.section_block .image_block.img_full {
  width: calc(100% - 108px);
  max-width: calc(100% - 108px);
  transform: translateX(0px);
}
.image_block.crop {
  object-fit: cover;
  object-position: center;
}
.image_block.ultrawide {
  aspect-ratio: 21 / 9;
}
.image_block.wide {
  aspect-ratio: 16 / 9;
}
.image_block.regular {
  aspect-ratio: 4 / 3;
}
.image_block.square {
  aspect-ratio: 1 / 1;
}
.image_block.tall {
  aspect-ratio: 9 / 16;
}

.contact_block {
  grid-column: 2 / 12;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 32px;
}
.contact_block.one,
.contact_block.two,
.contact_block.three {
  grid-column: 2 / 12;
}
/* .bg .contact_block.one, .bg .contact_block.two, .bg .contact_block.three{
    grid-column: 1 / 13;
} */

.contact_block.one .contact_card,
.contact_block.two .contact_card {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 24px;
}
.contact_block.one .contact_card img,
.contact_block.two .contact_card img {
  width: 50%;
}
.contact_block.one .contact_card .text,
.contact_block.two .contact_card .text {
  width: 60%;
}
.contact_block.one .contact_card {
  grid-column: span 6;
}
.contact_block.two .contact_card {
  grid-column: span 6;
}
.contact_block.three .contact_card {
  grid-column: span 4;
}
.contact_card {
  grid-column: span 3;
}
.contact_card img {
  width: 100%;
  border-radius: 3px;
  aspect-ratio: 2/2.5;
  object-fit: cover;
}
.contact_card h3 {
  font-size: 20px;
  font-family: "Bricolage Grotesque";
  margin-top: 8px;
  margin-bottom: 4px;
}
.contact_card p {
  font-family: "Bricolage Grotesque";
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 2px;
}

footer {
  width: 100%;
  margin: 0px auto;
  margin-top: 156px;
  padding: 92px 0px;
  background: #383029;
  font-family: "Bricolage Grotesque";
  color: #fcfaf7;
  transition: 0.2s;
}
footer.menu_open {
  transform: translateX(-380px);
  opacity: 0.75;
}
footer p,
footer h2,
footer h3,
footer h4,
footer a {
  font-family: "Bricolage Grotesque";
  color: inherit;
}
footer h3 {
  margin-top: 0px;
}
.footer_main {
  width: 100%;
  max-width: 1232px;
  margin: 0px auto;
  padding: 24px 54px;
  margin-bottom: 24px;
  position: relative;
}
.footer_content {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  gap: 32px;
}
.footer_credit {
  width: 50%;
}
.footer_credit .image {
  margin: 24px 0px;
}
.footer_newsletter {
  width: 50%;
}
.footer_newsletter h4:first-child,
.footer_newsletter h3:first-child,
.footer_newsletter h2:first-child {
  margin-top: 4px !important;
}
footer .copy {
  max-width: 1232px;
  margin: 0px auto;
  padding: 0px 54px;
  text-align: center;
  font-size: 16px;
}
#footer_logo {
  width: 180px;
  margin-bottom: 54px;
}
#footer_illustration {
  position: absolute;
  max-width: 50%;
  max-height: 125px;
  right: 54px;
  bottom: -108px;
}

.dll {
  display: inline-block;
  color: transparent;
  background-image: url("/graphics/ll-2.svg");
  background-position: center;
  background-repeat: no-repeat;
  transform: translateY(-3%) scaleY(1.1);
  transform-origin: bottom;
}

.form_group {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#newsletter {
  display: flex;
  gap: 0px;
  margin-top: 16px;
}

#newsletter input {
  padding: 12px 20px;
  background: transparent;
  outline: none;
  border: none;
  font-size: 18px;
  font-family: "Bricolage Grotesque";
  font-weight: 100;
  color: inherit;
  border: 1px solid;
}
#newsletter input::placeholder {
  color: inherit;
}
#newsletter button {
  padding: 12px 20px;
  background: transparent;
  outline: none;
  border: none;
  font-size: 18px;
  font-family: "Bricolage Grotesque";
  font-weight: bold;
  color: inherit;
  cursor: pointer;
  border: 1px solid;
  border-top-right-radius: 25px;
  border-bottom-right-radius: 25px;
  display: flex;
  gap: 12px;
}
#newsletter button svg {
  width: 55px;
  height: 24px;
  fill: currentColor;
}
#newsletter button path {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 2.2px;
}

span.playfair {
  font-family: "Playfair Display";
}
span.bricolage {
  font-family: "Bricolage Grotesque";
}
span.baskervville {
  font-family: "Libre Baskerville";
}
span.text-big {
  font-size: 24px;
  line-height: 34px;
}
span.text-big span.playfair {
  font-size: 26px;
  line-height: 34px;
}
span.text-huge {
  font-size: 52px;
  line-height: 62px;
}

.text_block {
  width: 100%;
  max-width: 1232px;
  margin: 124px auto;
  padding-left: 54px;
  padding-right: 54px;
  display: flex;
  flex-wrap: wrap;
}
.section_block .text_block {
  margin: 0px auto;
}

h2.multi_title {
  width: 100%;
  margin-bottom: 32px;
}
.content_block_text_multi {
  width: 50%;
}
.content_block_text_multi h2 {
  padding: 0px 0px;
  margin-bottom: 18px;
}
.content_block_text_multi:first-of-type {
  padding-right: 27px;
}
.content_block_text_multi:last-of-type {
  padding-left: 27px;
}

.sixty-forty .content_block_text_multi:first-of-type {
  width: 60%;
}
.sixty-forty .content_block_text_multi:last-of-type {
  width: 40%;
}
.forty-sixty .content_block_text_multi:first-of-type {
  width: 40%;
}
.forty-sixty .content_block_text_multi:last-of-type {
  width: 60%;
}
.seventy-thirty .content_block_text_multi:first-of-type {
  width: 70%;
}
.seventy-thirty .content_block_text_multi:last-of-type {
  width: 30%;
}
.thirty-seventy .content_block_text_multi:first-of-type {
  width: 30%;
}
.thirty-seventy .content_block_text_multi:last-of-type {
  width: 70%;
}
/* .content_block_text_multi img{
    width: 100% !important;
    border-radius: 3px;
}
*/
.content_block_text_multi figure {
  margin: 24px 0px;
}
.content_block_text_multi img {
  max-width: 100%;
  height: auto;
}

/**** NEWSLETTER BLOCK FREEFORM START ****/
.newsletter_block {
  color: #292725;
}
.freeform-form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  font-family: "Bricolage Grotesque" !important;
  margin-bottom: 54px;
}
footer .freeform-form {
  margin-top: 24px !important;
  color: white;
}
.freeform-row {
  /* width: 100% !important; */
  display: flex;
  flex-direction: row;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  flex-wrap: wrap;
  gap: 24px;
  margin-bottom: 24px !important;
}
.freeform-row [class*="freeform-col-"] input {
  padding: 12px 0px !important;
  background: transparent !important;
  border-radius: 0 !important;
  outline: none !important;
  border: none !important;
  font-size: 20px !important;
  font-family: "Bricolage Grotesque" !important;
  font-weight: 400 !important;
  color: inherit !important;

  border-bottom: 1px solid #292725 !important;

  background: transparent !important;
  background-color: transparent !important;
  color: #292725 !important;
  border-radius: 0px !important;
  width: 100% !important;
  max-width: auto !important;
}
footer .freeform-row [class*="freeform-col-"] input {
  border-bottom: 1px solid #fcfaf7 !important;
  color: #fcfaf7 !important;
}
.freeform-col-4 {
  width: 100% !important;
  min-width: 300px !important;
  max-width: 300px !important;
  display: none;
}
footer .freeform-col-4 {
  width: 100% !important;
  min-width: 300px !important;
  max-width: 320px !important;
  display: none;
}

p.article_date {
  margin-bottom: -54px;
  font-weight: 300;
  font-size: 18px;
  /* color: ; */
}

.freeform-row [class*="freeform-col-"] .freeform-label.freeform-required:after {
  color: #ea7aa3 !important;
}
.newsletter_block.tel .freeform-col-4[data-field-container="tel"] {
  display: block;
}
.freeform-col-4[data-field-container="navn"] {
  display: block;
}
.freeform-col-4[data-field-container="eMail"] {
  display: block;
}

.newsletter_block .freeform-row [class*="freeform-col-"] .freeform-label {
  color: #292725 !important;
  margin-bottom: 0px !important;
  font-family: "Bricolage Grotesque" !important;
  font-weight: 500 !important;
}
footer
  .newsletter_block
  .freeform-row
  [class*="freeform-col-"]
  .freeform-label {
  color: #fcfaf7 !important;
}

.freeform-fieldtype-text,
.freeform-fieldtype-email,
.freeform-fieldtype-tel {
  padding: 0px !important;
}
input.freeform-input::placeholder {
  color: inherit !important;
  font-size: 20px !important;
  color: #292725 !important;
  font-weight: 300 !important;
}
footer input.freeform-input::placeholder {
  color: #fcfaf7 !important;
}
.freeform-form [data-freeform-controls] {
  margin-top: 0px !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.freeform-form button {
  padding: 16px 0px !important;
  background: transparent !important;
  outline: none !important;
  border: none !important;
  font-size: 20px !important;
  font-family: "Bricolage Grotesque" !important;
  font-weight: 500 !important;
  color: inherit !important;
  cursor: pointer !important;
  border-radius: 0px !important;
  line-height: normal !important;
  padding-right: 52px !important;
  background-image: url("/graphics/skullerud_arrow_short.svg") !important;
  background-position: right 8px center !important;
  background-size: 34px !important;
  background-repeat: no-repeat !important;
  transition-property: all !important;
  transition-duration: 0.2s !important;
  margin-left: 0px !important;
  transform: translateX(-10px) !important;
}
.freeform-form button:hover {
  transition-duration: 0.2s !important;
  background-position: right 0px center !important;
}
footer .freeform-form button {
  background-image: url("/graphics/skullerud_arrow_light_short.svg") !important;
}
[data-freeform-controls] {
  justify-content: flex-start !important;
}
.freeform-form-success,
.freeform-form-errors {
  position: absolute;
  bottom: -90px;
  max-width: 320px;
  color: #292725 !important;
  border: none !important;
}
.freeform-form-success {
  background: #00c37e !important;
  color: #292725 !important;
}
.freeform-form-errors {
  background: #ff96bc !important;
  color: #292725 !important;
}
ul.freeform-errors {
  position: absolute;
  top: -30px;
  display: none !important;
}
.freeform-row [class*="freeform-col-"] .freeform-errors > li {
  color: inherit !important;
  color: #292725 !important;
}
.freeform-form-success p,
.freeform-form-errors p {
  font-size: 16px !important;
  color: #292725 !important;
}
/**** NEWSLETTER BLOCK FREEFORM END ****/

.full.bg {
  padding: 54px 0px;
}

.table {
  width: 100%;
  margin: 32px 0px;
}
.table table {
  width: 100%;
  font-family: "Bricolage Grotesque", sans-serif;
}
.table table tr {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0px;
  border-bottom: 1px solid #e0e0e0;
}
.table table td {
  flex: 1;
  font-size: 20px;
}
.table table th {
  flex: 1;
  font-weight: 600;
  text-align: left;
  font-size: 22px;
}
ul,
ol {
  font-size: 20px;
  margin: 32px 0px;
  padding-left: 20px;
}
ul li,
ol li {
  font-family: "Bricolage Grotesque";
  margin-bottom: 12px;
}
.tag_list_container {
  margin-bottom: 24px;
}
.tag_list {
  display: flex;
  gap: 6px;
  margin-bottom: 24px;
}
#event_filter {
  font-size: 18px;
}
.tag {
  display: inline-block;
  padding: 4px 12px;
  background: #fcfaf7;
  color: #292625;
  font-size: 16px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  border: 1px solid #292625;
  border-radius: 25px;
  user-select: none;
}
.tag.tag_free {
  background: #00c37e;
  border: 1px solid #00c37e;
}
.tag_btn {
  cursor: pointer;
  padding: 8px 18px;
}
.tag_btn:hover {
  background: #2926252d;
}
.tag_btn.active {
  background: #292625;
  color: #fcfaf7;
}

.event_block {
  grid-column: 1 / 13;
}
.event_block h2 {
  padding: 0px 54px;
  margin-bottom: 44px;
}
.section_block .content_block .event_block h2 {
  padding: 0px 54px;
  margin-bottom: 44px;
}
.event_list {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  grid-auto-flow: dense;
  padding: 0px 54px;
  margin: 24px 0px;
}
.event_list_item {
  grid-column: span 4;
  color: inherit;
  text-decoration: none;

  /* padding: 8px; */
  border-radius: 5px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  position: relative;

  transition-duration: 0.15s;
  /* border: 2px solid #00c37f00; */
}
.half .event_list_item {
  grid-column: span 6;

  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.full .event_list_item {
  grid-column: span 12;

  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.event_list_item:hover h3 {
  text-decoration: underline;
}
.event_list_item_image {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 3px;
  object-fit: cover;
  object-position: center;
}
.half .event_list_item_image {
  width: 50%;
  aspect-ratio: 1.5/1.5;
}
.full .event_list_item_image {
  width: 40%;
  aspect-ratio: 1.5/1;
}
.event_list_item_noimage {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 3px;
  background: #ebede6;
  position: relative;
}
.half .event_list_item_noimage {
  width: 50%;
  aspect-ratio: 1.5/1;
}
.full .event_list_item_noimage {
  width: 50%;
  aspect-ratio: 2/1;
}
.event_list_item_noimage::before {
  position: absolute;
  content: "Bilde mangler";
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-family: "Bricolage Grotesque";
  font-weight: 100;
  opacity: 0.5;
}
.event_list_item h3,
.event_list_item h4 {
  margin: 12px 0px;
  margin-bottom: 0px;
}
.event_list_item_header {
  background: #ebf0f7;
  background: #00c37e;
  background: #faec00;
  background: #ff96bc;
  padding: 8px 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding-top: 15px;

  border-radius: 3px;
  /* border-radius: 0px 5px 5px 0px; */

  position: absolute;
  z-index: 2;
  left: -8px;
  top: 16px;
  /* transform: translateX(-50%) translateY(-8px); */

  /* left: 50%;
    transform: translateX(-50%) translateY(-8px); */
}
.event_list_item_header p {
  font-size: 16px;
  text-align: center;
  line-height: 16px;
  font-weight: 600;
  /* color: #00C37E; */
  /* color: #70ADFF; */
  /* color: white; */
}
.event_list_item_header p .time_big {
  font-size: 34px;
  font-weight: 300;
}
.event_list_item_header .time_split {
  font-size: 30px;
  font-weight: bold;
  padding-bottom: 10px;
  /* color: #00C37E; */
  /* color: #70ADFF; */
  color: white;
}
.event_list_item p {
  margin-bottom: 0px;
}
.event_list_item_text {
}
.event_list_item_arrow {
  width: 30px;
}

.event_image {
  display: block;
  width: 100%;
  max-width: 1232px;
  margin: 0 auto;
  aspect-ratio: 20/10;
  margin-bottom: 54px;
  object-fit: cover;
  object-position: center;
  border-radius: 3px;
}

.event_content_block {
  width: 100%;
  max-width: 1232px;
  margin: 32px auto;
  margin-bottom: -54px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-flow: dense;
  grid-column-gap: 54px;
  padding-left: 54px;
  padding-right: 54px;
}

.event_content_block_text {
  grid-column: 2 / 11;
  padding: 4px 18px;
  background: #ebf0f7;
  background: #f2eee9;
  border-radius: 3px;
}

.newsletter_block {
  grid-column: 2 / 11;
  position: relative;
}

.event_content_block p {
  font-size: 22px;
  display: flex;
  /* justify-content: space-between; */
  margin-bottom: 0px !important;
  padding: 10px 0px;
  font-weight: 400;
  border-bottom: 1px solid #332a282b;

  /* font-weight: 300; */
}
.event_content_block p:last-of-type {
  border-bottom: none;
}
.no_wrap {
  white-space: nowrap;
}
.event_content_block p span.when_where {
  width: 115px;
  min-width: 115px;
  max-width: 115px;
  letter-spacing: 0.2px;
}

.video_block {
  grid-column: 1 / 13;
  border-radius: 3px;
  overflow: hidden;
}
.video_block.sixteen_nine {
  aspect-ratio: 16/9;
}
.video_block.four_three {
  aspect-ratio: 4/3;
}
.video_block.three_two {
  aspect-ratio: 3/2;
}
.video_block.one_one {
  aspect-ratio: 1/1;
}
.video_block.nine_sixteen {
  aspect-ratio: 9/16;
}

p.event_content_block_time {
  /* font-weight: 500; */
  margin-bottom: 12px;
}

.event_content_title {
  width: 100%;
  max-width: 1232px;
  margin: 54px auto;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-flow: dense;
  grid-column-gap: 54px;
  padding-left: 54px;
  padding-right: 54px;
}
.event_content_title > * {
  grid-column: 2 / 12;
  /* margin-bottom: 0px; */
}
.article_title {
  width: 100%;
  max-width: 1232px;
  margin: 54px auto;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-flow: dense;
  grid-column-gap: 54px;
  padding-left: 54px;
  padding-right: 54px;
}
.article_title.neg_margin {
  margin-bottom: -54px;
}
.article_title > * {
  grid-column: 2 / 12;
  /* margin-bottom: 0px; */
}

.planprogram {
  grid-column: 2 / 12;
  position: relative;
}
.planprogram_fase {
  /* background: greenyellow; */
  display: flex;
  flex-direction: column;
  gap: 56px;
  position: relative;
}
.planprogram_fase.closed {
  display: none;
}
.planprogram_fase::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -24px;
  width: 125px;
  height: calc(100% + 24px);
  z-index: 1;
  background-size: 100%;
  /* background-position: center top; */
  /* background-repeat: no-repeat; */
}
.planprogram_fase.line_blue::before {
  background-image: url("/graphics/Skullerud-sti-improved.png");
}
.planprogram_fase.line_green::before {
  background-image: url("/graphics/Skullerud-sti-improved.png");
}
.planprogram_fase.line_red::before {
  background-image: url("/graphics/Skullerud-sti-improved.png");
}
.planprogram_element {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 230px;
}
.planprogram_element.done {
}
.planprogram_text h4,
.planprogram_text h3 {
  font-size: 20px;
  margin: 0px 0px;
  margin-bottom: 6px;
}
.planprogram_text p {
  font-size: 18px;
  line-height: 26px;
}
.planprogram_element:nth-of-type(even) {
  flex-direction: row-reverse;
}
.planprogram_content {
  flex: 1;
}
.planprogram_content p {
  font-weight: 400;
}
.planprogram_illustration_container {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.planprogram_header:first-of-type {
  margin-top: 0px;
}
.planprogram_header {
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 56px;
  padding: 12px 0px;
  margin-top: 56px;
  user-select: none;
  font-size: 32px;
  font-weight: 500;
  cursor: pointer;
  text-underline-offset: 10px;
}
.planprogram_header.collapsed {
  font-weight: 300;
  margin-bottom: -36px;
}
.planprogram_header:last-of-type.collapsed {
  margin-bottom: 0px;
}
.planprogram_header:hover {
  text-decoration: underline;
}
.planprogram_header .title_arrow {
  display: inline-block;
  width: 50px;
  height: 18px;
  background-image: url("/graphics/vertical_arrow_up.svg");
  background-size: 24px;
  background-position: center;
  background-repeat: no-repeat;
}
.planprogram_header.collapsed .title_arrow {
  background-image: url("/graphics/vertical_arrow.svg");
}
.planprogram_subheader {
  margin: 0px 0px;
  margin-bottom: 6px;
  font-weight: 600;
}
.planprogram_illustration {
  width: 150px;
  height: 90px;
}
.imagegrid {
  width: 100%;
  max-width: 1232px;
  margin: 124px auto;
  display: grid;
  gap: 54px;
  padding-left: 54px;
  padding-right: 54px;
}
.section_block .imagegrid {
  margin: 54px auto;
}

.imagegrid.col-4 {
  grid-template-columns: repeat(4, 1fr);
}
.imagegrid.col-3 {
  grid-template-columns: repeat(3, 1fr);
}
.imagegrid.col-2 {
  grid-template-columns: repeat(2, 1fr);
}
.imagegrid.col-1 {
  grid-template-columns: repeat(1, 1fr);
}

.imagegrid .imagegrid_image {
  max-width: 100%;
  border-radius: 3px;
}

.imagegrid .imagegrid_image.span-1 {
  grid-column: span 1;
}
.imagegrid .imagegrid_image.span-2 {
  grid-column: span 2;
}
.imagegrid .imagegrid_image.span-3 {
  grid-column: span 3;
}
.imagegrid .imagegrid_image.span-4 {
  grid-column: span 4;
}

.first_element {
  margin-top: 124px !important;
}
.header_search {
  margin-bottom: 36px;
}
.input_container {
  position: relative;
}
.header_search_input {
  align-items: center;
  padding: 16px 0px;
  /* background: #fcfaf7; */
  background: transparent;
  outline: none;
  border: none;
  border-radius: 3px;
  border-radius: 0px;
  border-bottom: 2px solid #332a28;
  font-size: 20px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  color: #332a28;

  width: 100%;
  padding-right: 52px;
}
.header_search label {
  display: block;
  color: #292625;
  font-size: 16px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  margin-bottom: 6px;
}
.header_search button {
  position: absolute;
  right: 0px;
  /* bottom: 4px; */
  bottom: 0px;
  outline: none;
  border: none;
  /* height: calc(100% - 8px); */
  height: 100%;
  background: none;
  width: 55px;
  cursor: pointer;
  /* border-left: 1px solid #29262527; */
}
.header_search button img {
  width: 32px;
  height: 32px;
}

.content_block_text.tab {
  margin-bottom: 24px;
}
.table_block {
  grid-column: 2 / 12;
  /* margin: -32px 0px; */
}
.table_block .table_row {
  display: flex;
  gap: 24px;
  border-bottom: 1px solid #e0e0e0;
  padding: 14px 0px;
}
.table_block.isDone .table_row {
  padding-left: 32px;
}
.table_block .table_row.header {
  margin-top: 32px;
}
.table_block .table_row.done {
  position: relative;
}
.table_block .table_row.done::before {
  content: "✔";
  content: "✓";
  position: absolute;
  left: 0px;
  top: 10px;
  font-size: 30px;
  padding-right: 8px;
  color: #00c37e;
  color: #01af71;
}
.table_block .table_row.header:first-of-type {
  margin-top: 0px;
}
.table_block .table_row:last-of-type {
  border-bottom: none;
}
.table_block .table_row .table_column {
  flex: 1;
}
.table_block .table_row .table_column p {
  font-weight: 400;
}
.table_block .table_row.header .table_column > * {
  font-size: 22px;
  font-weight: 500;
}

.search_filter {
  margin-top: 24px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.search_filter p {
  font-weight: 500;
}
.search_filter button {
  padding: 6px 12px;
  background: transparent;
  outline: none;
  border: none;
  font-size: 18px;
  font-family: "Bricolage Grotesque";
  font-weight: 500;
  color: inherit;
  cursor: pointer;
  border: 2px solid #292625;
  border-radius: 25px;
  line-height: normal;
}
.search_filter button.active {
  background: #292625;
  color: #fcfaf7;
}
.search_filter button:hover {
  background: #2926252d;
}

.last_section {
  margin-bottom: 0px !important;
  padding-bottom: 132px !important;
}

.illustrations_mob {
  display: none;
  width: 100%;
  flex-direction: row;
  justify-content: flex-start;
  gap: 32px;
}
.illustrations_mob img {
  width: 80px;
  max-width: 120px;
  max-height: 80px;
}
.illustrations_mob.mid {
  justify-content: center;
}
.illustrations_mob.right {
  justify-content: flex-end;
}
.illustrations_mob.space {
  justify-content: space-between;
}

.content_block_text figure {
  margin: 54px 0px;
}

.content_block_text figure img {
  max-width: 100%;
  aspect-ratio: auto;
  width: 100%;
  height: auto;
}

@media only screen and (max-height: 1308px) {
  #hero_wrapper {
    height: 80vh;
  }
}

@media only screen and (max-width: 1408px) {
  #hero_scene {
    width: 100%;
  }

  #hero {
    row-gap: 36px;
  }
  #hero_tbane {
    right: 10%;
    bottom: -52%;
    width: 200px;
  }
  #hero_fugler {
    left: 30%;
    top: -50%;
  }
  #hero_blokk_stor {
    right: 20%;
    top: -75%;
  }
  #hero_blokk_liten {
    right: 8%;
    top: -55%;
  }
  #hero_tre {
    left: -12%;
    top: 20%;
    width: 72px;
  }
}

@media only screen and (max-width: 908px) {
  p.article_date {
    font-size: 16px;
  }

  .section_block .content_block .event_block h2 {
    padding: 0px 0px;
    margin-bottom: 32px;
  }

  .illustrations_mob {
    display: flex;
  }

  .table_block.isDone .table_row {
    padding-left: 20px;
  }

  .table_block .table_row.done::before {
    top: 14px;
    font-size: 18px;
    padding-right: 0px;
  }

  p.excerpt {
    display: block;
  }

  .event_block h2 {
    padding: 0px 0px;
    margin-bottom: 32px;
  }

  header {
    background: #fcfaf7;
  }

  .accordion_elem .accordion_header {
    padding: 18px 0px;
    background-size: 18px;
    padding-right: 32px;
  }

  .last_section {
    margin-bottom: -24px !important;
    padding-bottom: 92px !important;
  }

  .newsletter_block {
    grid-column: 1 / 13;
  }

  .freeform-row {
    margin-bottom: 24px !important;
  }
  .freeform-row [class*="freeform-col-"] input,
  .freeform-row [class*="freeform-col-"] textarea,
  .freeform-row [class*="freeform-col-"] select {
    font-size: 18px !important;
  }
  input.freeform-input::placeholder {
    font-size: 18px !important;
  }
  .freeform-form button {
    font-size: 18px !important;
    background-size: 30px !important;
  }
  .freeform-row [class*="freeform-col-"] .freeform-label {
    font-size: 14px !important;
  }

  .article_title.neg_margin {
    margin-bottom: -24px;
  }

  .planprogram_header .title_arrow {
    width: 44px;
    height: 16px;
    background-size: 20px;
  }
  .planprogram_header {
    font-size: 26px;
    margin-bottom: 32px;
    text-align: left;
  }
  .planprogram_header:hover {
    text-decoration: none;
  }
  .planprogram_fase {
    gap: 40px;
  }
  .planprogram_element {
    align-items: flex-start;
    gap: 0px;
  }
  .planprogram_illustration_container {
    display: none;
  }
  .planprogram_fase::before {
    left: auto;
    right: 8px;
    top: 0;
    width: 90px;
    transform: translateX(0%);
    height: calc(100%);
  }
  .planprogram_text h4,
  .planprogram_text h3 {
    font-size: 17px;
  }
  .planprogram_text p {
    font-size: 15px;
    line-height: 22px;
  }
  .planprogram_content {
    max-width: 260px;
  }
  .planprogram_element:nth-of-type(even) {
    flex-direction: row;
  }

  .event_list_item_header {
    padding: 6px 10px;
    padding-top: 10px;
  }
  .event_list_item_header p {
    font-size: 16px;
  }
  .event_list_item_header p .time_big {
    font-size: 28px;
  }

  .table_block .table_row {
    gap: 10px;
  }

  .table_block .table_row.header .table_column > * {
    font-size: 16px;
  }

  .table_block .table_row .table_column p {
    font-size: 14px;
    line-height: 22px;
  }

  .content_block_text.tab {
    margin-bottom: 0px;
  }

  .table_block .table_row:first-of-type {
    margin-top: 0px;
  }

  nav {
    padding-top: 116px;
  }

  .header_search {
    margin-bottom: 32px;
  }
  .header_search label {
    margin-bottom: 0px;
  }

  .button_container {
    display: flex;
    flex-direction: column;
    padding-left: 0px;
    padding-right: 0px;
  }

  .btn {
    padding: 18px 20px;
    font-size: 16px;
    gap: 8px;
  }

  .btn svg.effect {
    top: 3px;
  }

  .first_element {
    margin-top: 64px !important;
  }

  .content_block_image img.thumb {
    width: 60px;
    height: 50px;
  }

  .content_block.bg {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .content_block.has_image .content_block_text {
    padding: 0px 0px;
  }
  .content_block.has_image.bg .content_block_text {
    padding: 0px 0px;
  }

  .dll {
    background-image: url("/graphics/ll.svg");
  }

  nav a {
    font-size: 22px;
  }
  .header_menu_button span {
    display: none;
  }
  .header_menu_button {
    font-size: 18px;
    padding-right: 42px;
    background-size: 30px;
    width: 48px;
    max-width: 48px;
    height: 48px;
  }
  .header_menu_button.open {
    background-image: url("/graphics/menu_icon_close.svg");
    padding-right: 36px;
    background-size: 22px;
  }

  .section_block .image_block {
    width: 100%;
  }

  .section_block .image_block.img_full {
    width: 100%;
    max-width: 100%;
  }

  .event_list {
    padding: 0px 0px;
    grid-column-gap: 16px;
  }

  .event_image {
    margin-bottom: 32px;
  }

  .event_list_item_text {
    padding: 0px 0px;
  }
  .half .event_list_item_text {
    padding: 0px 0px;
  }
  .full .event_list_item_text {
    padding: 0px 0px;
  }

  .event_content_title {
    grid-column-gap: 0px;
    padding-left: 0px;
    padding-right: 0px;
    margin: 24px auto;
  }

  .event_content_title > * {
    grid-column: 1 / 13;
  }

  .article_title {
    grid-column-gap: 0px;
    padding-left: 0px;
    padding-right: 0px;
  }

  .article_title > * {
    grid-column: 1 / 13;
  }

  .event_content_block p span.when_where {
    width: 75px;
    min-width: 75px;
    max-width: 75px;
  }

  .content_wrapper.page {
    padding-top: 66px;
  }
  .header_logo {
    background-color: transparent;
    border-radius: 0px;
    padding: 0px 0px;
  }
  .show .header_logo.open {
    opacity: 0;
  }
  .header_logo img {
    max-width: 130px;
  }

  .event_image {
    width: calc(100% + 32px);
    max-width: calc(100% + 32px);
    transform: translateX(-16px);
    aspect-ratio: 4 / 3;
  }

  .event_content_block {
    grid-column-gap: 0px;
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: -36px;
    width: calc(100% + 48px);
    transform: translateX(-24px);
  }

  .event_content_block_text {
    grid-column: 1 / 13;
    padding: 2px 24px;
  }

  .event_content_block p {
    font-size: 16px;
  }

  .event_list_item {
    grid-column: span 6;
  }

  .half .event_list_item {
    grid-column: span 12;
    flex-direction: column;
  }
  .full .event_list_item {
    flex-direction: column;
  }

  .half .event_list_item_image {
    width: 100%;
    aspect-ratio: 5/2.5;
  }
  .full .event_list_item_image {
    width: 100%;
    aspect-ratio: 5/2.5;
  }
  .half .event_list_item_noimage {
    width: 100%;
    aspect-ratio: 5/2.5;
  }
  .full .event_list_item_noimage {
    width: 100%;
    aspect-ratio: 5/2.5;
  }

  .section_illustration {
    display: none;
  }

  .table table tr {
    padding: 8px 0px;
    border-bottom: 1px solid #e0e0e0;
  }
  .table table td {
    font-size: 15px;
  }
  .table table th {
    font-size: 17px;
  }

  p {
    font-size: 16px;
    line-height: 26px;
  }
  ul,
  ol {
    font-size: 16px;
    margin: 32px 0px;
    padding-left: 20px;
  }
  /* span.bricolage{
        font-size: 18px;
    } */

  p span.bricolage {
    font-size: 18px;
  }

  span.bricolage p {
    font-size: 18px;
  }

  h1 {
    font-family: "Bricolage Grotesque";
    font-size: 36px;
    line-height: 42px;
    margin-bottom: 32px;
  }

  h2 {
    font-size: 28px;
    line-height: 36px;
    margin-top: 32px;
  }
  h3 {
    font-size: 22px;
    margin-top: 30px;
  }
  h4 {
    font-size: 18px;
    margin-bottom: 12px;
    margin-top: 16px;
  }

  #hero_wrapper {
    width: 100%;
    height: 75vh;
    margin-bottom: 0px;
  }
  #hero {
    display: flex;
    flex-direction: column;
    padding: 0px 18px;
    row-gap: 36px;
    margin-bottom: 0px;
  }

  /* #hero_text::before{
        z-index: 2;
        right: 0px;
        width: 26px;
    } */
  /* #hero_text::after{
        left: -30px;
        width: 30px;
    } */

  .reveal_text_container {
    display: flex;
    flex-direction: column;
    padding: 0px 0px;
    margin: 76px auto;
    margin-top: 54px;
  }
  .reveal_text {
    font-size: 22px;
    line-height: 32px;
  }
  .scroll_text {
    width: calc(100% + 32px);
    transform: translateX(-16px);
    margin: 124px auto;
  }
  .scroll_text p {
    font-size: 6vw;
    line-height: 7vw;
    letter-spacing: -0.5px;
  }

  .text_block {
    margin: 76px auto;
    padding-left: 0px;
    padding-right: 0px;
  }
  .content_block_text_multi {
    width: 100%;
  }
  .content_block_text_multi:first-of-type {
    padding-right: 0px;
    margin-bottom: 24px;
  }
  .content_block_text_multi:last-of-type {
    padding-left: 0px;
  }

  .sixty-forty .content_block_text_multi:first-of-type {
    width: 100%;
  }
  .sixty-forty .content_block_text_multi:last-of-type {
    width: 100%;
  }
  .forty-sixty .content_block_text_multi:first-of-type {
    width: 100%;
  }
  .forty-sixty .content_block_text_multi:last-of-type {
    width: 100%;
  }
  .seventy-thirty .content_block_text_multi:first-of-type {
    width: 100%;
  }
  .seventy-thirty .content_block_text_multi:last-of-type {
    width: 100%;
  }
  .thirty-seventy .content_block_text_multi:first-of-type {
    width: 100%;
  }
  .thirty-seventy .content_block_text_multi:last-of-type {
    width: 100%;
  }

  span.text-big {
    font-size: 20px;
    line-height: 26px;
  }
  span.text-big span.playfair {
    font-size: 24px;
    line-height: 32px;
  }
  span.text-huge {
    font-size: 36px;
    line-height: 44px;
  }

  .content_block {
    margin: 76px auto;
  }
  .content_block_buttons {
    gap: 12px;
    margin-top: 20px;
  }
  .content_block.normal.bg {
    padding-left: 18px;
    padding-right: 18px;
  }
  .content_block.normal {
    display: flex;
    flex-direction: column;
    padding-left: 0px;
    padding-right: 0px;
    gap: 32px;
  }
  .content_block.normal.search_results {
    gap: 0px;
  }
  .content_block.text_right {
    flex-direction: column-reverse;
  }
  .content_block_inner {
    display: flex;
    flex-direction: column;
    padding-left: 18px;
    padding-right: 18px;
  }
  .section_block {
    margin: 76px auto;

    gap: 32px;
  }
  .section_block.bg {
    padding: 24px 24px;
    width: calc(100% + 48px);
    transform: translateX(-24px);
  }
  .section_block.full {
    max-width: calc(100% + 48px);
  }
  .section_block h2 {
    padding: 0px 0px;
  }
  .contact_block {
    padding: 0px 0px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .contact_card {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 18px;
  }
  .contact_card img {
    width: 40%;
  }
  .contact_block.one .contact_card img,
  .contact_block.two .contact_card img {
    width: 40%;
  }
  .contact_card .text {
    width: 60%;
  }
  .contact_card h3 {
    font-size: 18px;
    margin-top: 0px;
    margin-bottom: 4px;
  }
  .contact_card p {
    font-size: 16px;
    line-height: 24px;
  }

  #footer_logo {
    width: 160px;
    margin-bottom: 24px;
  }

  footer {
    margin-top: 92px;
    padding: 32px 0px;
  }
  .footer_main {
    padding: 18px 18px;
    margin-bottom: 0px;
  }
  .footer_content {
    display: flex;
    flex-direction: column-reverse;
    gap: 32px;
  }
  .footer_content > * {
    width: 100%;
  }
  footer .copy {
    padding: 0px 18px;
    font-size: 14px;
    text-align: left;
  }

  #hero_scene {
    width: 115%;
  }

  .hero_illustrasjon_elem {
    width: 65px;
  }

  #hero_blokk_liten {
    right: 15%;
    top: -170%;
  }
  #hero_blokk_stor {
    right: 25%;
    top: -150%;
    display: none;
  }
  #hero_fugler {
    left: 35%;
    top: -120%;
  }
  #hero_tbane {
    right: 7%;
    bottom: -100%;
    width: 120px;
  }
  #hero_tre {
    left: 10%;
    top: -155%;
    width: 45px;
  }

  #footer_illustration {
    position: absolute;
    max-width: 45%;
    max-height: 120px;
    right: 32px;
    bottom: -20px;
  }

  .tag {
    padding: 2px 10px;
    font-size: 14px;
  }
}

@media only screen and (max-width: 600px) {
  .event_list_item {
    grid-column: span 12;
  }
  .event_list_item_image {
    aspect-ratio: 5/3;
  }
  .event_list_item_noimage {
    aspect-ratio: 5/3;
  }
}
