/***** ========== BASE ========== *****/

/* 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 (Bootstrap overrides) ========== *****/

.navbar .nav-pills > li > a,
.navbar .dropdown-menu li > a { text-shadow: none; font-weight: 400; }
.navbar .nav-pills > li > .dropdown-menu:before,
.navbar .nav-pills > li > .dropdown-menu:after { border: none; }
.navbar .nav-pills > .active > a,
.navbar .nav-pills > .active > a:hover,
.navbar .nav-pills > .active > a:focus { -webkit-box-shadow: none; box-shadow: none; }
.navbar .nav-pills .open .dropdown-toggle { background-color: transparent; }

.navbar .nav-pills > li > a {
  margin: 0 2px; padding: 35px 15px; border-radius: 0; color: #fff; border-bottom-style: none;
}
.navbar .nav-pills > li > a:hover,
.navbar .nav li.dropdown.open.active > .dropdown-toggle,
.navbar .nav-pills > li > a:focus { color: #fff; background-color: rgb(176,42,154); border-bottom-style: none; }

.navbar .nav > .active > a,
.navbar .nav > .active > a:hover,
.navbar .nav li.dropdown.open > .dropdown-toggle,
.navbar .nav li.dropdown.active > .dropdown-toggle { background: none; }

.navbar .nav-pills > .active > a,
.navbar .nav-pills > .active > a:hover,
.navbar .nav-pills li.dropdown.open > .dropdown-toggle,
.navbar .nav-pills li.dropdown.active > .dropdown-toggle { color: #fff; background-color: rgb(176,42,154); border-bottom-style: none; }

.navbar .ddmenu { margin-top: -2px; margin-bottom: 0; }
.ddmenu.nav-pills li a { font-family: 'Source Sans Pro', sans-serif; font-size: 17px; text-shadow: none; line-height: 15px; }
.ddmenu .dropdown-menu li a { line-height: 29px; font-size: 15px; font-family: 'Source Sans Pro', sans-serif; }

.nav .dropdown-toggle .caret,
.nav .dropdown-toggle:hover .caret { border-top-color: #000; border-bottom-color: #000; }

.navbar .dropdown-menu,
.dropdown-menu { background-color: #363636; border-radius: 0; }
.navbar .dropdown-menu li > a,
.dropdown-menu li > a,
.navbar .nav-pills .open .dropdown-toggle { color: #fff; }
.navbar .dropdown-menu li > a:hover,
.navbar .dropdown-menu .active > a,
.navbar .dropdown-menu .active > a:hover,
.dropdown-menu li > a:hover,
.dropdown-menu .active > a,
.dropdown-menu .active > a:hover,
.dropdown-menu li > a:focus,
.dropdown-submenu:hover > a,
.navbar .nav-pills .open a.dropdown-toggle:hover {
  filter: none; color: #fff; background-color: rgb(176,42,154); background-image: none;
}

/* Burger-knapp visning */
.navbar .btn-navbar-highlight { display: none; width: 100%; }
#decorative2 { z-index: 100 !important; }

/***** ========== 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 ========== *****/

.navbar .btn-navbar-highlight { display: none; width: 100%; }

@media (max-width: 979px) {
  #divLogo { margin-bottom: 10px; }
  .navbar .btn-navbar-highlight { display: inline; padding: 9px 14px; margin-top: 15px; }
  .navbar { width: 100%; }
  #divMenuRight { float: none; width: 100%; margin-top: 0; padding-top: 0; }
  .dropdown-menu .sub-menu { left: 0%; position: relative; top: 0; visibility: visible; margin-top: 3px; display: block; }
  .dropdown-menu, .sub-menu { border-radius: 5px !important; }
  .navbar .ddmenu { margin: 0; }
  #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; }
  .headerArea, .topArea { padding: 20px !important; }
  #camera_wrap, #divVideo { margin-top: 20px; }
}

/***** ========== END ========== *****/

/* ==== 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;
}

