body { font-family: 'Golos Text', Arial, Helvetica, sans-serif; }

html { scroll-behavior: smooth; }
body { overflow-wrap: break-word; }
main { display: block; }
section[id], main[id] { scroll-margin-top: 88px; }
.navbar-dropdown .navbar-toggler { cursor: pointer; }
#navigasjon .navbar-collapse.show { z-index: 1070 !important; }
#navigasjon .navbar .nav-link:focus-visible, #navigasjon .btn:focus-visible,
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid #23639a; outline-offset: 3px;
}
.site-form-label { display:block; margin:0 0 .35rem .25rem; font-size: .95rem; font-weight: 600; color: #253328; }
.site-form-help { margin: 1.1rem 0 0; width: 100%; font-size: .95rem; line-height: 1.6; color: #44564a; text-align: center; }
.site-contact-visual { border-radius: 2rem; overflow:hidden; background: #e9edea; display:flex; flex-direction:column; height:100%; min-height:260px; }
.site-contact-visual img { width:100%; height:100%; min-height:210px; object-fit:cover; display:block; flex:1 1 auto; }
.site-contact-visual__caption { margin:0; padding:1rem 1.25rem; color:#29342d; background:#eef5ef; font-size: .95rem; line-height: 1.5; }
#sidefot .site-company-block, #sidefot .site-data-notice, #sidefot .site-legal-links { width:100%; }
#sidefot .site-company-block { margin: 2rem 0 .8rem; padding: 1.35rem 0; border-top: 1px solid rgba(255,255,255,.28); border-bottom: 1px solid rgba(255,255,255,.18); color: #f6f9f7; }
#sidefot .site-company-block__heading { font-size: 1.3rem; line-height: 1.35; font-weight: 700; margin: 0 0 1rem; color: inherit; }
#sidefot .site-company-block__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap: 1rem 2.5rem; }
#sidefot .site-company-block__grid p { line-height: 1.85; font-size:.96rem; margin:0; color:inherit; }
#sidefot .site-data-notice { padding: 1rem 1.2rem; background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius: 1rem; margin: 1rem 0; color:#f4f8f4; }
#sidefot .site-data-notice__title { font-size: 1.08rem; font-weight:700; line-height: 1.35; margin: 0 0 .35rem; color:inherit; }
#sidefot .site-data-notice__text { font-size:.89rem; line-height:1.6; margin:0; color:inherit; }
#sidefot .site-legal-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.65rem 1.5rem; margin: 1.25rem 0 .5rem; }
#sidefot .site-legal-links a { color:#fff; text-decoration: underline; text-underline-offset:3px; font-size: .95rem; }
#sidefot .site-legal-links a:hover { color:#e2f1dc; }
.site-legal { padding: 7.75rem 0 5rem; background:#f7f9fa; min-height:70vh; }
.site-legal__inner { width:min(100% - 2rem, 930px); margin:0 auto; }
.site-legal h1 { font-size:clamp(2rem,4.7vw,3.6rem); line-height:1.16; font-weight:700; margin:0 0 1.4rem; color:#1c241f; }
.site-legal h2 { font-size:clamp(1.2rem,2vw,1.65rem); font-weight:700; line-height:1.3; margin:2rem 0 .8rem; color:#1c241f; }
.site-legal p, .site-legal li { font-size:1.05rem; line-height:1.75; color:#28372d; }
.site-legal p { margin:0 0 1rem; }
.site-legal ul { margin:0 0 1.4rem; padding-left:1.5rem; }
.site-legal a { color:#255b40; text-decoration: underline; text-underline-offset:2px; }
.site-legal__intro { font-weight: 500; }
@media(max-width:991px){
  #navigasjon .navbar-collapse.show, #navigasjon .navbar-collapse.collapsing { z-index:1070 !important; }
  #navigasjon .navbar .navbar-toggler { z-index:1071; position:relative; }
  #navigasjon .navbar-collapse { max-height:calc(100dvh - 96px); overflow-y:auto; box-shadow:0 12px 32px rgba(11,27,14,.13); }
  #navigasjon .navbar-collapse.show { visibility:visible; }
}
@media(max-width:767px){
  #sidefot .site-company-block__grid { grid-template-columns:1fr; gap:.75rem; }
  #sidefot .site-company-block { padding:1rem 0; }
  #sidefot .site-data-notice { padding:.9rem; }
  #sidefot .site-legal-links { flex-direction:column; align-items:center; }
  .site-legal { padding:6rem 0 3rem; }
  .site-contact-visual { min-height:230px; }
}
@media(max-width:390px){
 #navigasjon .navbar-brand { min-width:0; }
 #navigasjon .navbar-caption { font-size:1.05rem; overflow-wrap:anywhere; }
 #navigasjon .navbar-collapse { width:calc(100vw - 24px); left:12px; }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
