/***** ========== BASE ========== test og kopi fra custom-4*****/

/* Site Name */
#divSiteTitle,
#divTagLine { text-decoration: none; }

/* Headline Text */
#divHeaderLine1,
#divHeaderLine2,
#divHeaderLine3 { display: inline-block !important; }

/* Generic lists */
ul#contact-info { list-style: none; }
ul#contact-info .icon { font-size: 20px; float: left; line-height: 25px; margin-right: 10px; }
ul#contact-info .field { font-weight: bold; }

/* Responsive image/video */
img {
  max-width: 100%;
  height: auto;
  width: auto;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Zurb flex-video wrapper */
.flex-video { position: relative; padding-top: 25px; padding-bottom: 67.5%; height: 0; margin-bottom: 16px; overflow: hidden; }
.flex-video.widescreen { padding-bottom: 57.25%; }
.flex-video.vimeo { padding-top: 0; }
.flex-video iframe,
.flex-video object,
.flex-video embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }

@media only screen and (max-device-width: 800px),
       only screen and (device-width: 1024px) and (device-height: 600px),
       only screen and (width: 1280px) and (orientation: landscape),
       only screen and (device-width: 800px),
       only screen and (max-width: 767px) {
  .flex-video { padding-top: 0; }
}

/* Base layout wrappers */
.divPanel {}
.divPanel.notop { padding-top: 0; }
.divPanel.nobottom { padding-bottom: 0; }

#divBoxed { position: relative; }
.nav-links > a { margin-right: 20px; }

.btn-secondary, .btn-secondary:hover { text-shadow: none; }

/* Header line anchor inheritance */
#divHeaderLine1 a, #divHeaderLine2 a, #divHeaderLine3 a {
  font-size: inherit; line-height: inherit; letter-spacing: inherit; font-family: inherit;
  text-shadow: inherit; font-weight: inherit; font-style: inherit;
}

/* Header line spacing/alignment */
#divHeaderLine1, #divHeaderLine2, #divHeaderLine3 {
  padding-top: 3px !important; padding-bottom: 3px !important; text-align: inherit !important;
}

/* Light shadow bar under header */
#decorative2 {
  -webkit-box-shadow: 0 1px 10px rgba(0,0,0,.03);
  -moz-box-shadow: 0 1px 10px rgba(0,0,0,.03);
  box-shadow: 0 1px 10px rgba(0,0,0,.03);
}

/* Showcase tabs */
.showcase-tabs > li > a { font-size: 14px; letter-spacing: 1px; padding-left: 20px; padding-right: 20px; }

/* Camera/slider tweaks */
.cap1 div, .cap2 div, .cap3 div, .cap4 div, .cap5 div { margin: 0 -1px; }
.camera_wrap .camera_pag .camera_pag_ul li { margin: 20px 5px 0 !important; }

/* Tiles grid (cards/masonry) */
#tiles li {
  width: 240px !important; background: #fff; border: 1px solid #dedede; border-radius: 2px;
  padding: 10px !important; margin-right: 7px; margin-bottom: 7px; float: left;
}
#tiles li img { margin-bottom: 10px; }
#tiles li div.meta { color: #999; text-transform: uppercase; font-size: 10px; margin: 0; }
#tiles li h4 { line-height: 1.5; margin: 0 0 5px; }
#tiles li h4 a {
  line-height: inherit; margin: 0; text-decoration: inherit; color: inherit;
  font-size: inherit; font-family: inherit; font-weight: inherit; font-style: inherit;
}
#tiles li p, #tiles li a { font-size: 12px; }
#tiles li p { line-height: 1.5; margin: 0; }
#tiles li .more_link {
  font-size: smaller; line-height: 2; text-transform: uppercase; letter-spacing: 2px;
  white-space: nowrap; display: block; margin: 5px 0 0;
}
#tiles li blockquote {
  line-height: 1.5; margin: 0; padding: 0; color: #999; border: none;
  font-size: 150%; font-style: italic; font-family: Georgia, Times, serif;
}
#tiles li blockquote small { font-size: 11px; font-style: normal; }

/* Foundicons */
[class*="social foundicon-"]:before { font-family: "SocialFoundicons"; }
[class*="general foundicon-"]:before { font-family: "GeneralFoundicons"; }

/***** ========== TYPOGRAFI ========== *****/

/* Global body + page content text */
body { background-image: none; background-position: initial; background-repeat: initial; }
.page-content {
  line-height: 25px;
  font-family: 'Open Sans', sans-serif;
}
.page-content a,
.breadcrumbs a,
.sidebox a { color: rgb(164,39,143); font-family: 'Open Sans', sans-serif; }

/* Breadcrumbs */
.breadcrumbs { line-height: 26px; font-family: 'Open Sans', sans-serif; font-weight: 400; font-size: 16px; }

/* === Overskrifter (som avtalt) ===
   Vi scoper hovedinnhold til .page-content for å unngå at meny/header/footer påvirkes.
*/
.page-content h1 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 26px;
  line-height: 1.25;
  color: #000;
}

.page-content h2 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700; /* bold */
  font-style: normal;
  font-size: 18px;
  line-height: 1.5; /* behagelig lesbarhet i brødtekst */
  color: #000;
}

.page-content h3 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700; /* bold */
  font-style: normal;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
}

.page-content h4 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700; /* bold */
  font-style: normal;
  font-size: 14px;
  line-height: 1.5;
  color: #000;
}

/* Lenker inni h3 skal arve størrelsen, ikke tvinges */
.page-content h3 a {
  font: inherit;
  line-height: inherit;
}

/* .lead skal ikke overstyre overskrifter i innholdet */
.lead { text-align: center; }
.lead h2,
.lead h3 {
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  font-weight: inherit;
}

/***** ========== HEADER / BRANDING ========== *****/

#divLogo { margin: 9px 0 0 -3px; }

#divSiteTitle {
  font-family: 'Century Gothic', sans-serif;
  color: rgb(176,42,154);
  font-size: 28px;
  text-shadow: rgba(0,0,0,.2) 2px 5px 9px, rgba(255,255,255,.298) 0 -5px 35px;
  line-height: 42px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 400;
  padding-left: 0; padding-right: 0;
}

#divTagLine {
  font-family: 'Century Gothic', sans-serif;
  font-size: 12px; text-transform: uppercase; letter-spacing: 5px; line-height: 22px;
  color: #fff; text-shadow: none; padding: 0 3px; font-weight: 400;
}

/* Top bars / hero */
#decorative1 {
  position: relative;
  background-color: #f0f0f0;
  background-image: url(../images/gen/ungdom-berlin-1280-450-2.jpg);
  -webkit-background-size: cover; background-size: cover;
  background-position: 50% 50%; background-repeat: no-repeat;
  -webkit-box-shadow: 0 3px 11px rgba(0,0,0,.7);
  -moz-box-shadow:    0 3px 11px rgba(0,0,0,.7);
  box-shadow:         0 3px 11px rgba(0,0,0,.7);
}
#decorative2 { background-color: rgba(0,43,95,1); height: 90px; position: fixed; top: 0; left: 0; right: 0; z-index: 1032; }
body { padding-top: 85px; }

#divHeaderText { padding-top: 200px; padding-bottom: 30px; border-color: #333; text-align: left; }

#divHeaderLine1 {
  letter-spacing: 0; word-spacing: 0; margin-top: 0; color: #000; font-size: 50px; line-height: 64px;
  font-family: 'Source Sans Pro', sans-serif; text-transform: none;
  text-shadow: rgba(0,0,0,.149) 0 3px 5px, rgba(255,255,255,.298) 0 -5px 35px;
  font-weight: 400; text-align: center; background-color: rgba(255,255,255,.06); opacity: .9; padding: 3px 10px;
}

#divHeaderLine2 {
  font-size: 20px; line-height: 30px; letter-spacing: 1px; margin-top: 11px;
  font-family: 'Palatino Linotype','Book Antiqua',Palatino,serif;
  color: #fff; text-shadow: none; text-align: center; font-weight: 400; font-style: italic;
  background-color: #000; opacity: .9; padding: 3px 10px;
}

#divHeaderLine3 { margin-top: 18px; color: #000; text-align: center; line-height: 16px; text-transform: none; font-size: 15px; }

/***** ========== NAVBAR / MENY ========== *****/

/*
  Gammel V2/Bootstrap-topnav er fjernet.
  All hovednavigasjon styres av V3-blokken nederst i filen.
  Dette hindrer at gamle .navbar/.nav-pills/.dropdown-menu-regler
  overstyrer den nye menyen.
*/

/***** ========== BUTTONS ========== *****/

.btn .caret { margin-top: 8px !important; }

.btn-primary, .btn-primary:hover, a.btn-primary, a.btn-primary:hover { color: #fff; }
.btn-primary {
  border: 1px solid #9d2589; border-bottom-color: #7b1d6c;
  background-color: #b02a9a;
  background-repeat: repeat-x;
  background-image:
    -webkit-linear-gradient(top, #b02a9a, #9e268b),
    linear-gradient(top, #b02a9a, #9e268b);
  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] { background-color: #9d2589; }

.btn-secondary, .btn-secondary:hover, a.btn-secondary, a.btn-secondary:hover { color: #323232; }
.btn-secondary {
  border: 1px solid #dfdfdf; border-bottom-color: #afafaf;
  background-color: #fafafa; background-repeat: repeat-x;
  background-image:
    -webkit-linear-gradient(top, #fafafa, #e1e1e1),
    linear-gradient(top, #fafafa, #e1e1e1);
  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}
.btn-secondary:hover, .btn-secondary:active, .btn-secondary.active, .btn-secondary.disabled, .btn-secondary[disabled] { background-color: #dfdfdf; }

a.btn, a.btn-large, a.btn-small, a.btn-mini { color: #333; }
a.btn-info, a.btn-success, a.btn-warning, a.btn-danger, a.btn-inverse { color: #fff; }

/***** ========== CONTENT BLOKS / SIDEKOLONNE ========== *****/

.sidebox {
  -webkit-box-shadow: rgba(0,0,0,.298) 0 1px 3px;
  -moz-box-shadow:   rgba(0,0,0,.298) 0 1px 3px;
  box-shadow:        rgba(0,0,0,.298) 0 1px 3px;
  background-color: #fafafa; color: #333; border: 1px solid #fff; border-radius: 3px; padding: 18px; margin-top: 28px;
}
.sidebar {}
.sidebox-title {
  line-height: 40px; font-weight: 400; font-style: normal; font-family: 'Source Sans Pro', sans-serif; color: #333;
}

/***** ========== FOOTER ========== *****/

#divFooter {
  font-family: 'Open Sans', sans-serif; background: #000; color: #fff; padding-top: 32px;
  line-height: 22px; font-size: 12px; text-transform: none; background-image: none; background-repeat: repeat;
}
#divFooter a { color: #fff; font-weight: bold; }
#divFooter h3 { color: #fff; }

/* Footer link-override (stabil og spesifikk) */
#divFooter a,
#divFooter a:link,
#divFooter a:visited {
  all: revert;
  color: #fff !important;
  font-weight: 700 !important;
  text-decoration: underline transparent;
  text-underline-offset: 2px;
}
#divFooter a:hover,
#divFooter a:focus-visible {
  color: #fff !important;
  text-decoration-color: rgba(255,255,255,.6) !important;
}
/* Unngå at nav-pills lekker inn i footer */
#divFooter .nav a,
#divFooter .nav-pills > li > a {
  all: revert;
  color: #fff !important;
  font-weight: 700 !important;
}

/***** ========== MISC / KOMPONENTER ========== *****/

.social_bookmarks a {
  font-size: smaller !important; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; margin-right: 20px;
}
.copyright { font-size: smaller; letter-spacing: 1px; }

.search.adjust { margin-bottom: 15px; }

.line-separator {
  border-top: 1px solid #eaeaea; margin: 21px 0; border-bottom: 1px solid #fff;
}

#contentOuterSeparator { margin-top: 0; border-top: 0 solid #fff; margin-bottom: 25px; height: 0; background: transparent; }
#footerOuterSeparator { margin-top: 55px; border-top: 0 solid #5f5f5f; }
#headerSeparator { margin-top: 7px; border-top: 0 solid #333; }
#headerSeparator2 { margin-top: 45px; margin-bottom: 18px; }

#divVideo {
  border: 7px solid #fff; margin-left: -5px;
  -webkit-box-shadow: rgba(0,0,0,.498) 0 15px 10px -10px, rgba(0,0,0,.298) 0 1px 4px;
  box-shadow: rgba(0,0,0,.498) 0 15px 10px -10px, rgba(0,0,0,.298) 0 1px 4px;
  border-radius: 0; margin-top: 36px;
}

/* Mini-komponenter og utilities (uforandret der det ikke var konflikt) */
.linkgreen a { color: rgba(0,149,142,1); text-decoration: none; font: bold; }
.linkgreen a:hover { color: rgba(0,149,142,1); font: bold; text-decoration: underline; }

.space-horisontal { padding: 10px 0; }
.undertekst { font-style: italic; font-size: 12px; line-height: normal; }

#pageBody .brdTxt { font-style: normal; font-size: medium; }

/* Avisstil */
.avistext {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 14px; color: #333; text-align: justify;
  margin: 5px 60px; font-style: italic; line-height: 22px;
}

/* Left menus, sidenav, tabs: beholdt funksjonelt – ryddet whitespace */
.sidenav {
  height: auto; width: 200px; position: fixed; z-index: 1; top: 1; left: 250;
  background: #fff; overflow-x: hidden; padding-top: 10px;
}
.sidenav a, .dropdown-btn {
  padding: 6px 8px 6px 16px; text-decoration: none; font-size: 16px; display: block;
  border: none; background: none; width: 100%; text-align: left; cursor: pointer; outline: none;
}
.sidenav a { color: #818181; }
.dropdown-btn { color: #818181; }
.sidenav a:hover { color: #111; }
.dropdown-btn:hover { color: #000; }
.main { margin-left: 200px; font-size: 18px; padding: 0 10px; }
.active { background: rgb(176,42,154); color: #fff; }
.dropdown-container { display: none; background: #111; padding-left: 2px; }
.fa-caret-down { float: right; padding-right: 2px; }

.tab-content { overflow: auto; background: #fff; color: #000; }
.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs { border-bottom: 0; }
.tab-content>.tab-pane,.pill-content>.pill-pane { display: none; }
.tab-content>.active,.pill-content>.active { display: block; background: #fff; color: #000; }

/* Enkle venstremenyer */
#menu, #menu_forsoning { position: relative; z-index: 500; }
#menu { margin-left: 10px; } #menu_forsoning { margin-left: 5px; }
#menu ul, #menu_forsoning ul {
  list-style: none; width: 200px; background: #fff; padding: 5px;
}
#menu_forsoning ul { width: 160px; }
#menu ul ul, #menu_forsoning ul ul { position: absolute; left: -9999px; }
#menu ul li, #menu_forsoning ul li { background: #fff; }
#menu ul li a, #menu_forsoning ul li a {
  display: block; text-decoration: none; clear: left; padding: 3px 5px 3px 25px;
  font-family: Arial, Helvetica, sans-serif;
}
#menu ul li a { width: 140px; font-size: 16px; color: #7D775C; }
#menu_forsoning ul li a { width: 145px; font-size: 12px; color: #7D775C; }
#menu ul li a.pil, #menu_forsoning ul li a.pil { background-image: url(../styleimages/bullet5.jpg); background-repeat: no-repeat; background-position: 5px center; }
#menu ul li a.fly { background-image: url(../styleimages/arrow-12.png); background-repeat: no-repeat; background-position: 175px center; }
#menu_forsoning ul li a.fly { background-image: url(../styleimages/arrow.gif); background-repeat: no-repeat; background-position: 148px center; }
#menu ul li:hover > a, #menu_forsoning ul li:hover > a { color: #001f4d; }
#menu ul :hover ul, #menu ul :hover ul :hover ul, #menu ul :hover ul :hover ul :hover ul, #menu ul :hover ul :hover ul :hover ul :hover ul { left: 140px; top: -5px; }
#menu ul :hover ul ul, #menu ul :hover ul :hover ul ul, #menu ul :hover ul :hover ul :hover ul ul { left: -9999px; }
#menu_forsoning ul :hover ul, #menu_forsoning ul :hover ul :hover ul, #menu_forsoning ul :hover ul :hover ul :hover ul, #menu_forsoning ul :hover ul :hover ul :hover ul :hover ul { left: 125px; top: -5px; }
#menu_forsoning ul :hover ul ul, #menu_forsoning ul :hover ul :hover ul ul, #menu_forsoning ul :hover ul :hover ul :hover ul ul { left: -9999px; }

/* Diverse kort, nyheter, helper-klasser (beholdt) */
.card { box-shadow: 0 4px 8px rgba(0,0,0,2); transition: .3s; width: 90%; }
.card:hover { box-shadow: 0 8px 16px rgba(0,0,0,2); }
.container2 { padding: 2px 16px; }
.forsiden_linkboks a { color: #000; text-decoration: none; }
.forsiden_linkboks a:hover { color: #000; text-decoration: underline; }
.uthev_tekst { font-weight: bold; font-family: "Gill Sans","Gill Sans MT","Myriad Pro","DejaVu Sans Condensed",Helvetica,Arial,sans-serif; color: #000; }
.photo100, .photo100 img { width: 75px !important; }
.news { width: auto; height: auto; }
.news .img-polaroid img { float: left !important; }
.spacer_vertical { clear: both; padding-top: 10px; }
.photoleft200   { float: left; font-size: 90%; color: #7F8E29; font-style: italic; width: 200px !important; padding: 2px 16px 4px 2px; margin: 0; }
.photoleftBlack250 { float: left; font-size: 90%; color: #000; font-style: italic; width: 250px !important; padding: 2px 16px 4px 2px; margin: 0; }
.photoleftBlack350 { float: left; font-size: 90%; color: #000; font-style: italic; width: 350px !important; padding: 2px 16px 4px 2px; margin: 0; }

/* Popup helper */
.popup { position: relative; display: inline-block; cursor: pointer; text-decoration: underline; text-decoration-style: dashed; }
.popup .popuptext {
  visibility: hidden; width: 160px; background-color: #DCDCDC; color: #000; text-align: left;
  border-radius: 6px; padding: 12px; position: absolute; z-index: 1; bottom: 125%; left: 50%; margin-left: -80px;
}
.popup .popuptext::after {
  content: ""; position: absolute; top: 100%; left: 50%; margin-left: -5px; border-width: 5px; border-style: solid;
  border-color: #555 transparent transparent transparent;
}
.popup .show { visibility: visible; -webkit-animation: fadeIn 1s; animation: fadeIn 1s; }
@-webkit-keyframes fadeIn { from {opacity: 0;} to {opacity: 1;} }
@keyframes fadeIn { from {opacity: 0;} to {opacity: 1;} }

/***** ========== RESPONSIVE ========== *****/


@media (max-width: 979px) {
  #divLogo { margin-bottom: 10px; }
  #decorative2 { position: static; height: auto; }
  body { padding-top: 0; }
  #divSiteTitle { font-size: 25px; }
  #divHeaderText { margin: 0; padding: 10px 0; }
  #divHeaderLine1 { margin-top: 0; }
  #decorative1, #decorative2, #decorative3 {
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 20px;
    padding-right: 20px;
  }
  #divFooter {
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 20px;
    padding-right: 20px;
  }
  #divBoxed > #divFooter {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  body > #footerOuterSeparator,
  body > #contentOuterSeparator {
    margin-left: -20px;
    margin-right: -20px;
  }

  /*
    .topArea beholdes uten gammel 20px-padding når den inneholder V3-nav.
    Dette overstyres også av .af-v3-navhost-regelen i V3-blokken.
  */
  .headerArea { padding: 20px !important; }

  #camera_wrap,
  #divVideo { margin-top: 20px; }
}

/***** ========== END ========== *****/


/* =========================================================
   V2 -> V3 NAV: HARD RESET AV GAMMEL MENY
   ========================================================= */

/* Gamle Bootstrap-menyelementer skal aldri vises sammen med V3-nav. */
#decorative2 .navbar .btn-navbar-highlight,
#decorative2 .btn-navbar-highlight,
#decorative2 #divMenuRight > .navbar:not(.af-v3-navhost),
.af-v3-navhost .btn-navbar-highlight {
  display: none !important;
}

/* V3-navhost skal ikke arve gammel Bootstrap-navgeometri. */
.af-v3-navhost .navbar,
.af-v3-navhost .nav,
.af-v3-navhost .nav-pills {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Ikke la gammel header-wrapper klippe dropdown/megameny. */
#decorative2,
#decorative2 .topArea,
#decorative2 .headerArea,
#decorative2 #divMenuRight {
  overflow: visible !important;
}

/* Når V3-nav finnes skal gammel nav-holder ikke legge inn høyde/padding. */
#decorative2 .af-v3-navhost {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}



/* ==== FINAL POLISH: typografi i innholdet ==== */

/* 1) Stram brødtekst og lister i .page-content */
.page-content p,
.page-content li {
  font-size: 15px;
  line-height: 1.6;           /* ~24px linjeavstand */
}
.page-content p { 
  margin: 0 0 0.8em;          /* ~12px luft per avsnitt */
}
.page-content ul,
.page-content ol {
  margin: 0 0 0.8em 1.4em;    /* litt innrykk + samme bunnluft som p */
}

/* 2) AAA-lenkefarge i innhold (ikke knapper/meny/footer) */
.page-content a:not(.btn) {
  color: #8E1E7C;             /* AAA på hvit bakgrunn */
  text-decoration: underline transparent;
  text-underline-offset: 2px;
}
.page-content a:not(.btn):hover,
.page-content a:not(.btn):focus-visible {
  text-decoration-color: currentColor;
}

/* (valgfritt) tydelig visited uten å bli "skrikende" */
.page-content a:not(.btn):visited {
  color: #7A176A;             /* fortsatt AAA; subtilt mørkere */
}

/* 3) Overskrifter – sikkerhetssikring (som avtalt, bare i innholdet) */
.page-content h1 { font-size: 26px; line-height: 1.25; font-weight: 400; }
.page-content h2 { font-size: 18px; line-height: 1.5;  font-weight: 700; }
.page-content h3 { font-size: 16px; line-height: 1.5;  font-weight: 700; }
.page-content h4 { font-size: 14px; line-height: 1.5;  font-weight: 700; }

/* 4) Lead-seksjoner skal ikke blåse opp overskrifter */
.lead h2,
.lead h3 {
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  font-weight: inherit;
}
.undertekst-tollef-joakim {
  font-size: 0.85em !important;
  color: #666 !important;
  font-style: italic !important;
  margin-top: 5px !important;
  line-height: 1.4 !important;
}
/* ===== V3 TOPNAV FOR V2-SIDER ===== */
/* =========================================================
   V3 TOPNAV PÅ V2-SIDER
   ========================================================= */

.af-v3-navhost{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  min-height:0 !important;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.af-v3-navhost *{
  box-sizing:border-box;
}

/* Full bredde selv om HeaderNav ligger inne i gammel Bootstrap-container */
.af-v3-navhost .topbar{
  width:100vw;
  margin-left:calc(50% - 50vw);
}

.af-v3-navhost .topbar > .container{
  width:min(var(--max), calc(100% - 32px)) !important;
  max-width:none !important;
  margin-inline:auto !important;
  padding:0 !important;
}

/* Gammel Bootstrap tegner ellers en ekstra caret */
.af-v3-navhost .caret{
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  line-height:1 !important;
  vertical-align:middle !important;
}

/* Nøytraliser gammel V2-mobilpadding rundt Library-elementet */
@media (max-width:979px){
  #decorative2 .topArea{
    padding:0 !important;
  }
}

/* =========================================================
   V3 TOPNAV I V2-TESTFIL
   Samme HTML-klasser og samme nav-CSS som på ny forside.
   Kun Bootstrap-wrapperen nøytraliseres lokalt.
   ========================================================= */

:root{
  --brand:#002b5f;
  --brand2:#001f46;
  --cta:#008a88;
  --cta-dark:#006d6b;
  --navy:#002b5f;
  --teal:#008a88;
  --teal-dark:#006d6b;
  --max:1120px;
  --shadow:0 10px 24px rgba(10,25,45,.10);
  --nav-bar-h:84px;
  --nav-logo-h:125px;
  --nav-pad-y:10px;
  --logo-hang:16px;
}

.af-v3-navhost a{
  text-decoration:none;
}


/* CSS Document */
/* =========================
   TOP NAV
   ========================= */

.topbar{
  position:sticky;
  top:0;
  z-index:9999;
  background:var(--brand);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:var(--shadow);
  overflow:visible;
}

.topbar__inner{
  height:var(--nav-bar-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 20px;
  gap:20px;
  overflow:visible;
}

.brand{
  display:flex;
  align-items:center;
  overflow:visible;
}

.brand img{
  height:var(--nav-logo-h);
  width:auto;
  display:block;
  object-fit:contain;
  transform:translateY(var(--logo-hang));
  transform-origin:left center;
}


/* =========================
   TOPBAR / NAV
   Selve topbar/logo ligger i topnav-17.css.
   Denne delen styrer desktopnav, dropdown,
   megameny og mobilmeny.
   ========================= */

.desktop-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:nowrap;
  white-space:nowrap;
}

.desktop-nav > a,
.desktop-nav .nav-item > a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border-radius:8px;
  color:rgba(255,255,255,.98);
  font-size:15px;
  font-weight:400;
  letter-spacing:.2px;
  white-space:nowrap;
}

.desktop-nav > a:hover,
.desktop-nav .nav-item > a:hover{
  background:rgba(255,255,255,.12);
}

.desktop-nav .navCta{
  padding:9px 16px;
  border:none;
  border-radius:8px;
  background:var(--cta);
  color:#fff;
  font-size:15px;
  font-weight:600;
  letter-spacing:.1px;
}

.desktop-nav .navCta:hover{
  filter:brightness(.95);
}

.desktop-nav .navCta:focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
}

.caret{
  font-size:.85em;
  opacity:.85;
  transform:translateY(1px);
}

/* Vanlige dropdowns */
.nav-item{
  position:relative;
}

.dropdown{
  position:absolute;
  top:100%;
  left:0;
  min-width:220px;
  display:none;
  z-index:99999;
  padding:8px;
  background:#fff;
  border:1px solid rgba(15,31,51,.12);
  border-radius:10px;
  box-shadow:0 16px 36px rgba(10,25,45,.18);
}

.dropdown a{
  display:block;
  padding:10px;
  border-radius:6px;
  color:#173255;
  font-size:14px;
  font-weight:500;
}

.dropdown a:hover{
  background:rgba(0,43,95,.06);
}

.nav-item.has-dropdown:hover > .dropdown,
.nav-item.has-dropdown:focus-within > .dropdown{
  display:block;
}

/* =========================
   OM OSS – MEGAMENY
   ========================= */

.has-mega{
  position:relative;
}

.mega-dropdown{
  top:calc(100% - 1px);
  left:auto;
  right:0;
  width:min(860px, calc(100vw - 48px));
  min-width:0;
  padding:0;
  border-radius:8px;
  overflow:hidden;
}

.mega-grid{
  display:grid;
  grid-template-columns:1.35fr .95fr 1.15fr .95fr;
  padding:22px 24px 20px;
}

.mega-col{
  min-width:0;
  padding:0 20px;
  border-left:1px solid rgba(15,31,51,.10);
}

.mega-col:first-child{
  padding-left:0;
  border-left:0;
}

.mega-col:last-child{
  padding-right:0;
}

.mega-heading{
  margin:0 0 10px;
  color:var(--navy);
  font-size:12px;
  line-height:1.4;
  font-weight:750;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:normal;
}

.mega-dropdown .mega-col a{
  display:block;
  padding:6px 0;
  border-radius:0;
  color:var(--navy);
  font-size:13.5px;
  line-height:1.35;
  font-weight:500;
  white-space:normal;
}

.mega-dropdown .mega-col a:hover{
  background:none;
  color:var(--brand2);
  text-decoration:underline;
  text-underline-offset:3px;
}

.mega-bottom{
  display:flex;
  justify-content:flex-end;
  padding:11px 24px;
  border-top:1px solid rgba(15,31,51,.10);
  background:#f6f8fa;
}

.mega-bottom a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 0;
  color:var(--navy);
  font-size:13px;
  font-weight:650;
}

.mega-bottom a:hover{
  background:none;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* =========================
   BURGER / MOBILMENY
   ========================= */

.burger{
  display:none;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  background:rgba(255,255,255,.16);
  color:#fff;
  font-weight:500;
  cursor:pointer;
}

.burger:focus-visible{
  outline:2px solid rgba(255,255,255,.55);
  outline-offset:2px;
}

.mobileNav{
  display:none;
  padding:8px 0 12px;
  border-top:1px solid rgba(255,255,255,.12);
}

.topbar.is-open .mobileNav{
  display:block;
  max-height:calc(100dvh - var(--nav-bar-h));
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

/* Hovedlenker */
.mobileNav > a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:11px 10px;
  border-bottom:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.94);
  font-size:14px;
  font-weight:450;
}

.mobileNav > a:hover{
  background:rgba(255,255,255,.08);
}

/* Hovedgrupper */
.mobileGroup{
  border-bottom:1px solid rgba(255,255,255,.10);
}

.mobileGroup > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:11px 10px;
  color:rgba(255,255,255,.94);
  font-size:14px;
  font-weight:450;
  cursor:pointer;
  list-style:none;
}

.mobileGroup > summary::-webkit-details-marker,
.mobileMegaGroup > summary::-webkit-details-marker{
  display:none;
}

.mobileGroup > summary::after,
.mobileMegaGroup > summary::after{
  content:"+";
  flex:0 0 auto;
  color:rgba(255,255,255,.72);
  font-size:17px;
  font-weight:400;
  line-height:1;
}

.mobileGroup[open] > summary::after,
.mobileMegaGroup[open] > summary::after{
  content:"−";
}

.mobileGroup[open] > summary{
  background:rgba(255,255,255,.08);
}

/* Undermenyer – lukket som standard */
.mobileSub{
  display:none;
  padding:0 0 7px 12px;
}

.mobileSub.is-open,
.mobileGroup[open] > .mobileSub,
.mobileMegaGroup[open] > .mobileSub{
  display:block;
}

.mobileSub a{
  display:block;
  padding:7px 10px;
  color:rgba(255,255,255,.84);
  font-size:13px;
  line-height:1.35;
}

.mobileSub a:hover{
  color:#fff;
  background:rgba(255,255,255,.06);
}

/* Om oss – undergrupper på mobil */
.mobileMega{
  padding:2px 10px 8px;
}

.mobileMegaGroup{
  border-top:1px solid rgba(255,255,255,.08);
}

.mobileMegaGroup:first-child{
  border-top:0;
}

.mobileMegaGroup > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:9px 6px;
  color:#fff;
  font-size:11.5px;
  line-height:1.35;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
  cursor:pointer;
  list-style:none;
}

.mobileMegaGroup .mobileSub{
  padding-left:6px;
}

.mobileAll{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:4px;
  padding:10px 6px 4px;
  border-top:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-size:13px;
  font-weight:650;
}

/* Mindre desktop */
@media (max-width:1120px){
  .desktop-nav{
    gap:9px;
  }

  .desktop-nav > a,
  .desktop-nav .nav-item > a{
    padding-left:7px;
    padding-right:7px;
    font-size:14px;
  }

  .desktop-nav .navCta{
    padding-left:13px;
    padding-right:13px;
  }

  .mega-dropdown{
    width:min(790px, calc(100vw - 40px));
  }

  .mega-grid{
    padding-left:20px;
    padding-right:20px;
  }

  .mega-col{
    padding-left:14px;
    padding-right:14px;
  }
}




@media (max-width: 980px){
  .desktop-nav{ display:none; }
  .burger{ display:flex; }
  .brand{ min-width:0; }
  .brand img{
    height:var(--nav-logo-h);
    width:auto;
    transform:translateY(var(--logo-hang));
  }
  
}
@media (max-width: 720px){
  .topbar__inner{ padding:0 14px; }
}
@media (max-width: 640px){
  .mobileNav{
    padding:5px 0 10px;
  }

  .mobileNav > a,
  .mobileGroup > summary{
    padding:10px 6px;
    font-size:13.5px;
  }

  .mobileSub{
    padding-left:8px;
  }

  .mobileSub a{
    padding:6px 8px;
    font-size:12.75px;
  }

  .mobileMega{
    padding:2px 6px 7px;
  }

  .mobileMegaGroup > summary{
    padding:8px 5px;
    font-size:10.75px;
  }

  .mobileMegaGroup .mobileSub{
    padding-left:4px;
  }

  .mobileAll{
    padding:9px 5px 3px;
    font-size:12.75px;
  }
}
/* ===== SLUTT V3 TOPNAV FOR V2-SIDER ===== */

