/*--------------------------------------------------------------------------------------------------------

# MAIN

--------------------------------------------------------------------------------------------------------*/

html, body {
   height: 100%;
   background: #fbfbfb;
   padding: 0 !important;
}

/*body > div:nth-child(1) {
   height: 100%;
}*/

.sos-grid__standard {
   padding: 0 15px !important;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   width: 100% !important;
}

@media only screen and (max-width: 767px) and (min-width: 1px)
.sos-grid__standard, .sos-grid__standard .sv-row *[class*='sv-column-'], .sos-grid__standard.sv-fluid-grid *[class*='sv-row'] *[class*='sv-column-'] {
    width: 100% !important;
}

h1.heading:first-child {
   margin-top: 0;
}

/*
This will hide the focus indicator if the element receives focus via the mouse,
but it will still show up on keyboard focus.
*/
.js-focus-visible :focus:not(.focus-visible) {
   outline: none;
}

/* Högermeny på mallen Sida med högereny */
.soc-aside-menu {
   border: 1px solid lightgrey;
   border-bottom: 0px;

}

.soc-aside-menu .subheading {
   background-color: #FBF3F4;
   padding: 1rem;
   margin: 0;
   border-bottom: 1px solid lightgrey;
}

.soc-aside-menu li a {
   background-color: white;
    border-bottom: 1px solid lightgrey;
    padding: 1em;
    position: relative;
    display: block;
    text-decoration: none !important;
}

.soc-aside-menu li a:hover {
	text-decoration: underline !important; 
}

.sos-text-center {
   text-align: center;
}

/* Profile picture */
.soc-profile-picture {
   aspect-ratio: 7/9;
}

.soc-profile-picture > div {
   width: 100%;
   height: 100%;
}

.soc-profile-picture img {
   width: 100%;
   height: 100% !important;
   object-fit: cover;
}

/* Contact card */
.soc-contact-card p.sv-font-ingress:last-child,
.soc-contact-card p.sv-font-ingress {
   margin: 0;
}

/* visuallyhidden */
.sos-visuallyhidden {
   width: auto;
   overflow: hidden;
   position: fixed;
   z-index: -1;
   left: 0;
   top: 0;
   text-align: left;
   opacity: 0;
}

.sos-visuallyhidden:focus {
   overflow: visible;
   z-index: 9999;
   color: #fff;
   background-color: #c51025;
   padding: 2px 10px;
   opacity: 1;
}


/* External links */
a img.sv-linkicon {
   position: relative;
   overflow: hidden;
   box-sizing: border-box;
   padding: 8px 15px 0 0;
   background-size: 8px;
   background-repeat: no-repeat;
   background-position: center right;
   background-image: url('/images/18.46061409177d7ef930335c60/1568881618555/%C3%AFcon-external-link.svg');
   opacity: 0.7;
}


/* Mosiac box */
.sos-mosaic-box__txt {
   box-sizing: border-box;
}

@media(max-width: 767px) {
    .sos-mosaic-box__txt {
       width: calc(100% - 2.5em);
    }
}


/*--------------------------------------------------------------------------------------------------------

# FORMS

--------------------------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------------------------------

# ENV-BUTTONS

--------------------------------------------------------------------------------------------------------*/

.sv-tellfriend2-container a.normal,
.env-button {
   padding: .75rem 1rem;
   margin: 0.4rem 0rem;
	border-radius: 4px;
   min-height: none;
   -webkit-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
}

.sv-tellfriend2-container a.normal:hover,
.env-button:hover {
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
}

.sv-tellfriend2-container a.normal,
.env-button.env-button--primary {
   background-color: #e01830;
   color: #fff;
   border-color: #e01830;
/*   font-size: 1.2rem;
   font-weight: bold; */
}

.sv-tellfriend2-container a.normal:hover {
   color: #B40D1E;
   background-color: #fff;
   border-color: #B40D1E;
}

.env-button {
   font-weight: 600;
}

.env-button.env-button--secondary {
   color: #ED1B34;
   background-color: #fff;
   border-color: #ED1B34;
}

.env-button.env-button--secondary:hover {
   background-color: #ED1B34;
   color: #fff;
   border-color: #ED1B34;
}

.env-button--success {
   background-color: #387d4e;
   border-color: #387d4e;
}

.env-button--danger {
   background-color: #B40D1E;
   border-color: #B40D1E;
}

.env-button.env-button--link {
   padding: .25rem;
   font-weight: 800;
/*	font-size: 1.25rem;*/
	line-height: 1.35;
   color: #ED1B34;
}

.env-button.env-button--link:after {
   content: '';
   display: inline-block;
   background-image: url('/images/18.46061409177d7ef9303358c2/1568881618234/icon-arrow-right-red.svg');
   background-position: center right;
   background-repeat: no-repeat;
   background-size: contain;
   height: .875rem;
   width: .5rem;
   margin-left: .5rem;
   -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;

}

.env-button.env-button--link:hover:after {
   margin-left: 1rem;
   -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;

}

.env-button.env-button--ghost {
   background-color: transparent;
   color: var(--env-element-background-color);
}

.env-button.env-button--ghost a {
   color: var(--env-element-background-color);
}

.env-button.env-button--primary.env-button--ghost a {
   color: var(--env-element-primary-background-color);
}




/*--------------------------------------------------------------------------------------------------------

# ENV BUTTONS / DECORATION BUTTONS

--------------------------------------------------------------------------------------------------------*/




/*button {
   cursor: pointer;
}*/

/* Primär knapp 
div[class*="sos-button"] a {
   transition: background-color 0.25s ease-out,color 0.25s ease-out;
}*/

/*.sos-button, 
.sos-button a,
.s-cookie-bar__button--ok{
   display: inline-block;
   text-align: center;
   line-height: 1;
   cursor: pointer;
   -webkit-appearance: none;
   transition: background-color 0.25s ease-out,color 0.25s ease-out;
   vertical-align: middle;
   border: 1px solid transparent;
   border-radius: .1875rem;
   padding: 15px;
   margin: 0 0 16px 0;
   font-size: 16px;
   background-color: #00c3c5;
   color: #fefefe;
}

button.sos-button--red,
.sos-button--red a {
   position: relative;
   border: 2px solid #ed1b34;
   color: #fff!important;
   background: #ED1B34;
   display: inline-block;
   padding: 14px 16px;
   border-radius: .25rem;
}

button.sos-button--red:hover,
.sos-button--red a:hover {
   background: #fff;
   color: #ED1B34!important;
}

.sos-button--red a img.sv-linkicon {
   opacity: 0.7;
   background-color: #fff;
   border-radius: 50%;
   padding: 10px;
   margin: 0px 0 -5px 6px;
   background-position: center;
}

.s-cookie-bar__button--ok,
.sos-button--white a {
   position: relative;
   border: 2px solid #ed1b34;
   color: #ed1b34;
   background: #fff;
   display: inline-block;
   padding: 14px 16px;
   border-radius: .25rem;
}

.sos-button--white a:hover,
.s-cookie-bar__button--ok:hover,
.s-cookie-bar__button--ok:focus{
   background: #ED1B34;
   color: #fff;
   border: 2px solid #ed1b34;
   text-decoration: underline;
}

.sos-button--white a img.sv-linkicon {
   display: none;
}*/

/*--------------------------------------------------------------------------------------------------------

# PAGE - FULL WIDTH

--------------------------------------------------------------------------------------------------------*/

/* Background - each white and grey */
.sos-page-full > div > .sv-vertical.sv-layout:nth-child(even) {
   background: #fff;
   border-bottom: 1px solid rgba(156,158,159,0.1);
   border-top: 1px solid rgba(156,158,159,0.1);
}
.sos-page-full > div > .sv-vertical.sv-layout:nth-child(odd) {
   background: #fbfbfb;
}

.sos-page-full .sos-grid__standard {
   padding-top: 4em!important;
   padding-bottom: 4em!important;
}

/*--------------------------------------------------------------------------------------------------------

# BREADCRUMBS

--------------------------------------------------------------------------------------------------------*/

.sos-breadcrumbs {
   background-color: #fff;
   padding: 0.25rem 0.5rem;
   display: inline-block;
   list-style: none;
   margin-bottom: 1.25rem;
   margin-top: 2rem;
}

.sos-breadcrumbs li,
.sos-breadcrumbs li .normal {
   font-weight: 600;
   display: inline-block;
   font-size: 1rem;
}
.sos-breadcrumbs li a,
.sos-breadcrumbs li a.normal:link {
   text-decoration: none;
   color: #ed1b34;
   font-weight: 600;
}

/*--------------------------------------------------------------------------------------------------------

# BOX

--------------------------------------------------------------------------------------------------------*/

.sos-background__box--red {
   background-color: #ED1B34;
   padding: 70px 15px;
   display: inline-block;
   width: 100%;
}
/*
.sos-background__box--red h2 {
   font-size: 42px;
}*/

.sos-background__box--red * {
   color: #fff;
}

/*--------------------------------------------------------------------------------------------------------

# PUFF

--------------------------------------------------------------------------------------------------------*/

.sos-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

/* PUFF - ELEMENT */
.sos-row .sv-custom-module {
   width: 33.333%;
   padding: 15px;
   margin-bottom: 2em;
}

.sos-panel-linkfont {
   text-decoration: none;
}
.sos-panel {
   text-align: center;
   display: flex;
   justify-content: center;

}
.sos-panel-heading {
   position: relative;
}

.sos-panel a:hover .sos-links__icon-arrow:before {
   width: 20px;

}

.sos-panel-img {
   display: inline-block;
   width: 150px;
   height: 150px;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   border-radius: 50%;
}


.sos-panel .sos-links__icon-arrow {
   position: relative;
   right: auto;
}

.sos-panel-heading {
   position: relative;
   margin: 10px 0;
}

.sos-panel-heading h2 {
   color: #ed1b34;
   display: inline;
   align-items: center;
   justify-content: center;
   padding-right: 30px;
   position: relative;
}

.sos-panel .sos-links__icon-arrow {
   position: absolute;
   right: -15px;
   bottom: 5px;
}

.sos-panel-link {
   text-align: left;
}


.sos-panel-linkfont {
   text-decoration: none;
}
.sos-panel {
   text-align: center;
   display: flex;
   justify-content: center;

}
.sos-panel-heading {
   position: relative;
}

.sos-panel a:hover .sos-links__icon-arrow:before {
   width: 20px;

}

.sos-panel-img {
   display: inline-block;
   width: 150px;
   height: 150px;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   border-radius: 50%;
}


.sos-panel .sos-links__icon-arrow {
   position: relative;
   right: auto;
}

.sos-panel-heading {
   position: relative;
   margin: 10px 0;
}

.sos-panel-heading h2 {
   color: #ed1b34;
   display: inline;
   align-items: center;
   justify-content: center;
   padding-right: 30px;
   position: relative;
}

.sos-panel .sos-links__icon-arrow {
   position: absolute;
   right: -15px;
   bottom: 5px;
}

.sos-panel-link {
   text-align: left;
}

.sos-links__icon {
   margin: 0;
   padding: 0;
   list-style: none;
   display: flex;
   flex-wrap: wrap;
}

.sos-links__icon li {
   display: flex;
   justify-content: center;
   position: relative;
   z-index: 1;
   flex: 0 0 16.66667%;
   max-width: 16.66667%;
   padding: 0 20px;
   margin: 0;
}

.sos-links__icon li a {
   display: flex;
   justify-content: center;
   padding: 1.25rem;
   padding-top: 130px;
   position: relative;
   width: 100%;
   text-indent: -10px;

   background-size: 70px;
   background-repeat: no-repeat;
   background-position: top 20px center;
}

.sos-links__icon-text--container {
   display: flex;
   position: relative;
}

.sos-links__icon li h2 {
   margin: 0;
   line-height: 1.25rem;
   font-weight: 900;
   font-size: 1.125rem;
   color: #ed1b34;
}

.sos-links__icon-item a:hover:after {
   background: #f2f2f2;
   height: 110px;
   width: 110px;
   display: block;
   top: 0;
   left: 50%;
   transform: translate(-50%, 0);
   content: "";
   border-radius: 100px;
   position: absolute;
   z-index: -1;
}

.sos-links__icon-arrow {
   position: absolute;
   display: inline-flex;
   align-items: center;
   margin-left: 8px;
   transition-duration: .2s;
   pointer-events: none;
   width: 35px;
   height: 20px;
   right: -40px;
}

.sos-links__icon-arrow:before {
   content: "";
   position: relative;
   right: -8px;
   width: 0;
   height: 4px;
   transition-duration: .2s;
   transition-property: width,right;
   opacity: 1;
   background: #ed1b34;
   display: inline-block;
}

.sos-links__icon-arrow:after {
   content: "";
   background-image: url("/images/18.46061409177d7ef9303358c2/1568881618234/icon-arrow-right-red.svg");
   background-repeat: no-repeat;
   background-position: center;
   height: 14px;
   width: 14px;
   display: inline-block;
   right: 0;
}

a:hover .sos-links__icon-arrow:before {
   width: 20px;
}

@media (max-width: 1024px) {
      /* PUFF - ELEMENT */
   .sos-row .sv-custom-module {
      width: 50%;
      margin-bottom: 1em;
   }
   .sos-panel-linkfont {
      text-align: left;
   }

   .sos-panel {
      justify-content: flex-start;
   }

   .sos-panel-img {
      width: 100px;
      height: 100px;
      margin-right: 20px;
   }

   .sos-panel-inner {
      display: flex;
   }

   .sos-panel-heading h2 {
      margin-top: 0;
      font-size: 24px;
   }

   .sos-panel .sos-links__icon-arrow {
      bottom: 3px;
   }
}

@media (max-width: 767px) {
    /* PUFF - ELEMENT */
   .sos-row .sv-custom-module {
      width: 100%;
      margin-bottom: 1em;
   }

   .sos-panel .sos-links__icon-arrow {
      /*right: 0;*/
      bottom: 0;
   }

   .sos-panel-heading h2 {
      font-size: 18px;
   }
}

/*--------------------------------------------------------------------------------------------------------

# PINK BOX

--------------------------------------------------------------------------------------------------------*/

.sap-pink-box {
   background: #FBF3F4;
}

.sap-pink-box p.normal {
   font-weight: 700;
}

.sap-pink-box .sv-use-margins:first-child h2:first-of-type,
.sap-pink-box .sv-use-margins:first-child h3:first-of-type {
   margin-top: 0;
}

.sap-pink-box .normal:last-child {
   margin-bottom: 0;
}

@media (min-width: 768px) {
   .sap-pink-box {
      padding: 1.5rem 2rem;
      margin: 0rem;
   }

} 

@media (max-width: 767px) {
   .sap-pink-box {
      padding: 1rem;
   }

}

/* ENVISION DROPDOWN - SEARCH FACETS */

.sv-search-facets .env-dropdown button {
   margin-bottom: 0.5rem;
}

.sv-search-facets .env-dropdown button[aria-expanded="true"] svg {
   transform: rotate(-180deg);
}

.sv-search-facets .env-dropdown__menu {
   min-width: 18rem;
   max-width: 18rem;
   display: flex !important;
   flex-direction: column;
}
.sv-search-facets .env-dropdown__menu .env-dropdown__item {
   display: flex;
   gap: 0.75rem;
   min-height: 2.5rem;
}

.sv-search-facets .env-dropdown__menu li a {
   display: flex;
   align-items: center;
   gap: 0.75rem;
   flex-grow: 1;
   height: 100%;
}

.sv-search-facets .env-dropdown__menu li a:before {
   content: "";
   width: 1.125rem;
   height: 1.125rem;
   display: block;
   border-radius: var(--env-border-radius);
   border: 1px solid var(--env-font-color);
   background-color: transparent;
      background-size: 85%;
      background-repeat: no-repeat;
      background-position: center;
}

.sv-search-facets .env-dropdown__menu li.sv-search-facet-item-selected a:before {
   background-color: var(--env-color-brand);
   border-color: var(--env-color-brand);
   background-image: url('/images/18.1a3e8ccf18a1bbdfaf22ec72/1693232626995/icon-checked--white.svg');
}


/* Newslist */
.sos-newslist {
   display:flex;
   flex-direction: column;
}
.sos-newslist--item {
   display: flex;
   gap: 1rem;
   border-bottom: 1px solid var(--env-border-color);
   padding: 2rem 0;
}

.sos-newslist--image {
   min-width: calc(100%/3);
   max-width: calc(100%/3);
}

.sos-newslist--image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.sos-newslist--content {
   flex-grow: 1;
}

.sos-newslist--content a:hover {
   color: var(--env-color-brand);
}

.sos-newslist--content .sos-calender-list__tags {
   margin-top: 1rem;
}

.sap-clickable {
   cursor: pointer;
}

/* Kalender */

.sos-calendar-list {
   display: flex;
   flex-direction: column;
   gap: 2rem;
   margin-bottom: 2rem;
}

.sos-calendar-list__item {
   display: flex;
   border-radius: var(--env-border-radius);
   overflow: hidden;
   background-color: #fff;
   box-shadow: 0;
   transition: all 0.2s ease;
}

.sos-calendar-list__item:hover {
   box-shadow: var(--env-box-shadow-small);
   transform: translateY(-2px);
}

.sos-calendar-list__date {
   width: 11.25em;
    height: 11.25em;
    background-color: rgba(180,13,30,1);
    border-radius: var(--env-border-radius);
    padding: 1.85em 1.875em 2.5em;
    box-sizing: border-box;
    text-align: center;
}

.sos-calendar-list__date time {
   color: var(--env-font-color-invert);
      text-transform: uppercase;
}

.sos-calendar-list__date time.day {
   font-size: 4.375rem;
   font-weight: 600;
}

.sos-calendar-list__date time.month {
   font-size: 1.25rem;
   font-weight: 600;
}


.sos-calendar-list__info {
   display: flex;
   flex-direction: column;
   gap: 1rem;
   padding: 1.85em 1.875em;
}

.sos-calendar-list__info a {
   text-decoration: none;
}

.sos-calendar-list__info h3, .sos-calendar-list__info h1, .sos-calendar-list__info h2 {
   margin: 0;
}

.sos-calendar-list__place {
   font-size: 1rem !important;
}

.sos-calendar-list__summary {
   display: none;
}

.sos-calender-list__tags {
   display: flex;
   flex-wrap: wrap;
   gap: 0.5rem;
   margin-top: 0.5rem;
}

.sos-calender-list__tags .env-badge--neutral {
   background-color: #eee;
   color: #555;
}


/* Startsidemeny */

.sap-sp-menu {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   gap: 2rem;
}

.sap-sp-menu__item {
   display: flex;
   align-items: center;
   gap: 0.5rem;
}

.sap-sp-menu__item.env-button {
   min-width: 20rem;
   height: 6rem;
   border-width: 2px;
   transition: transform 0.2s ease;
   transform: translateY(0rem);
}

.sap-sp-menu__item a {
   font-size: 1.75rem;
   font-weight: 800;
}
@media (min-width: 1440px) {
   .sap-sp-menu__item.env-button:hover {
      transform: translateY(-0.25rem);
   }
}



/* Fix for .env-dropdown  (Safari)*/

/*@media screen and (-webkit-min-device-pixel-ratio:0) {
   ::i-block-chrome .env-dropdown__menu {
      
   }
}*/


/* Typograohy */
.sv-text-portlet p.normal:last-child {
   margin-bottom: 0;
}

.sv-text-portlet p.normal + p.normal {
   margin-bottom: 1em;
}

