/* Global styles */
*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

/* Global focus styling to certain texts */
.env-text-body-01, .sv-font-lank-i-modul {
   a:focus-visible {
      border-radius: var(--env-border-radius);
      box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
    	outline: var(--env-focus-size) solid var(--env-focus-outline-color);
    	outline-offset: var(--env-focus-offset);
   }
}

/* Login modul */

.sv-login-portlet {
   .env-text-body-01 {
      font-weight: 700;
      margin-bottom: 0.5rem;
   }

   .env-text-heading-03 {
      margin-bottom: 2rem;
   }

   fieldset {
      padding: 0;
   }

   .sv-login-input-group {
      margin-bottom: 2rem;
   }

   input[type=text], input[type=password] {
      width: 100%;
      height: 3.25rem;
      padding: 0.5rem;
      background-color: var(--env-form-input-background-color);
      background-image: none;
      border: 1px solid var(--env-form-input-border-color);
      border-radius: var(--env-form-input-border-radius);
      box-sizing: border-box;
      color: var(--env-form-input-font-color);
      
   }

   input[type=submit] {
      background-color: var(--env-element-background-color);
      border: 1px solid var(--env-element-background-color);
      border-radius: var(--env-button-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
      color: var(--env-element-font-color);
      cursor: pointer;
      min-height: 2rem;
      padding: 0 1rem;
         
      @media (prefers-color-scheme: dark) {
      	border-color: var(--env-element-font-color);
      }
   }
   
   .sv-login-error-message {
      background: #f1cfb8;
      padding: 0.5rem;
      border: 1px solid #B24940;
      width: fit-content;
      margin-top: 0.5rem;
      font-weight: 400;
      color: #3B3C43;
      
      &:focus-visible {
      border-radius: var(--env-border-radius);
      box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
    	outline: var(--env-focus-size) solid var(--env-focus-outline-color);
    	outline-offset: var(--env-focus-offset);
   }
   }
}

/* Formulär */
.sv-defaultFormTheme {
   
   .sv-field-title-container {
      margin-bottom: 0.5rem;
   }
   
   
   .sv-form-multipleselectionfield {
      display: flex;
    	flex-direction: column;
   }
   
   [id^="sv-field-description-field"] {
  		margin-bottom: 0.5rem;
      display: block;
	}
  		
   
   .sv-form-singleselectionfield {
      label {
         margin: 0
      }
      li {
         display: flex;
         align-items: center;
         gap: 0.5rem;
         margin-bottom: 1rem;
         
         &:last-of-type {
            margin-bottom: 0;
         }
      }
   }
   
   .sv-form-multipleselectionfield {
      label {
         margin: 0
      }
      li {
         display: flex;
         align-items: center;
         gap: 0.5rem;
         margin-bottom: 1rem;
      }
      ul:last-of-type li {
         margin-bottom: 0;
      }
   }
   
   input[type=text], input[type=email], select {
      height: 3.25rem;
      padding: 0.5rem;
      margin: 0.5rem 0 0 0;
   }
   
   input[type=radio], input[type=checkbox] {
      width: 2rem;
      height: 2rem;
      margin: 0;
      accent-color: var(--env-element-background-color);
         
      @media (prefers-color-scheme: dark) {
         accent-color: var(--env-element-font-color);
      }
   }
   input[type=submit] {
      margin: 0;
      
      @media (prefers-color-scheme: dark) {
            border-color: currentColor;
         
         &:hover {
            border-color: currentColor;
         
         }
       }
   }
   
   .sv-form-field-message {
      background: var(--env-ui-color-status-error);
      padding: 0.5rem;
      border: 1px solid #B24940;
      width: fit-content;
      margin-top: 0.5rem;
   }
   
}

/*A-Ö list*/

.sv-abc-portlet {
    .mfof-abc-container {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
        scroll-margin-top: 8rem;
       
        .mfof-abc-button {
           width: 2.5rem;
           height: 2rem;    
           display: flex;
    		  align-items: center;
    		  justify-content: center;
           
            border-radius: var(--env-cta-border-radius);
           box-shadow:
                0 4px 6px -1px var(--env-box-shadow-color),
                0 2px 4px -2px var(--env-box-shadow-color);
        }

        .mfof-selected-button {
           	background-color: var(--env-element-font-color);
            color: var(--env-element-background-color);
            border: 1px solid var(--env-cta-border-color);
        }

        .mfof-not-selected-button {
            margin: 0;
            border: 1px solid var(--env-cta-border-color);
            color: var(--env-cta-font-color);
            background: var(--env-cta-background-color);
            &:hover {
                background: var(--env-cta-hover-background-color);
                cursor: pointer;
            }

            &:focus-visible {
                box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
                outline: var(--env-focus-size) solid var(--env-focus-outline-color);
                outline-offset: var(--env-focus-offset);
            }
        }
    }

    .sv-abc-result {
        display: flex;
        gap: 1.5rem;
        flex-direction: column;
        margin-top: 1.5rem;

        a {
            &:focus-within {
                box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
                outline: var(--env-focus-size) solid var(--env-focus-outline-color);
                outline-offset: var(--env-focus-offset);
                border-radius: var(--env-border-radius);
            }
        }
    }

    .mfof-abc-puff-hit {
        padding: 1rem;
        background-color: var(--env-block-primary-background-color);
        border-radius: var(--env-border-radius);
        box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
        position: relative;

        &:focus-within {
            box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
            outline: var(--env-focus-size) solid var(--env-focus-outline-color);
            outline-offset: var(--env-focus-offset);
        }

        a {
            text-decoration: none;
            margin: 0;
           	word-break: break-word;

            &::before {
                content: "";
                height: 100%;
                left: 0;
                position: absolute;
                top: 0;
                width: 100%;
                z-index: 1;
            }

            &:focus-visible {
                box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
                outline: var(--env-focus-size) solid var(--env-focus-outline-color);
                outline-offset: var(--env-focus-offset);
                border-radius: var(--env-border-radius);
            }
        }

        svg {
            width: 2rem;
            height: 2rem;
            flex-shrink: 0;
        }

        .hit-top {
            display: flex;
            justify-content: space-between;
        }

        .hit-summary {
            margin: 1rem 0 0 0;
           	display: -webkit-box;
            -webkit-line-clamp: 6;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }
    }
   .no-hits {
      margin-top: 1.5rem;
   }
}

/* Typography */

@media (max-width: 576px) {
   .env-text-heading-01 {
      font-size: 1.75rem;
   }
   
   .env-text-heading-02 {
      font-size: 1.5rem;
   }
   
   .env-text-heading-03 {
      font-size: 1.25rem;
   }
   
   .env-text-heading-04 {
      font-size: 1.125rem;
   }
   
   .env-text-heading-05 {
      font-size: 1rem;
   }
   
   .env-text-display-01 {
      font-size: 2.25rem;
   }
   
   .env-text-display-02 {
      font-size: 1.5rem;
      line-height: 1.3;
   }
   
   .env-text-summary-01 {
      font-size: 1.125rem;
   }
   
   .env-text-body-01 {
      font-size: 1rem;
   }

   .env-text-body-02 {
      font-size: 0.875rem;
   }
   
   .sv-font-pufftext-toppnavigering {
      font-size: 1rem;
   }
   
   .sv-font-knapptext-stor {
      font-size: 1.125rem;
   }

   .env-text-table-heading-01 {
      font-size: 1rem;
   }

   .env-text-table-data-01 {
      font-size: 1rem;
   }
}

/* Sitevision Button */
.sv-marketplace-sitevision-button {
    .env-button:not(.env-button--link) {
        box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
        font-size: 1.25rem;
        font-style: normal;
        font-weight: 700;
        gap: 1rem;
        line-height: 1.875rem;
        padding: 1rem;
        text-align: start;
           
        @media (max-width: 576px) {
           padding: 0.5rem;
           font-size: 1.125rem;
        }
       
        @media (prefers-color-scheme: dark) {
           border-color: currentColor;
        }

        &:focus-visible {
           box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
        }

        &::after {
           background-color: currentColor;
           content: "";
           flex-shrink: 0;
           height: 2rem;
           -webkit-mask: url("/images/18.852cede19b074f078d43e/1767001400852/chevron-right.svg") no-repeat center / contain;
           mask: url("/images/18.852cede19b074f078d43e/1767001400852/chevron-right.svg") no-repeat center / contain;
           width: 2rem;
        }
        
        .env-icon {
           display: none;
        }
    }
    .env-button--ghost {
       @media (prefers-color-scheme: dark) {
          background-color: var(--env-element-background-color);
    		 border-color: var(--env-element-background-color);
    		 color: var(--env-element-font-color);
         
          &:hover {
          	background-color: var(--env-element-background-color-dark);
          }
       }
    }
    .env-button--link {
       padding-left: 0;
       font-family: var(--env-text-body-01-font-family);
    	 font-size: var(--env-text-body-01-font-size);
    	 font-style: var(--env-text-body-01-font-style);
    	 font-weight: var(--env-text-body-01-font-weight);
    	 letter-spacing: var(--env-text-body-01-letter-spacing);
    	 line-height: var(--env-text-body-01-line-height);
       text-decoration: var(--env-text-body-01-link-text-decoration);
         
       &:hover {
          text-decoration: var(--env-text-body-01-link-hover-text-decoration);
       }
    }
    .env-button--link:not(.env-button--icon) {
       padding: 0;
    }
    .env-cta {
      .env-icon {
         display: none;
      }
   }
}

/* Vänstermenyn sticky Innehållssida*/


/*Endast i firefox*/
@-moz-document url-prefix() {
  .toc-sticky {
    scrollbar-width: auto;
    scrollbar-color: #3B3C43 #C6C2B6;
  }
}

.toc-sticky {
   max-width: 419px;
   position: sticky;
	/*float: left;*/
	top: 10px;
   max-height: calc(100vh - 20px);
   overflow-y: auto;
   /*padding: 0.5rem 1.5rem 0.5rem 0.5rem;*/
   padding-right: 1.5rem;
   
   @media (max-width: 904px) {
   	max-width: 35.5rem;
      /*padding: 0.5rem 0;*/
      padding-right: 0;
   }
}
   
.toc-sticky::-webkit-scrollbar {
    width: 8px;
}

.toc-sticky::-webkit-scrollbar-track {
  background-color: #C6C2B6;
  border-left: 3.5px solid transparent;
  border-right: 3.5px solid transparent;
  background-clip: padding-box;
   @media (prefers-color-scheme: dark) {
            background-color: #f7f3e4;
        }

}

.toc-sticky::-webkit-scrollbar-thumb {
    background-color: #3B3C43;
    border-radius: 10px;
   	@media (prefers-color-scheme: dark) {
            background-color: #f7f3e4;
        }
}




/* Sitevision Punktlistor*/
.sv-list-style-punktlista-blubbar {
   padding: 0;
   
  	li .sv-list-style-punktlista-blubbar {
      padding-left: 1rem; 
   }
   
   li {
      position: relative;
      padding-left: 1rem;
   }
   
   li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 7px;
    height: 8px;
    margin-right: 8px;
    margin-bottom: 2px;
    background-image: url("/images/18.62a1d36619cdcee66d49/1773310869168/Blubb.svg");
    background-size: contain;
    background-repeat: no-repeat;
  }
 }

/* Sitevision Lista utan styling */
 
.sv-list-style-lista-utan-styling ul {
   padding-left: 1.5rem;
}

/* Marginaler på ikoner efter länkar*/

.env-link-icon {
   margin-left: 0.5rem;
}

/* Sitevision Tags */
.sv-marketplace-sitevision-show-tags {
   ul {
      gap: 0.25rem;
      
      &::before {
         content: "";
         display: inline-block;
         width: 1.25rem;
         height: 1.25rem;
         flex-shrink: 0;

         background:
            url("/images/18.852cede19b074f078d444/1766996782629/tag.svg")
               calc(50% + 0.07rem) calc(50% + 0.07rem) / 0.875rem 0.875rem no-repeat,
            url("/images/18.852cede19b074f078d443/1766996444723/Blubb%20-%20Boll.svg") 
               center / cover no-repeat;
		}
      
      p {
         color: var(--env-text-body-03-font-color);
         font-family: var(--env-text-body-03-font-family);
         font-size:var(--env-text-body-03-font-size);
         font-style: var(--env-text-body-03-font-style);
         font-weight: var(--env-text-body-03-font-weight);
         line-height: var(--env-text-body-03-line-height);
   	}  
   }
}

/* Sitevision To Top */
.sv-marketplace-sitevision-toTop {
    button {
       border: 1px solid var(--env-element-font-color);
          
       @media (max-width: 576px) {
          min-height: auto;
          
          div {
             height: 2rem;
             width: 2rem;
          }
       }
          
       &:hover, &:focus {
          border: 1px solid var(--env-element-font-color);
       }
    }
}

/* Sitevision Cookiebanner */
.sv-marketplace-sitevision-cookie-consent {
   .env-dialog {
      border: none;
    	border-radius: 5px;
    	box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
         
      .env-dialog__title {
      	border-bottom: 0;
      	padding: 1.5rem 1.5rem 0 1.5rem;
   	}
   	.env-dialog__main {
      	padding: 1rem 1.5rem 1rem 1.5rem;
   	}
   	.env-dialog__controls {
     		border-top: 0;
      	padding: 0 1.5rem 1.5rem 1.5rem;
   	}
   
   	.env-button {
       	align-items: center;
       	background-color: var(--env-element-background-color);
       	border: 1px solid var(--env-element-background-color);
       	border-radius: var(--env-button-border-radius);
       	box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
       	color: var(--env-element-font-color);
       	cursor: pointer;
       	display: flex;
       	font-family: var(--env-button-font-family);
       	font-size: 0.875rem;
       	font-weight: 500;
       	gap: 0.5rem;
       	min-height: 2rem;
       	padding: 0 1rem;
       
       	@media (prefers-color-scheme: dark) {
    			border-color: var(--env-element-font-color);
		 	}
          
       	&:hover, &:focus {
          	background-color: var(--env-element-background-color-dark);
          	border-color: var(--env-element-background-color-dark);
          	color: var(--env-element-font-color);
          
          	@media (prefers-color-scheme: dark) {
             	border-color: var(--env-element-font-color);
		 	 	}
       	}
         
         &.env-button--icon-before {
            padding-left: 2.5rem;
         }
       
       	svg {
          	flex-shrink: 0;
          	height: 1rem;
          	width: 1rem;
       	}
   	}
   }
}

/*Sökruta i header och sökresultatsida*/
ul.sv-autocomplete-search-result {
 	background-color: var(--env-section-background-color);
      .sv-autocomplete-result-item {
         padding: 6px 20px;
      }
      .sv-autocomplete-result-item:hover  {
         background-color: var(--env-section-background-color-05);
      }
}

/* Shared styling of search modules */
   
.mfof-search__form {
   display: flex;
   justify-content: center;
}
   
.mfof-search__input {
   align-items: center;
   border: none;
   border-radius: var(--env-border-radius);
   display: flex;
   height: 3.125rem;
   margin: 0;
   padding: 0 1rem;
      
   @media (prefers-color-scheme: dark) {
      border: 0.5px solid #C6C2B6;  
      background-color: var(--env-section-background-color);
   }
      
   &:focus-visible {
      box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
      outline: var(--env-focus-size) solid var(--env-focus-outline-color);
      outline-offset: var(--env-focus-offset);
   }
      
   &::placeholder {
      @media (prefers-color-scheme: dark) {
         color: var(--env-element-font-color);
      }  
   }	
}
   
.mfof-search__button {
   align-items: center;
   background-color: var(--env-element-background-color);
   border: 1px solid var(--env-element-background-color);
   border-radius: var(--env-button-border-radius);
   box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
   color: var(--env-element-font-color);
   cursor: pointer;
   display: flex;
   gap: 0.5rem;
   justify-content: center;
   margin: 0;
   min-height: 3.125rem;
   padding: 0 1rem;
            
   @media (prefers-color-scheme: dark) {
      border-color: var(--env-element-font-color);
   }

   &:hover, &:focus {
      background-color: var(--env-element-background-color-dark);
   }

   &:focus-visible {
      box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
      outline: var(--env-focus-size) solid var(--env-focus-outline-color);
      outline-offset: var(--env-focus-offset);
   }
   
   svg {
      flex-shrink: 0;
      height: 1.25rem;
      width: 1.25rem;
   }
}


/* Styling of search in header */
.sv-searchform-portlet {
   
   .mfof-search__form {
      gap: 1.25rem;
      
      @media (max-width: 576px) {
         display: none;
      }
      
      &.active {
         display: flex;
         gap: 1.25rem;
         margin-top: 1rem;
      }
   }
   
   .mfof-search__input {
      max-width: 18.75rem;
      
      @media (max-width: 576px) {
         max-width: 100%;
      }
   }
} 

/* Styling of search faceted */

.sv-facetedsearch-portlet, .kxse-calendar {
   
   margin: 0 auto;
   max-width: 60rem;
   
   .mfof-search__form {
      gap: 0.5rem;
      margin-bottom: 1.88rem;
   }
   
   .mfof-search__input {
      max-width: 29.75rem;
   }
   
   .mfof-search__accordion {
      background-color: var(--env-block-primary-background-color);
   	border-radius: var(--env-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
   	margin: 0 auto;
   	max-width: 35.5rem;
	}

	.mfof-search__accordion-button {
   	align-items: center;
      background-color: var(--env-element-background-color);
      border: none;
   	border-radius: var(--env-button-border-radius);
      color: var(--env-element-font-color);
      cursor: pointer;
      display: flex;
   	gap: 0.5rem;
   	padding: 0.5rem;
      width: 100%;
      
   	@media (prefers-color-scheme: dark) {
      	&[aria-expanded="false"] {
       		border: 1px solid var(--env-element-font-color);  
      	}
	 	}
      
      &:hover, &:focus {
      	background-color: var(--env-element-background-color-dark);
   	}

   	&:focus-visible {
      	box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
      	outline: var(--env-focus-size) solid var(--env-focus-outline-color);
      	outline-offset: var(--env-focus-offset);
   	}
      
   	&[aria-expanded="true"] {
      	background-color: var(--env-block-primary-background-color);
      	color: var(--env-font-color);
   	}
      
   	&[aria-expanded="true"] svg {
      	transform: scaleY(-1);
   	}
   
   	svg {
         flex-shrink: 0;
         height: 1.5rem;
      	transition: transform 0.2s ease;
         width: 1.5rem;
   	}
	}

	.mfof-search__accordion-content {
   	display: none;
   	padding: 0.5rem 1rem 1rem 1rem;
   
   	&.active {
      	display: block;
   	}
	}
   
   .mfof-search__facet-name {
      margin-bottom: 0.25rem;
      margin-top: 0;
   }
   
   .mfof-search__facet-items {
      display: flex;
   	flex-wrap: wrap;
   	gap: 1rem;
      padding-left: 0;
	}
   
   .mfof-search__facet-item {
      align-items: center;
      border-radius: var(--env-button-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
      display: inline-flex;
   }
   
   .mfof-search__facet-item:has(a, button) {
         
      a, button {
         align-items: center;
         background-color: var(--env-element-background-color);
      	border: 1px solid var(--env-element-background-color);
   		border-radius: var(--env-button-border-radius);
         color: var(--env-element-font-color);
         cursor: pointer;
         display: inline-flex;
         min-height: 2rem;
      	padding: 0 1rem;
         text-decoration: none;
      	   
         @media (prefers-color-scheme: dark) {
    			border-color: var(--env-element-font-color);
	 		}
            
         &:hover, &:focus {
            background-color: var(--env-element-background-color-dark);
         	color: var(--env-element-font-color);
         }

         &:focus-visible {
            box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
            outline: var(--env-focus-size) solid var(--env-focus-outline-color);
            outline-offset: var(--env-focus-offset);
         }
      }
   }
   
   .mfof-search__facet-item:not(:has(a, button)) {
     	align-items: center;
      background-color: var(--env-element-font-color);
      border: 1px solid #E5DBB6;
   	border-radius: var(--env-button-border-radius);
      color: var(--env-element-background-color);
      display: inline-flex;
      min-height: 2rem;
      padding: 0 1rem;
      box-shadow: none;
      	    
      @media (prefers-color-scheme: dark) {
         background-color: var(--env-element-background-color);
         border-color: #29292F;
         color: var(--env-element-font-color);          
	 	}
   }
   
   .mfof-search__facet-item.mfof-search__facet-item--selected:has(a, button) {
         
      a, button {
         align-items: center;
 			background-color: var(--env-element-font-color);
      	border: 1px solid var(--env-element-background-color);
         border-radius: var(--env-button-border-radius);
      	color: var(--env-element-background-color);
         display: flex;
         gap: 0.5rem;
         text-decoration: none;
            
         &:hover, &:focus {
            background-color: #BDB59D;
         }
      }

      a::before, button::before {
         content: url("/images/18.15d7613219fffd552cd225b/1788252295754/check.svg");
         height: 1.5rem;
         width: 1.5rem;
      }
   }
   
   .mfof-search__selected-facets {
      align-items: center;
      display: flex;
    	flex-direction: column;
      margin-top: 1.5rem;
   }
   
   .mfof-search__selected-facets-group {
      align-items: baseline;
   	display: flex;
   	gap: 0.25rem;
      
      @media (max-width: 576px) {
         align-items: center;
         flex-direction: column;
      }
	}
   
   .mfof-search__selected-facets-label {
      margin: 0;
      white-space: nowrap;
   }
   
   .mfof-search__selected-facets-item {
      @media (max-width: 576px) {
         text-align: center;
      }
   }
   
   .mfof-search__reset-button {
      align-items: center;
      background-color: var(--env-element-background-color);
      border: 1px solid var(--env-element-background-color);
      border-radius: var(--env-button-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color),0 2px 4px -2px var(--env-box-shadow-color);
      color: var(--env-element-font-color);
      cursor: pointer;
      display: inline-flex;
      gap: 0.5rem;
      margin-top: 0.5rem;
      min-height: 2rem;
      padding: 0 1rem;
      text-decoration: none;

      @media (prefers-color-scheme: dark) {
         border-color: var(--env-element-font-color);
      }

      &:hover, &:focus {
         background-color: var(--env-element-background-color-dark);
         color: var(--env-element-font-color);
      }

      &:focus-visible {
         box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
         outline: var(--env-focus-size) solid var(--env-focus-outline-color);
         outline-offset: var(--env-focus-offset);
      }
      
      &:disabled {
         background-color: var(--env-element-font-color);
      	border: 1px solid #E5DBB6;
         color: var(--env-element-background-color);
         cursor: not-allowed;
            
         @media (prefers-color-scheme: dark) {
         	background-color: var(--env-element-background-color);
         	border-color: #29292F;
         	color: var(--env-element-font-color);          
	 		}
      }
   }
   
   .mfof-search__sort {
   	display: flex;
   	justify-content: space-between;
      margin-bottom: 2rem;
      margin-top: 2rem;
   
   	@media (max-width: 904px) {
      	display: block;
   	}
      
      &.mfof-search__sort--news {
         justify-content: flex-end;
      }
	}
   
   .mfof-search__hit-amount {
      margin: 0;
   }
   
   .mfof-search__dropdown {
      align-items: center;
   	background: none;
   	border: none;
      border-radius: var(--env-border-radius);
   	cursor: pointer;
   	display: flex;
   	gap: 0.5rem;
   	margin: 0;
   
      @media (max-width: 904px) {
         padding: 0;
      }
      
      &:focus-visible {
         box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
         outline: var(--env-focus-size) solid var(--env-focus-outline-color);
         outline-offset: var(--env-focus-offset);
      }
      
      &[aria-expanded="true"] {
         font-weight: 700;
      }

      &[aria-expanded="true"] svg {
         transform: scaleY(-1);
      }

      svg {
         flex-shrink: 0;
         height: 1.25rem;
         transition: transform 0.2s ease;
         width: 1.25rem;
      }
   }
   
   .mfof-search__dropdown-list {
      border: none;
   	border-radius: var(--env-border-radius);
   	box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
   }
   
   .mfof-search__dropdown-link {
      font-size: 1.125rem;
      gap: 0.5rem;
      line-height: 1.75rem;
      text-decoration: none;
      white-space: nowrap;
      
      svg {
         flex-shrink: 0;
         height: 1.5rem;
         width: 1.5rem;
      }
   }
   
   .mfof-search__hits {
      align-items: flex-start;
      display: flex;
		flex-direction: column;
		gap: 1.5rem;
      margin-top: 1.5rem;
   }
   
   .mfof-search__hit {
      background-color: var(--env-block-primary-background-color);
      border-radius: var(--env-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
      padding: 1rem; 
      position: relative;
      width: 100%;

      @media (max-width: 576px) {
         padding: 0.5rem;
      }
      
      &:focus-within {
         box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
         outline: var(--env-focus-size) solid var(--env-focus-outline-color);
         outline-offset: var(--env-focus-offset);
      }
   
   	&.mfof-search__hit--news, &.mfof-search__hit--event {
      	background-color: var(--env-section-background-color);
   	}
   }
   
   .mfof-search__hit-flex {
      display: flex;
      
      @media (max-width: 576px) {
         display: block;
      }
   }
   
   .mfof-search__hit-link {
      text-decoration: none;
      
      &::after {
         content: "";
         inset: 0;
         position: absolute;
      }
   }
   
   .mfof-search__hit-summary {
      max-width: 31.25rem;
      margin-bottom: 0;
      margin-top: 0;
      display: -webkit-box;
      -webkit-line-clamp: 4;
      -webkit-box-orient: vertical;
      overflow: hidden;
      
      @media (max-width: 904px) {
         margin-bottom: 0.5rem;
      }
   }
   
   .mfof-search__hit-left {
      max-width: 34.8rem;
   	width: 100%;
   	display: flex;
   	flex-direction: column;
   	gap: 0.5rem;
      padding-right: 0.5rem;
      
    	@media (max-width: 904px) {
         max-width: 50%;
   	}
      
      @media (max-width: 576px) {
         padding-right: 0;
         max-width: 100%;
   	}
   }
   
   .mfof-search__hit-right {
      border-left-width: 1px;
      border-left-color: var(--env-border-color);
      border-left-style: solid;
      flex: 1;
      padding-left: 1rem;
         
      @media (max-width: 904px) {
         max-width: 50%;
      }
      
      @media (max-width: 576px) {
         border-left: 0;
         border-top-width: 1px;
         border-top-color: var(--env-border-color);
         border-top-style: solid;
         max-width: 100%;
			padding-left: 0;
         padding-top: 0.5rem;
      }
   }
   
   .mfof-search__hit-image-container {
      aspect-ratio: 16 / 9;
      flex: 1;
      max-width: 23.25rem;
      overflow: hidden;
      
      @media (max-width: 904px) {
         max-width: 50%;
      }
      
      @media (max-width: 576px) {
         max-width: 100%;
      }
   }
   
   .mfof-search__hit-image {
      border-radius: var(--env-border-radius);
      height: auto;
      object-fit: cover;
      width: 100%;
   }
   
   .mfof-search__tag-list {
      display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
      
      &.mfof-search__tag-list--horizontal {
         flex-direction: row;
         gap: 1.5rem;
         
         @media (max-width: 904px) {
            flex-direction: column;
         }
      }
   }
   
   .mfof-search__tag {
      display: flex;
      gap: 0.5rem;
      align-items: center;
      
      svg {
         flex-shrink: 0;
         height: 1.5rem;
         width: 1.5rem;
      }
   }
   
   .mfof-search__tag-bg {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 2rem;
      height: 2rem;
      background: url("/images/18.852cede19b074f078d443/1766996444723/Blubb%20-%20Boll.svg") center / cover no-repeat;
   }
   
   .mfof-search__pagination {
      display: flex;
  		justify-content: center;
  		margin-top: 2rem;

      .pagination {
         gap: 1rem;
      }
      
  		.prev {
    		&::before {
            content: '';
            display: inline-block;
				flex-shrink: 0;
            background-color: currentColor;
            height: 1.25rem;
            width: 1.25rem;
            -webkit-mask: url("/images/18.6f928c3219bfe90141a18/1769609684960/chevron-left.svg") no-repeat center / contain;
            mask: url("/images/18.6f928c3219bfe90141a18/1769609684960/chevron-left.svg") no-repeat center / contain;
    		}
  		}

  		.next {
    		&::after {
      		content: '';
      		display: inline-block;
 				flex-shrink: 0;
            background-color: currentColor;
            height: 1.25rem;
       		width: 1.25rem;
            -webkit-mask: url("/images/18.852cede19b074f078d43e/1767001400852/chevron-right.svg") no-repeat center / contain;
            mask: url("/images/18.852cede19b074f078d43e/1767001400852/chevron-right.svg") no-repeat center / contain;
    		}
  		}

  		nav .pagination li a, nav .pagination li span, nav .pagination li button {
          color: var(--env-element-font-color);
          background-color: var(--env-element-background-color);
          border: 1px solid var(--env-element-background-color);
          border-radius: var(--env-button-border-radius);
          box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
          text-decoration: none;
          padding: 0 1rem;
          min-height: 2rem;
          align-items: center;
          display: inline-flex;
          gap: 0.5rem;
          margin: 0;

          @media (prefers-color-scheme: dark) {
          	border-color: var(--env-element-font-color);
          }
      }
   
   	nav .pagination li a, nav .pagination li button:not(:disabled) {
         cursor: pointer;
         
         &:hover,
         &:focus {
            background-color: var(--env-element-background-color-dark);
            color: var(--env-element-font-color);
       	}

         &:focus-visible {
            box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
            outline: var(--env-focus-size) solid var(--env-focus-outline-color);
            outline-offset: var(--env-focus-offset);
         }
   	}
   
      .pagination li span.current, .pagination li button:disabled {
            background-color: var(--env-element-font-color);
            border: 1px solid var(--env-element-background-color);
            color: var(--env-element-background-color);        

      }
   
      .pagination li span.current.prev, .pagination li span.current.next, .pagination li button.prev:disabled, .pagination li button.next:disabled {
            border: 1px solid #E5DBB6;
            font-weight: 500;
      }
   }
   
   .mfof-search__event-col {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      max-width: 10.5rem;
      width: 100%;
      
      @media (max-width: 904px) {
         max-width: 100%;
      }
      
      @media (max-width: 576px) {
         gap: 0.5rem;
         max-width: 8.5rem;
      }
   }
   
   .mfof-search__event-date {
      display: flex;
      flex-direction: column;
      background-color: #F1CFB8;
      border-radius: var(--env-border-radius);
      padding: 0.5rem;
      gap: 0.5rem;
         
      @media (max-width: 904px) {
         align-items: center;
         flex-direction: row;
      }
      
      @media (max-width: 576px) {
         align-items: flex-start;
         flex-direction: column;
         gap: 0;
      }
   }
   
   .mfof-search__event-date-text {
      color: #3B3C43;
   }
   
   .mfof-search__event-text {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
      width: 100%;
   }
   
   .mfof-search__hit-grid {
      display: grid;
      grid-template-columns:
        1fr
        minmax(10rem, 23.25rem);
      grid-template-rows: auto auto;
      grid-template-areas:
        "text image"
        "tags tags";
      gap: 1rem;
      
      &.mfof-search__hit-grid--no-image {
         grid-template-rows: auto;
         grid-template-areas: "text image";
      }
      
      @media (max-width: 904px) {
         grid-template-rows: auto 1fr;
         grid-template-columns: 1fr 1fr;
         grid-template-areas:
           "text image"
        	  "text tags";
         
         &.mfof-search__hit-grid--no-image {
            grid-template-areas:
              "text image"
              "text image";
      	}
      }
      
      @media (max-width: 576px) {
         gap: 0.5rem;
         grid-template-rows: auto auto auto;
         grid-template-columns: 1fr;
         grid-template-areas:
           "text"
           "image"
           "tags";
         
         &.mfof-search__hit-grid--no-image {
            grid-template-areas:
              "text"
              "image"
              "tags";
      	}
      } 
   }
   
   .mfof-search__hit-grid-col-1 {
      grid-area: text;
      display: flex;
      gap: 1rem;
      
      @media (max-width: 904px) {
         flex-direction: column;
      }
      
      @media (max-width: 576px) {
         gap: 0.5rem;
      }
   }
   
   .mfof-search__hit-grid-col-2 {
      grid-area: image;
   }
   
   .mfof-search__hit-grid-col-3 {
      grid-area: tags;
   }
   
   .mfof-search__tag-col {
      border-left-width: 1px;
      border-left-color: var(--env-border-color);
      border-left-style: solid;
      height: 100%;
      padding-left: 1rem;
         
      @media (max-width: 576px) {
         border-left: 0;
         border-top-width: 1px;
         border-top-color: var(--env-border-color);
         border-top-style: solid;
			padding-left: 0;
         padding-top: 0.5rem;
      }
   }
   
   /*FAQ-hits */
   .mfof-search__faq {
      width: 100%;
      
      .mfof-collapsible {
         margin: 0;
         max-width: 100%;
      }
      
      .env-text-body-01 {
         margin: 0 0 1.5rem 0;
        	padding: 0;
      }
   }
}

/*Maxbredd på textbredd och sammanfattning */
main {
    .sv-text-portlet:not(:has(h1, table)), .mfof-page-summary {
        max-width: 35.5rem;
    }
}

/* Skip link */
.mfof-skip-link {
  background: var(--env-section-background-color);
  color: var(--env-font-color);
  font-weight: 700;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  transform: translateY(-100%);
  transition: transform 0.2s ease;
  padding: 0.75rem 1rem;
  z-index: 1000;
}

.mfof-skip-link:focus-visible {
  transform: translateY(0);
   
  .mfof-skip-link__text {
     box-shadow: 0 0 0 var(--env-focus-offset) var(--env-focus-inner-color);
     outline: var(--env-focus-size) solid var(--env-focus-outline-color);
     outline-offset: var(--env-focus-offset);
  }
}

.mfof-skip-link__text {
   border-radius: var(--env-border-radius);
   display: inline-block;
   padding: 0.25rem;
}

/* Sitevision collapsible (global collapsible styling) */
.sv-collapsible-content, .mfof-collapsible {
   margin-bottom: 2rem;
   max-width: 35.5rem;
   
   .env-collapse-header, .env-button {
      align-items: flex-start;
      background-color: var(--env-collapse-background-color);
      border: none;
      border-radius: var(--env-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
      color: var(--env-font-color);
      display: flex;
      font-family: var(--env-text-body-01-font-family);
      font-size: 1.125rem;
      font-weight: 400;
      gap: 0.5rem;
      justify-content: flex-start;
      line-height: normal;
      padding: 1rem 1rem 0 1rem;
      
      @media (max-width: 576px) {
      	font-size: 1rem;
      }
      
      &::before {
         background-color: currentColor;
    		content: "";
         display: inline-block;
         flex-shrink: 0;
    		height: 1.25rem;
    		-webkit-mask: url("/images/18.2310d85619b075896971fc28/1769080303078/chevron-down.svg") no-repeat center / contain;
    		mask: url("/images/18.2310d85619b075896971fc28/1769080303078/chevron-down.svg") no-repeat center / contain;
    		transition: transform 0.2s ease;
         width: 1.25rem;
      }
         
      &.env-collapse--expanded {
         background-color: var(--env-collapse-expanded-background-color);
         border-bottom-left-radius: 0;
         border-bottom-right-radius: 0;
         font-weight: 700;
         
         &::before {
            transform: scaleY(-1);
         }
         
         > span {
            border-bottom: 1px solid var(--env-border-color);
         }
      }
      
      > span {
         line-height: normal !important;
         padding-bottom: 1rem;
         text-align: left;
         width: 100%;
      }
      
      .env-collapse-header--icons {
         display: none;
      }
   }
   
   .env-collapse {
      background-color: var(--env-collapse-expanded-background-color);
      border-bottom-left-radius: var(--env-border-radius);
      border-bottom-right-radius: var(--env-border-radius);
      box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
      padding: 1rem;
         
      p:first-child,
      h1:first-child,
      h2:first-child,
      h3:first-child,
      h4:first-child,
      h5:first-child,
      h6:first-child,
      ul:first-child,
      ol:first-child {
   		margin-top: 0;
		}

		p:last-child,
      h1:last-child,
      h2:last-child,
      h3:last-child,
      h4:last-child,
      h5:last-child,
      h6:last-child,
      ul:last-child,
      ol:last-child {
   		margin-bottom: 0;
		}
   }
}

/* Summary decoration */
.mfof-page-summary {
   margin-bottom: 3rem;
}
.mfof-page-summary {
   .sv-collapsible-content {
      
      .env-collapse-header {
      	background-color: var(--env-block-background-color);
         color: var(--env-block-font-color);
            
         @media (prefers-color-scheme: dark) {
            background-color: var(--env-collapse-background-color);
         }

         &.env-collapse--expanded {
            background-color: var(--env-collapse-expanded-background-color);
            color: var(--env-font-color);
         }
         
         > span {
            border-color: var(--env-border-color);
         }
      }
      
      .env-collapse {
         background-color: var(--env-collapse-expanded-background-color);
            
         p, h1, h2, h3, h4, h5, h6, ul, ol {
            color: var(--env-font-color);
         }
      }
   }
}
/* Higher specificity so the accordion tinter does not overwrite */
body[class*="mfof-collapsible-tinter--"] .mfof-page-summary {
   .sv-collapsible-content {
      
      .env-collapse-header {
      	background-color: var(--env-block-background-color);
         color: var(--env-block-font-color);
            
         @media (prefers-color-scheme: dark) {
            background-color: var(--env-collapse-background-color);
         }

         &.env-collapse--expanded {
            background-color: var(--env-collapse-expanded-background-color);
            color: var(--env-font-color);
            
            > span {
               color: var(--env-font-color);
            }
         }
         
         > span {
            border-color: var(--env-border-color);
            color: var(--env-block-font-color);
         }
      }
      
      .env-collapse {
         background-color: var(--env-collapse-expanded-background-color);
            
         p, h1, h2, h3, h4, h5, h6, ul, ol {
            color: var(--env-font-color);
         }
      }
   }
}

/* Sitevision link meta text */
.env-link-meta {
   font-weight: 300;
}

/* Image puff CSS-rules */
.mfof-image-puff--vertical {
   align-items: flex-start;
	display: flex;
	flex-direction: column;
	position: relative;

	@media (max-width: 904px) {
   	flex-direction: row;
   	margin-bottom: 3rem;
  	 	margin-top: 1rem;
	}

	@media (max-width: 576px) {
   	align-items: center;
   	flex-direction: column;
   	margin-top: 0;
	}

	.mfof-image-puff__image {
   	margin-right: 1rem;
   
   	@media (max-width: 904px) {
      	margin-right: 0;
      	margin-top: -1rem;
      	width: 100%;
   	}
   
   	@media (max-width: 576px) {
      	margin-right: 1rem;
      	margin-top: 0;
      	width: unset;
   	}
	}

	.mfof-image-puff__text {
   	margin-left: 1.5rem;
   	margin-top: -1rem;
   	padding: 2rem 1rem 1rem 1rem;
      width: calc(100% - 1.5rem);
   
   	@media (max-width: 904px) {
      	margin-left: -1rem;
      	margin-top: 0;
      	padding: 1rem 1rem 1rem 2rem;
   	}
   
   	@media (max-width: 576px) {
      	margin-left: 1.5rem;
      	margin-top: -1rem;
      	max-width: 21.75rem;
      	padding: 2rem 1rem 1rem 1rem;
   	}
	}
}

.mfof-image-puff--horizontal {
   align-items: flex-start;
   display: flex;
   padding-top: 1rem;
   position: relative;

   @media (max-width: 576px) {
      align-items: center;
      flex-direction: column;
      margin-top: 0;
   }

   .mfof-image-puff__image {
      margin-top: -1rem;
      width: 100%;

      @media (max-width: 576px) {
         margin-right: 1rem;
         margin-top: 0;
         width: unset;
      }
   }

   .mfof-image-puff__text {
      margin-left: -1rem;
      padding: 1rem 1rem 1rem 2rem;
      width: calc(100% - 1rem);

      @media (max-width: 576px) {
         margin-left: 1.5rem;
         margin-top: -1rem;
         max-width: 21.75rem;
         padding: 2rem 1rem 1rem 1rem;
      }
   }
}

.mfof-image-puff__image {
   aspect-ratio: 1 / 1; 
   border-radius: var(--env-border-radius);
   box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
   max-height: 22.25rem; /* 356px */
   max-width: 22.25rem; /* 356px */
   overflow: hidden;
   z-index: 1;

   img {
      object-fit: cover;
      width: 100% !important;
      height: 100% !important;
   }
}

.mfof-image-puff__text {
   box-shadow: 0 4px 6px -1px var(--env-box-shadow-color), 0 2px 4px -2px var(--env-box-shadow-color);
}

.mfof-image-puff--vertical,
.mfof-image-puff--horizontal {
   &:has(.kxse-image-puff-content__link) {
      &:hover {
         
         .kxse-image-puff-content__link h2, 
         .kxse-image-puff-content__link h3 {
            text-decoration: underline;
            
            .kxse-image-puff-content__icon {
               transform: translateX(0.5rem);
            }
         }
      }
   }
}
/* Article CSS-rules */
.mfof-article__image {
   padding-inline: 3rem;
   
   @media (max-width: 576px) {
      padding-inline: 1rem;
   }
   
   .sv-marketplace-mediaflow-mediaflow,
   .sv-image-portlet {
      aspect-ratio: 16 / 9;
      margin-bottom: -2rem;
      min-height: auto;
      width: 100%;

      img {
         border-radius: 5px;
         height: 100% !important;
         max-height: 100% !important;
         max-width: 100% !important;
         object-fit: cover;
         width: 100% !important;
      }
	}

   .sv-marketplace-mediaflow-mediaflow:has(.env-ui-text-caption),
   .sv-image-portlet:has(.env-text-caption-01) {
      margin-bottom: -3.75rem;
   }

   .env-ui-text-caption, .env-text-caption-01 {
      padding-bottom: 0 !important;
      padding-top: 0 !important;
      text-align: right;
   }
}

.mfof-article__text {
   padding: 4rem 3rem 3rem;

	@media (max-width: 576px) {
   	padding-inline: 1rem;
   }

   h1 {
      text-align: center;
   }
}

.mfof-article__layout {
   @media (max-width: 904px) {
   	justify-content: center;
	}
}

/* Sitevision tables */
table.sv-standard {
   th, td {
      vertical-align: top;
   }
}
.sv-responsive:not(.sv-editing-mode) div.sv-responsiveTable {
   max-width: 100%;
   overflow-x: auto;
}
.sv-responsive:not(.sv-editing-mode) .mfof-table-wrapper div.sv-responsiveTable {
   overflow-x: visible;
}
.sv-tablesorter {
   .tablesorter-header-inner {
      margin-right: 1rem;
   }
}

/* Document template (CSS-rules) */
.mfof-document {
   .mfof-document__header {
      position: sticky;
      top: -90px;
      z-index: 1;

      @media (max-width: 576px) {
         position: static;
      }

      .sv-font-pufftext-toppnavigering {
         margin: 0;
      }
   }

   .mfof-document__row {
      padding-top: 4rem;
      padding-bottom: 8rem;

      @media (max-width: 576px) {
         padding-top: 2.5rem;
      }
   }

   .mfof-document__main {
      padding: 3rem;

      @media (max-width: 576px) {
         padding-block: 1.5rem;
         padding-inline: 1rem;
      }

      h1,
      h2,
      h3,
      h4,
      h5,
      h6,
      a[id^="footnoteref"] {
         scroll-margin-top: 150px;

         @media (max-width: 576px) {
            scroll-margin-top: 0;
         }
      }
   }

   .toc-sticky {
      max-height: calc(100vh - 200px - 66px); /* viewport - header - footer */
      top: 170px;

      @media (max-width: 904px) {
         max-width: 100%;
      }

      @media (max-width: 904px) {
         max-height: 100%;
      }
   }

   .sv-kxse-table-of-content {
      .toc-button {
         background-color: var(--env-background-color);
         color: var(--env-font-color);
         margin-bottom: 0.5rem;
         max-width: 100%;
      }

      .toc-button[aria-expanded="true"] {
         background-color: var(--env-background-color);
      }
   }

   .sv-marketplace-sitevision-toTop {
      button {
         @media (min-width: 577px) {
            bottom: 3.5rem;
         }
         @media (min-width: 905px) {
            bottom: 4.5rem;
         }
      }
   }

   .sv-font-pufftext-toppnavigering {
      margin-top: 0;
   }
}

/* Global overflow hidden class to toggle on body */
.mfof-overflow-hidden {
   overflow: hidden;
}