/* BASE */
body {
   background: #fff;
   padding-top: 130px;
}
* {
   box-sizing: border-box;
}

:focus-visible {
   outline-offset: 4px;
}

.sib-pagecontent {
   padding-top: 2rem;
   padding-bottom: 3rem;
}


.sv-grid-grid-12 {
   padding: 0 15px !important;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}

/* FONT */
p, a, input, span, .normal, h1, h2, h3, h4, h5, h6 {
   font-family: "Jost",sans-serif!important;
}
p, a, input, span, .normal {
   font-size: 1.125rem;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
   font-size: inherit;
}


p.normal a,
.sv-font-ingress a {
   color: #000000;
   text-decoration-style: dotted;
   text-decoration-thickness: 3px;
   text-decoration-color: #b38d30;
}
p.normal a:hover,
.sv-font-ingress a:hover {
   text-decoration-style: solid;
}

input:focus + label {
   outline: 2px solid #000;
}

.sb-hide {
   display: none!important;
}

.sb-heading .subheading {
   font-size: 220%;
}

a img[src*="externallink"] {
   background-image: url("/images/18.5c8254c418b89b9f2cb176a/1698999595935/external-link-black.svg");
   background-repeat: no-repeat;
   background-size: contain;
   background-position: center right;
   padding-right: 15px;
   width: 12px;
   height: 12px;
   max-height: 12px;
}


/* Hoppa till huvudinnehåll */
a.skip-main {
   left:-999px;
   position:absolute;
   top:auto;
   width:1px;
   height:1px;
   overflow:hidden;
   z-index:-999;
}
a.skip-main:focus, a.skip-main:active {
   color: #fff1cf;
   background-color: #242424;
   left: 30px;
   top: 0;
   height: auto;
   overflow: auto;
   padding: 12px;
   text-align: center;
   font-size: 1rem;
   z-index: 99999;
   width: auto;
}

/* Table */
caption {
   padding-bottom: 8px;
}

tr:nth-child(odd) {
   background: #f5f5f5;
}

td {
   padding: 5px;
}


.sb-page-content--top-title {
   margin: 0 0 7px!important;
   color: #242424;
   border-bottom: 1px solid;
   display: inline-block;
   padding: 0 0 5px 0;
   font-weight: 400;
   font-size: 0.875rem;
   text-transform: uppercase;
   letter-spacing: 1px;
}



/* Toggle Öpnna/stäng */
.sb-toggle > div:not(.sv-text-portlet-editable) > *:not(h2) {
   display: none;
}
.sb-toggle {
   padding: 0;
   background: #dbf4f0;
   margin-bottom: 1em;
   transition: .4s;
   width: 100%;
   text-align: left;
   border: 0;
}
.sb-toggle.open {
   background: #edffff;
}

.sb-toggle h2 {
   padding: 10px 15px;
   color: #fff1cf;
   font-size: 1rem;
   padding-right: 40px;
   position: relative;
   cursor: pointer;
   border-bottom: 1px solid #006160;
   margin: 0!important;
}

.sb-toggle h2:after {
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   content: "\f063";
   position: absolute;
   right: 10px;
   top: 16px;
   font-size: 0.8125rem;
   padding-right: 8px;
   display: inline-block;
   vertical-align: middle;
}

.sb-toggle.open h2:after {
   content: "\f062";
}
.sb-toggle-content {
   padding: 15px;
}

.sb-toggle-content p {
   font-size: 1rem;
   margin: 0;
}

.sb-toggle-content p:last-child {
   margin-bottom: 0!important;
}


/* FILES ( pdf ) */
a[href$=".pdf"],
a[title~="pdf,"] {
   border: 3px solid #006160!important;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   padding: 10px 15px;
   min-width: 120px;
   font-weight: bold;
   color: #006160!important;
   cursor: pointer;
   display: inline-block;
   text-align: center;
   text-decoration: none;
   background: #fff;
   font-size: 0.875rem;
   cursor: pointer;
   border-radius: 0;
   margin: 10px 0;
}

a[href$=".pdf"]:hover,
a[title~="pdf,"]:hover {
   background: #edffff;
}

a[href$=".pdf"] img,
a[title~="pdf,"] img {
   display: none;
}

a[href$=".pdf"]:before,
a[title~="pdf,"]:before {
   content: "\f1c1";
   font-weight: 900;
   font-family: Font Awesome\ 5 free;
   padding-right: 15px;
   display: inline-block;
   font-size: 1.375rem;
   vertical-align: middle;
   text-align: right;
   width: 20px;
   height: 1.3em;
}

/* HEADER */
.sb-header {
   position: fixed;
   top: 0;
   z-index: 999;
   width: 100%;
   transition: background 0.2s;

   background: #fff1cfb0;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
}

.sb-header > div:first-child {
   padding: 0 10px!important;
}

.sb-header .sv-layout {
   display: -webkit-box!important;
   display: -ms-flexbox!important;
   display: flex!important;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: end;
   -ms-flex-pack: end;
   justify-content: flex-end;
   height: 100%;
   width: 100%;
   margin-top: 0;
   margin-bottom: 0;
}
.sb-header .sv-column-2 {
   justify-content: flex-start;
}

a.sb-logo {
   display: flex;
   padding: 1rem;
   border-radius: 0 0 1rem 1rem;
   transition: 0.3s;
}
.sb-logo img {
   width: 100%;
   max-width: 380px;
   min-width: 120px;
   transition: 0.3s;
}



.sb-header.is-scrolled {
   background: #fff1cfe6;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   box-shadow: 0 0 1px #242424;
}
.sb-header.is-scrolled .sb-logo {
   background: transparent;
   box-shadow: 0 0 1px 2px transparent;
}

.sb-header.is-scrolled .sb-logo img {
   max-width: 80px;
   min-width: 80px;
}


/* MENU */
.sb-menu {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
}


@media (min-width: 961px) {
   .sb-menu ul li ul {
      display: none!important;
   }

   .sb-menu {
      display: flex!important;
   }
   #sb-menu-mobile, .sb-menu.sb-menu-mobile {
      display: none!important;
   }
   .sb-menu li.active > a {
      color: #fff;
      background: #1c65fd;
   }

}
.sb-menu ul li ul {
   display: none;
}

.sb-menu ul li {
   display: inline-flex;
}

.sb-menu .toggle {
   display: none;
}

.sb-menu li {
   margin: 0 5px; 
}
.sb-menu li a {
   font-family: Poppins;
   font-size: 1.125rem;
   text-decoration: none;
   border-bottom: 2px solid transparent;
   background: #242424;
   display: flex;
   border-radius: 50px;
   padding: 0.2rem 0.8rem 0.1rem;
   color: #fff;
}

.sb-menu ul li a:focus-visible {
   position: relative;
}

.sb-menu button:focus-visible,
.sb-menu ul li a:focus-visible,
.sb-menu--toggle:focus-visible {
   outline: -webkit-focus-ring-color auto 2px;  
   outline-offset: 0;
   z-index: 1;
}

.sb-menu li a:hover {
   background-color: #1c65fd;
   color: #fff;
}


.sb-menu .sb-close-menu {
   display: none;
   margin: 0 auto;
   margin-bottom: 25px;
}

/* mobil-knapp */
.sb-menu-button {
   background-image: url('/images/18.5c8254c418b89b9f2cb3001/1699259527283/menu-white.svg');
   background-repeat: no-repeat;
   background-size: 30px;
   background-position: right 10px center;
   background-color: #242424;
   border: 0;
   height: 50px;
   width: 50px;
   font-size: 1rem;
   color: #fff;
   cursor: pointer;
   margin-left: 25px;
   border-radius: 0.3rem;
}
.sb-menu-button.is-open {
   background-image: url('/images/18.2bd77e2f16adfd5ba70376e/1560331358666/close-black.svg');
   background-size: 16px;
}


/* SEARCH */
.sb-header-searchform {
   background: #fff;
   display: none;
   padding: 10px 15px;
   border-top: 1px solid #dcdcdc;
}

.sb-searchform > div {
   width: 100%;
   max-width: 820px;
   margin: 0 auto;
   position: relative;
}

.sb-searchform-input {
   width: 100%;
   padding: 10px 130px 10px 25px;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   border: 3px solid #2e2424;
   border-radius: 50px;

}

.sb-searchform-button {
   position: absolute;
   height: 100%;
   top: 0;
   right: 0;
}

.sb-searchform-button:hover {
   background: #edffff;
}

.sb-button-circle {
   background-color: #fff1cf;
   box-shadow: 0 0 2px #0000007a;
   border: 0;
   border-radius: 50%;
   height: 50px;
   width: 50px;
   font-size: 1rem;
   color: #fff;
   cursor: pointer;
   background-repeat: no-repeat;
   background-size: 28px;
   background-position: center;

   margin-left: 30px;
}

.sb-search-button {
   background-image: url('/images/18.5c8254c418b89b9f2cbecd/1698930837276/search-black.svg');
   background-repeat: no-repeat;
   background-size: 28px;
   background-position: center;

   margin-left: 30px;
}

.sb-search-button.is-open {
   background-image: url('/images/18.5c8254c418b89b9f2cbecf/1698930909380/close-black.svg');
   background-size: 16px;
}


/* Language */
.sb-language-container {
   position: relative;
}

.sb-language-button {
   background-image: url('/images/18.5c8254c418b89b9f2cbece/1698930838951/language-black.svg');
   background-repeat: no-repeat;
   background-size: 28px;
   background-position: center;

   margin-left: 30px;
}


/* Google translate modal*/
.goog-te-banner-frame.skiptranslate {
   display: none !important;
} 
body {
   top: 0px !important; 
}

.google-translate-modal {
   position: absolute;
   z-index: 9999;
   background: #fff;
   padding: 20px;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   -webkit-box-shadow: 0 8px 24px 0 rgba(0,0,0,0.16);
   box-shadow: 0 8px 24px 0 rgba(0,0,0,0.16);
   cursor: auto;
   right: 0;
   width: 340px;
   right: 0;
   margin-top: 30px;

   display: none;
}
.google-translate-modal:before {
   content: "";
   position: absolute;
   width: 26px;
   height: 30px;
   background: #fff;
   top: -20px;
   right: 0;
   -webkit-transform: translate(-50%,10px) rotate(45deg);
   -ms-transform: translate(-50%,10px) rotate(45deg);
   transform: translate(-50%,10px) rotate(45deg);
   -webkit-box-shadow: 4px 4px 15px 0 rgba(0,0,0,0.16);
   box-shadow: 4px 4px 15px 0 rgba(0,0,0,0.16);
}
.google-translate-modal .btn-close {
   position: absolute;
   top: 1px;
   right: 0;
   line-height: 0;
   cursor: pointer;
   background-image: url('/images/18.2bd77e2f16adfd5ba70376e/1560331358666/close-black.svg');
   background-repeat: no-repeat;
   background-size: 18px;
   background-position: center;
   width: 20px;
   height: 20px;
}

.google-translate-modal-inner {
   z-index: 9;
   position: relative;
}
.google-translate-modal:after {
   content: "";
   position: absolute;
   width: 65px;
   height: 40px;
   background: #fff;
   top: -20px;
   right: -30px;
   -webkit-transform: translate(-50%,20px);
   -ms-transform: translate(-50%,20px);
   transform: translate(-50%,20px);
   z-index: 1;

}

.google-translate-modal h3 {
   margin-top: 0;
   margin-bottom: 10px;
}

.google-translate-modal p {
   font-weight: normal;
   font-style: normal;
   font-size: 100%;
   color: #545353;
   line-height: 26px;
   text-decoration: none;
}


.google-translate-modal select {
   padding: 10px;
   width: 100%;
   font-size: 1rem;
   background: url('/images/18.2bd77e2f16adfd5ba70344a/1560331351740/arrow-down-black.svg');
   background-repeat: no-repeat;
   background-position: center right 10px;
   background-size: 14px;
   -moz-appearance:none; /* Firefox */
   -webkit-appearance:none; /* Safari and Chrome */
   appearance:none;
}

.google-translate-modal .goog-te-gadget div {
   display: block!important;
}

.google-translate-modal .goog-te-gadget * {
   float: none!important;  
}
.google-translate-modal .goog-te-gadget span {
   border-bottom: 0!important;
}
.google-translate-modal .goog-te-gadget .goog-logo-link:hover {
   float: none!important;
   border-bottom: 1px solid #0083c3!important;
}
.skiptranslate.goog-te-gadget > div:first-child {
   margin: 10px 0 15px;
}


/* BUTTONS */
.sb-button-primary a,
a.sb-button-primary,
input.sb-button-primary,
button.sb-button-primary,
.sv-defaultFormTheme input[type=button],
.sv-defaultFormTheme input[type=submit],
.sv-defaultFormTheme input[type=reset],
.sv-login-portlet input[type="submit"], .sv-login-portlet a {
   border: 0!important;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   padding: 10px 15px;
   min-width: 120px;
   font-weight: bold;
   color: #fff!important;
   cursor: pointer;
   display: inline-block;
   text-align: center;
   text-decoration: none;
   background: #000;
   font-size: 1rem;
   cursor: pointer;
   border-radius: 50px;
}

.sb-button-primary a:hover,
a.sb-button-primary:hover,
input.sb-button-primary:hover,
button.sb-button-primary:hover,
.sv-defaultFormTheme input[type=button]:hover,
.sv-defaultFormTheme input[type=submit]:hover,
.sv-defaultFormTheme input[type=reset]:hover,
.sv-login-portlet input[type="submit"]:hover, .sv-login-portlet a:hover {
   background: #000;
   text-decoration: underline;
}

.sb-button-secondary a,
a.sb-button-secondary {
   border: 3px solid #006160;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   padding: 10px 15px;
   min-width: 100px;
   font-weight: bold;
   color: #fff;
   cursor: pointer;
   display: inline-block;
   text-align: center;
   text-decoration: none;
   background: #fff1cf;
   font-size: 0.875rem;
   cursor: pointer;
}

.sb-button-secondary a:hover,
a.sb-button-secondary:hover {
   background: #fff;
   color: #006160;
}


.sb-button-primary a img[src*="externallink"] {
   background-image: url("/images/18.5c8254c418b89b9f2cb176b/1698999595952/external-link-white.svg");
   background-repeat: no-repeat;
   background-size: contain;
   background-position: center right;
   padding-right: 25px;
   width: 12px;
   height: 12px;
   max-height: 12px;
}



/* HERO */
.sib-hero {
   padding: 10rem 0;
   padding-top: 15rem;
   position: relative;
}
.sib-hero:after {
   content: "";
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   width: 100%;
   height: 100%;
   background: #226087;
   opacity: 0.3;
}
.sib-hero h1 {
   position: relative;
   background: #fff1cf;
   padding: 0.1rem 1.5rem;
   display: inline;
   -webkit-box-decoration-break: clone;
   -o-box-decoration-break: clone;
   box-decoration-break: clone;
   line-height: 1.6;
   border-radius: 0.22rem;
   z-index: 1;
   color: #2e2424;
   font-size: 3rem;
}

.sib-hero .sv-text-portlet:last-child h1 {
   font-size: 1.6rem;
}


/* Toppbild på sidor */
.sb-topbox {
   background-position: top center;
   background-size: cover;
}
.sb-topbox > div:first-child > div > div {
   height: 600px;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   text-align: center;
}
.sb-topbox > div:first-child > div > div:first-child {
   position: relative!important;
}
.sb-topbox > div:first-child > div > div:last-child {
   position: absolute!important;
   top: 0;
   left: 0;
   pointer-events: none;
}

.sb-topbox > div:first-child h1 {
   margin-top: 0;
   color: #fff;
   font-size: 350%;
   text-shadow: 0 0 5px rgba(0,0,0,0.3), 0 0 10px rgba(0,0,0,0.3), 0 0 15px rgba(0,0,0,0.3), 0 0 20px rgba(0,0,0,0.3), 0 0 30px rgba(0,0,0,0.3), 0 0 40px rgba(0,0,0,0.3), 0 0 55px rgba(0,0,0,0.3), 0 0 75px rgba(0,0,0,0.3);
}

.sb-topbox .sb-button-primary,
.sb-topbox .sb-button-secondary {
   margin: 10px;
   display: inline-block;
}
.sb-topbox .sb-button-primary a,
.sb-topbox .sb-button-secondary a {
   font-size: 1rem;
}

.sb-topbox .sb-button-primary a:before {
   font-family: "Font Awesome 5 Free";
   content: "\f044";
   font-weight: 900;
   margin-right: 10px;
}

.sb-topbox .sb-button-secondary a:before {
   font-family: "Font Awesome 5 Free";
   content: "\f7d9";
   font-weight: 900;
   margin-right: 10px;
}

/* VIDEO */
.sb-topbox {
   position: relative;
   overflow: hidden;
   z-index: 1;
   height: 600px;
}

.sb-topbox .sv-text-portlet-content {
   position: relative;
   z-index: 1; 
}

.sb-topbox-video {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   min-width: 100%; 
   min-height: 100%;
   z-index: -1;
}

.sb-topbox:before {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   top: 0;

   /*
   background-color: #006160;
   background-repeat: no-repeat;
   background-size: cover;
   opacity: 1;
   pointer-events: none;

   -webkit-animation: fade 3s forwards;
   animation: fade 3s forwards;
   -moz-animation: fade 3s forwards;
   -o-animation: fade 3s forwards;

   */
}

@keyframes fade {
   0% {opacity: 1;}
   50% {opacity: 1;}
   100%{opacity: 0;}
}


.sv-video-portlet {
   margin-bottom: 10px;
}



.sv-youtube-portlet {
   margin-bottom: 1em;
}


/* Video - knapp för spela och pausa video */
.sb-video-btn {
   background: none;
   color: #fff;
   border: none;
   padding: 0;
   font: inherit;
   cursor: pointer;
   position: absolute;
   bottom: 1rem;
   z-index: 9999;
   right: 1rem;
}
.sb-video-btn:after {
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
}
.sb-video--is-playing:after {
   content: "\f28b";
}
.sb-video--is-paused:after {
   content: "\f144";
}

/* SIDEBAR MENU - Vänstermeny */
.sb-left-menu ul {
   padding: 0;
   margin: 0;
   list-style: none;
}

.sb-left-menu .has-child ul {
   display: none;
}
.sb-left-menu .has-child ul.is-open {
   display: block;
}

.sb-left-menu  li.has-child.currentpage.active > ul {
   display: block;
}

.sb-left-menu ul li.active > a {
   font-weight: 600;
}

.sb-left-menu ul li {
   position: relative;
}


.sb-left-menu--toggle {
   position: absolute;
   width: 45px;
   height: 45px;
   right: 0;
   top: 0;
   background-color: transparent;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   z-index: 1;
   border: 0;
   cursor: pointer;
   overflow: hidden;
}

.sb-left-menu--toggle::before {
   content: "";
   display: block;
   background-image: url('/images/18.2bd77e2f16adfd5ba70359b/1560331355148/plus-black.svg');
   background-repeat: no-repeat;
   background-size: 12px;
   background-position: center;
   border-radius: 50%;
   height: 20px;
   width: 20px;
   border: 2px solid #242424;

   -webkit-transition: 0.2s;

   -o-transition: 0.2s;

   transition: 0.2s;
   -webkit-transform: rotate(0deg);
   -ms-transform: rotate(0deg);
   transform: rotate(0deg);
}

.sb-left-menu--toggle:hover:before {
   background-color: #242424;
   background-image: url('/images/18.2bd77e2f16adfd5ba703657/1560331355220/plus-white.svg');
}

.sb-left-menu--toggle.is-open::before {
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
}

.sb-left-menu ul li a {
   background: #fff;
   text-decoration: none;
   padding: 15px;
   display: block;
   padding-right: 45px;
   border-bottom: 1px solid #000;
}
.sb-left-menu ul li a:hover {
   text-decoration: underline;
}

.sb-left-menu ul li a:focus-visible {
   position: relative;
}

.sb-left-menu ul li a:focus-visible,
.sb-left-menu--toggle:focus-visible {
   outline: 2px solid #000;
   outline-offset: 0;
   z-index: 1;
}


.sb-left-menu ul li.currentpage > a {
   font-weight: 600;
   color: #fff1cf;
   background: #000;
}

.sb-left-menu > ul > li > .link > a {
   padding: 15px 12px;
   color: #242424;
   background: #fff;
   border-bottom: 2px solid #242424;
   margin-bottom: 10px;
   font-weight: 600;
}
.sb-left-menu > ul > li.currentpage > .link > a {
   font-weight: 600;
   color: #fff1cf;
   background: #000;
}


.sb-left-menu li li a {
   padding-left: 10px;
}
.sb-left-menu li li li a {
   padding-left: 25px;
}
.sb-left-menu li li li li a {
   padding-left: 40px;
}


/* Sökresultat */
.sv-search-result li {
   background: #edffff;
   padding: 25px 30px!important;
   margin-bottom: 20px;
}

.sv-search-result li a {
   color: #006160;
   border-bottom: 2px solid #006160;
}

.sv-search-result li a:hover {
   color: rgba(0, 102, 102, 0.6);
   border-bottom: 2px solid rgba(0, 102, 102, 0.6);
}

.sv-search-result li a:before {
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   content: "\f061";
   font-size: 0.8125rem;
   margin-right: 8px;
   vertical-align: middle;
}


.sv-search-result li img {
   display: none;
}

.sb-search-hits {
   background: #fff1a6;
   padding: 13px;
}

.pagination a {
   text-decoration: none;
}

.pagination .current.prev,
.pagination .current.next {
   border: 2px solid #ccc;
   font-weight: bold;
   color: #ccc;
}

.pagination a, .pagination .current {
   border: 2px solid #006160;
   font-weight: bold;
   color: #006160;
}

.pagination a:hover, .pagination span:hover {
   background: #edffff;
   color: #006160;
}

.pagination .current,
.pagination .current:not(.prev):not(.next):hover {
   background: #006160;
   color: #fff;
}



/* Sidinnehåll */
.sb-page-content {
   background: #fff;
   padding: 30px 0;
}

.sb-page-content h1 {
   margin-top: 0;
}

.sb-page-content .sv-text-portlet-content ul {
   font-weight: 400;
   font-style: normal;
   color: #242424;
   line-height: 1.7em;
}



/* BREADCRUMB */
.sb-breadcrumb {
   display: inline-block!important;
   background: #f7f5f1;
   padding: 8px 12px!important;
   margin: 2rem 0 0 0;
   width: 100%;
   border-radius: 0.3rem;
}

.sb-breadcrumb a,
.sb-breadcrumb span {
   font-size: 0.875rem;
   display: -webkit-inline-box;
   display: -ms-inline-flexbox;
   display: inline-flex;
   text-decoration: none;
}
.sb-breadcrumb a {
   color: #696969;
}
.sb-breadcrumb a:hover {
   color: #000;
   text-decoration: underline;
}

.sb-breadcrumb i {
   font-size: 0.5rem;
   color: #888;
}

/* GOOGLE MAPS */
.sb-google-maps {
   margin-top: 3em;
   margin-bottom: 3em;
}

.sb-google-maps-link {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   background: #fff2dd;
   padding: 8px 20px;
   margin-bottom: 10px;
}

p.sb-google-maps-link-name {
   margin: 0;
   -webkit-box-flex: 1;
   -ms-flex: 1;
   flex: 1;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}

.sb-google-maps-link-name:before {
   font-family: "Font Awesome 5 Free";
   content: "\f3c5";
   font-weight: 900;
   margin-right: 10px;
   font-size: 1.875rem;
}


/* ObjectFit - Images */
.sb-slick {
   height: 100%;
   max-height: 400px;
   overflow: hidden;
}

.sb-slick .sv-image-portlet:nth-child(1n + 2) {
   display: none!important;
}

.sb-slick img {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: center;
   font-family: 'object-fit: cover; object-position: center;';
   height: 370px!important;
   overflow: hidden;
}

.sb-slick p.sv-portlet-image-caption {
   padding: 1px 10px;
   margin: 0;
   width: 100%;
   max-width: 100%;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
   font-style: italic;
   color: #ffff;
   background: #333;
}

/* FOOTER */
.sb-footer {
   padding: 3em 0;
   background: #2e2424;
   position: relative;
}

.sb-footer *,
.sb-footer a,
.sb-footer p.normal a {
   color: #fff;
   text-decoration-style: dotted;
   text-decoration-thickness: 1px;
   text-decoration-color: #fff;
}
.sb-footer *:hover,
.sb-footer a:hover,
.sb-footer p.normal a:hover {
   text-decoration-style: solid;
}



.sb-logo-footer img {
   max-width: 180px;
   width: 100%;
   margin-bottom: 30px;
}

.sb-page-content > div:last-child {
   padding-bottom: 140px;
}

#sib-footer-bg {
   position: absolute;
   bottom: 100%;
   right: 0;
   height: auto;
   width: 100%;
   fill: #333;
   max-width: 600px;
   margin-bottom: -2px;
}
#sib-footer-bg * {
   fill: #2e2424;
}


/* PUFFAR - BOX */
.sb-box > .sv-decoration-content {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   height: 100%;
   background: #edffff;
   margin-bottom: 3em;
   overflow: hidden;
   position: relative;
   border-radius: 1rem;
}
div:nth-child(even) > .sb-box > .sv-decoration-content {
   background: #fff2dd;
}


.sib-content-container > div > div:last-child .sv-decoration-content {
   margin: 0;
}


.sb-box .sv-image-portlet  {
   -webkit-box-flex: 1;
   -ms-flex: 1;
   flex: 1;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-item-align: center;
   align-self: center;
}

.sb-box .sv-image-portlet img  {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: center;
   font-family: 'object-fit: cover; object-position: center;';
   width: 50%;
   height: 100%;
   position: absolute;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-item-align: center;
   align-self: center;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   top: 0;
   padding-right: 40px;
}
.sv-editable-layout .sb-box .sv-image-portlet img {
   top: auto;
}

.sv-editable-layout .sb-box .sv-image-portlet img  {
   width: 100%;
   height: auto;
   padding-right: 0;
}


.sb-box .sv-text-portlet,
.sb-box > div > .sv-script-portlet {
   -webkit-box-flex: 0;
   -ms-flex: 0 0 50%;
   flex: 0 0 50%;
   padding: 40px;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;


   -webkit-box-flex: 1;
   -ms-flex-positive: 1;
   flex-grow: 1;
   flex-basis: 0;

}

.sb-box h1,
.sb-box h2 {
   margin-top: 0;
}

.sb-box h2 {
   font-size: 2.2rem;
}

.sb-box p:last-child {
   margin-bottom: 0;
}

/* Puff bred */

.sib-puff-wide {
   background: #fff2dd;
}

.sib-puff-wide * {
   background: #fff2dd!important;
}

.sib-puff-wide img {
   border-radius: 1rem;
}


/* NYHETER */
.sb-newsbox {
   margin-bottom: 3em;
}
.sb-newsbox ul {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   margin: 0 -10px;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   margin-bottom: 20px;
}

.sb-newsbox ul li {
   position: relative;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   padding: 10px;
   -webkit-box-flex: 0;
   -ms-flex: 0 0 33.333333%;
   flex: 0 0 33.333333%;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   margin-bottom: 0;
}

.sb-newsbox ul li .sb-newsbox-content {
   position: relative;
   background: #fff;
   -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.10);
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.10);
   height: 100%;
   width: 100%;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
}

.sb-newsbox ul li .sb-newsbox-content > time,
.sb-newsbox ul li .sb-newsbox-content > span,
.sb-newsbox ul li .sb-newsbox-content > h2 {
   padding: 0 15px;
}

.sb-newsbox ul li .sb-newsbox-content > h2 {
   margin: 10px 0;
   margin-bottom: 25px;
   width: 100%;
}

.sb-newsbox ul li .sb-newsbox-content>img {
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: center;
   font-family: 'object-fit: cover; object-position: center;';

   max-width: 100%!important;
   width: 100%!important;
   max-height: 200px!important;
   height: 200px!important;
   float: none!important;
   padding: 0!important;
   margin: 0!important;
}

.sb-newsbox ul li .sb-newsbox-content > time  {
   font-size: 0.875rem;
   margin-top: 10px;
}

.sb-newsbox ul li .sb-newsbox-content > time:before {
   font-family: "Font Awesome 5 Free";
   content: "\f133";
   font-weight: normal;
   margin-right: 10px;
}

.sb-newsbox ul li .sb-newsbox-content > span:nth-of-type(2)  {
   -webkit-box-flex: 1;
   -ms-flex-positive: 1;
   flex-grow: 1;
   line-height: 1.6em;
   width: 100%;
}

.sb-newsbox ul li .sb-newsbox-content > span:last-of-type {
   margin-bottom: 30px;
}

.sb-newsbox .sb-button-primary {
   margin: 30px auto;
   margin-top: auto;
   min-width: 200px;
}


/* FORMS */
form {
   border-top: 1px solid #333;
   padding-top: 2em;
}

.sv-form-datefield div:nth-child(3) {
   display: none;
}

.sv-defaultFormTheme .sv-form-comment-field .sv-field-title-container.sv-bold span.normal {
   font-weight: bold;
   color: #242424;
   display: inline-block;
   width: 100%;
   margin-bottom: 0;
   font-size: 150%;
}

.sv-defaultFormTheme input[type=text], .sv-defaultFormTheme input[type=email], .sv-defaultFormTheme input[type=url], .sv-defaultFormTheme input[type=tel], .sv-defaultFormTheme input[type=number], .sv-defaultFormTheme textarea, .sv-defaultFormTheme select, .sv-login-portlet input {
   border-radius: 0;
   -webkit-box-shadow: none;
   box-shadow: none;
   background-color: #f7f5f1;
   border: 0;
   border-bottom: 2px solid #d5d5d5;
   padding: 10px;
   height: 100%;
}

/* input focus */
.sv-defaultFormTheme input[type=text]:focus, .sv-defaultFormTheme input[type=email]:focus, .sv-defaultFormTheme input[type=url]:focus, .sv-defaultFormTheme input[type=tel]:focus, .sv-defaultFormTheme input[type=number]:focus, .sv-defaultFormTheme textarea:focus, .sv-defaultFormTheme select:focus, .sv-login-portlet input:focus {
   border-color: #000;
   outline: 0;
   -webkit-box-shadow: 0px 5px 8px rgba(102,175,233,.2);
   box-shadow: 0px 5px 8px rgba(102,175,233,.2);
}

.sv-defaultFormTheme .sv-field-title-container.sv-bold label,  .sv-defaultFormTheme .sv-field-title-container.sv-bold span.normal,
.sv-defaultFormTheme .sv-form-singleselectionfield label, .sv-defaultFormTheme .sv-form-multipleselectionfield label, .sv-defaultFormTheme select,
.sv-login-portlet label {
   color: #242424;
   font-weight: normal;

}

.sv-defaultFormTheme .sv-field-title-container.sv-bold label,  .sv-defaultFormTheme .sv-field-title-container.sv-bold span.normal {
   color: #242424;
   margin-bottom: 5px;
   display: inline-block;
}
.sv-defaultFormTheme .sv-field-title-container.sv-bold span {
   background: transparent;
   padding: 0;
}

.sv-defaultFormTheme input[type="checkbox"], .sv-defaultFormTheme input[type="radio"] {
   opacity: 0;
   position: absolute;
}

.sv-defaultFormTheme .sv-form-singleselectionfield label, .sv-defaultFormTheme .sv-form-multipleselectionfield label {
   position: relative;
   padding-left: 25px;
}


/* Checkbox */
.sv-defaultFormTheme .sv-form-multipleselectionfield label:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0px;
   z-index: 1;
   background-color: #edffff;
   border: 1px solid #fff1cf;
   height: 18px;
   width: 18px;
   border-radius: 3px;
}

.sv-defaultFormTheme input[type="checkbox"]:checked + label:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0px;
   background: url('/images/18.2bd77e2f16adfd5ba703423/1560331351667/checked-white.svg');
   background-size: 12px;
   background-repeat: no-repeat;
   background-position: center;
   background-color: #fff1cf;
   z-index: 2;
   color: #fff1cf;

}

/* Radio */
.sv-defaultFormTheme .sv-form-singleselectionfield label:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0px;
   z-index: 1;
   background: #edffff;
   border: 1px solid #fff1cf;
   border-radius: 50%;
   height: 18px;
   width: 18px;
}

.sv-defaultFormTheme input[type="radio"]:checked + label:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0px;
   background: url('/images/18.2bd77e2f16adfd5ba703872/1560331363078/radio-green.svg');
   background-size: 10px;
   background-repeat: no-repeat;
   background-position: center;
   background-color: #edffff;
   z-index: 2;
   color: #fff1cf;
}

.sv-defaultFormTheme .sv-formFieldRow:last-child {
   text-align: center;
}

/* Dölj max längd */
.sv-textfield-input-size {
   display: none;
}

/* Stjärna - Fältet måste fyllas i */
.sv-defaultFormTheme .sv-field-title-container.sv-bold span {
   color: #d72828;
}

/* Bostadsanmälan - Göm medsökandes fält */
.sb-bostadsanmalan .sv-formFieldRow:nth-child(n+10):nth-child(-n+15),
.sb-bostadsanmalan .sv-formFieldRow:nth-child(17),
.sb-bostadsanmalan .sv-formFieldRow:nth-child(19) {
   display: none;
}

/* Bostadsområde */
.sb-bostadsanmalan .sv-formFieldRow:nth-child(25) > div:last-child fieldset label {
   opacity: 0.3;
   pointer-events: none;
}
.sb-bostadsanmalan .sv-formFieldRow:nth-child(25) > div:last-child fieldset input {
   pointer-events: none;
}
.sb-bostadsanmalan .sv-formFieldRow:nth-child(25) > div:last-child fieldset label.sb-active {
   opacity: 1;
   pointer-events: auto;
}
.sb-bostadsanmalan .sv-formFieldRow:nth-child(25) > div:last-child fieldset input.sb-active {
   pointer-events: auto;
}


/* Uppdatera dina kontaktuppgifter - Göm medsökandes fält */
.sb-personuppgifter-uppdatera .sv-formFieldRow:nth-child(n+7):nth-child(-n+9) {
   display: none;
}

/* Meddelande har skickats */
.sb-forms-complete {
   display: block;
   background: #edffff;
   padding: 15px 25px 5px;
   font-weight: bold;
   border: 2px solid #006160;
}

.sb-forms-complete span {
   font-weight: 600;
   color: #006160;
}

.sv-form-portlet span {
   background: #fff5de;
   padding: 1rem;
   margin: 0;
   display: inline-block;
}



/* /FORMS */


/* KONTAKTPERSON */
.sb-row {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: start;
   -ms-flex-pack: start;
   justify-content: start;
   -webkit-box-align: start;
   -ms-flex-align: start;
   align-items: flex-start;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   margin: 0 -10px;
   -webkit-box-align: stretch;
   -ms-flex-align: stretch;
   align-items: stretch;
}

.sb-contact * {
   -webkit-box-sizing: border-box;
   box-sizing: border-box;

}
.sb-container .sv-custom-module {
   width: 50%;
   margin-bottom: 20px;
}

.sb-container .sv-custom-module .sv-script-portlet {
   height: 100%;
}

.sb-contact {
   margin: 10px;
   height: 100%;
}

.sb-contact-inner {
   width: 100%;
   height: 100%;
   display: inline-block;
   background: #edffff;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   text-align: center;
}

.sb-contact-image {
   width: 200px;
   height: 200px;
   margin: 0 auto;
   overflow: hidden;
   border-radius: 50%;
   display: block;
   margin-top: 20px;
}

.sb-contact img {
   width: 100%;
   max-width: 250px;
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center;
   object-position: bottom;
   font-family: 'object-fit: cover; object-position: center;';
   height: 250px!important;
   overflow: hidden;
}

.sb-contact-text {
   padding: 0 10px;
}

.sb-contact-text span {
   margin-top: 10px;
   margin-bottom: 5px;
   display: block;
   font-size: 1rem;
   font-weight: bold;
}
.sb-contact h2 {
   margin: 0;
   margin-bottom: 10px;
}

.sb-contact-text a {
   color: #006160;
   margin-top: 5px;
   display: inline-block;
   background: #fff;
   padding: 5px 10px;
   border: 3px solid #006160!important;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   text-decoration: none;
   font-size: 0.875rem;
   max-width: 100%;
   white-space: nowrap;
   overflow: hidden;
   -o-text-overflow: ellipsis;
   text-overflow: ellipsis;
}
.sb-contact-text a:hover {
   background: #edffff;
}

.sb-contact-text a:before {
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   width: 15px;
   display: inline-block;
   margin-right: 5px;
}

.sb-contact-phone:before {
   content: "\f10b";
}

.sb-contact-email:before {
   content: "\f0e0";
}

/* VARNING BOX */
.sb-warning p {
   margin: 0!important;
}

.sb-warning {
   padding-left: 50px!important;
   position: relative;
   color: #242424;
   margin-bottom: 20px;
}

.sb-warning:before {
   content: "\f05a";
   font-family: "Font Awesome 5 Free";
   font-weight: 900;
   color: #242424;
   width: 30px;
   position: absolute;
   left: 20px;
   top: 20px;
}

.sb-warning a[href^="tel:"] {
   color: #176e6e;
   display: inline-block;
}


/* Inloggning */
.sv-login-portlet {
   width: 100%;
   max-width: 400px;
   margin: 0 auto;
}

.sv-login-portlet label {
   text-align: left;
   display: block!important;
   margin-bottom: 5px;
}
.sv-login-portlet .sv-login-input-group {
   margin-bottom: 10px!important;
}

.sv-login-portlet input {
   width: 100%;
}

.sv-login-portlet input[type="submit"], .sv-login-portlet a {
   display: inline-block;
   max-width: 200px;
   line-height: 30px;
   margin-top: 2em!important;
   margin: 0 auto;
}

/* Kanallista */
.sb-channellist {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   margin-right: -5px;
   margin-left: -5px;
}
.sb-channellist > div {
   width: 90px;
   padding: 10px;
   background: #f9f9f9;
   margin: 5px;
   display: inline-block;
}

/* Gå till toppen av sidan */
.sb-bottom-container {
   text-align: right;
}
#sb-top {
   border: 0;
   padding: 10px 0;
   font-size: 0.75rem;
   cursor: pointer;
   color: #fff;
   border-bottom: 1px solid #fff;
   padding-bottom: 7px;
   display: inline-block;
   text-decoration: none;
   background-image: url('/images/18.6b21bd9216b9910533491ca/1565788339426/arrow-up-white.svg');
   background-repeat: no-repeat;
   background-size: 16px;
   background-position: center right;
   padding-right: 25px;
   font-weight: 900;
   letter-spacing: 1px;
   text-transform: uppercase;
}

/* =========================================================
   ABSI – Sitevision Cookie-banner
   Anpassad till webbplatsens Jost, creme och mörkbruna tema.
   Placering: flytande kort nära nederkanten på större skärmar.
   Endast cookie-bannern påverkas – ingen ändring av samtyckeslogiken.
   ========================================================= */
.sv-cookie-consent-banner {
   position: fixed !important;
   left: 50% !important;
   right: auto !important;
   top: auto !important;
   bottom: 28px !important;
   transform: translateX(-50%) !important;
   width: calc(100% - 32px) !important;
   max-width: 760px !important;
   max-height: calc(100dvh - 56px);
   overflow-y: auto;
   z-index: 10000 !important;
   padding: 26px 30px !important;
   background: #fffaf0 !important;
   color: #2e2424 !important;
   border: 1px solid rgba(46, 36, 36, 0.12) !important;
   border-radius: 18px !important;
   box-shadow: 0 18px 65px rgba(46, 36, 36, 0.22) !important;
   box-sizing: border-box;
}

.sv-cookie-consent-banner,
.sv-cookie-consent-banner * {
   font-family: 'Jost', sans-serif !important;
}

.sv-cookie-consent-banner .env-ui-text-subheading {
   margin: 0 0 10px !important;
   color: #2e2424 !important;
   font-size: 1.45rem !important;
   font-weight: 700 !important;
   line-height: 1.25 !important;
}

.sv-cookie-consent-banner .env-text {
   color: #403735 !important;
   font-size: 0.96rem !important;
   line-height: 1.55 !important;
}

.sv-cookie-consent-banner p {
   margin: 0 0 10px !important;
}

.sv-cookie-consent-banner .env-link {
   color: #2e2424 !important;
   font-size: 0.9rem !important;
   font-weight: 600 !important;
   text-decoration: underline !important;
   text-underline-offset: 3px;
}

.sv-cookie-consent-banner .env-link:hover {
   text-decoration-thickness: 2px !important;
}

.sv-cookie-consent-banner .env-button {
   min-height: 42px;
   padding: 10px 16px !important;
   border-radius: 999px !important;
   font-size: 0.88rem !important;
   line-height: 1.3 !important;
   font-weight: 600 !important;
   cursor: pointer;
   transition: background-color 0.18s ease, color 0.18s ease;
}

/* Samma utformning för godkänn och neka: likvärdiga val. */
.sv-cookie-consent-banner .env-button--primary {
   background: #2e2424 !important;
   color: #fff !important;
   border: 2px solid #2e2424 !important;
}

.sv-cookie-consent-banner .env-button--primary:hover {
   background: #4a3836 !important;
   border-color: #4a3836 !important;
}

.sv-cookie-consent-banner .env-button--link {
   background: transparent !important;
   color: #2e2424 !important;
   border: 2px solid transparent !important;
}

.sv-cookie-consent-banner .env-button--link:hover {
   background: #fff1cf !important;
}

.sv-cookie-consent-banner .env-button svg {
   fill: currentColor;
}

.sv-cookie-consent-banner .env-button:focus-visible,
.sv-cookie-consent-banner a:focus-visible {
   outline: 3px solid #1c65fd !important;
   outline-offset: 3px !important;
}

/* De tre valen ligger i rad på desktop, bryts på små skärmar. */
.sv-cookie-consent-banner .env-flex.env-m-top--small {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 10px;
   margin-top: 16px !important;
}

.sv-cookie-consent-banner .env-flex.env-m-top--small form {
   margin: 0;
}

@media (max-width: 768px) {
   .sv-cookie-consent-banner {
      bottom: 14px !important;
      width: calc(100% - 24px) !important;
      max-height: calc(100dvh - 28px);
      padding: 20px !important;
      border-radius: 14px !important;
   }

   .sv-cookie-consent-banner .env-ui-text-subheading {
      font-size: 1.24rem !important;
   }

   .sv-cookie-consent-banner .env-text {
      font-size: 0.9rem !important;
   }
}

@media (max-width: 480px) {
   .sv-cookie-consent-banner .env-flex.env-m-top--small,
   .sv-cookie-consent-banner .env-flex.env-m-top--small form,
   .sv-cookie-consent-banner .env-flex.env-m-top--small .env-button {
      width: 100%;
   }

   .sv-cookie-consent-banner .env-flex.env-m-top--small .env-button {
      justify-content: center;
   }
}


/* Cookie-banner: korrigering av knappgruppen.
   Överskriver webbplatsens generella form-stil med border-top och padding-top. */
.sv-cookie-consent-banner .env-flex.env-m-top--small > form {
   border: 0 !important;
   border-top: 0 !important;
   padding: 0 !important;
   margin: 0 !important;
   align-self: center;
   display: flex !important;
   align-items: center;
}

.sv-cookie-consent-banner .env-flex.env-m-top--small > .env-button {
   margin: 0 !important;
   align-self: center;
}

.sv-cookie-consent-banner .env-flex.env-m-top--small .env-button {
   display: inline-flex !important;
   align-items: center !important;
   justify-content: center !important;
   min-height: 44px !important;
   line-height: 1.25 !important;
   white-space: normal;
}

/* Anpassa inställningar: samma knapputformning, utan den trasiga ikonen. */
.sv-cookie-consent-banner .env-flex.env-m-top--small > .env-button--link {
   background: #fffaf0 !important;
   color: #2e2424 !important;
   border: 2px solid #2e2424 !important;
   padding: 10px 16px !important;
   text-decoration: none !important;
}

.sv-cookie-consent-banner .env-flex.env-m-top--small > .env-button--link:hover {
   background: #fff1cf !important;
}

.sv-cookie-consent-banner .env-flex.env-m-top--small > .env-button--link .env-icon {
   display: none !important;
}