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

# MAIN

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

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

@media (min-height: 1300px) {
   body.sv-theme-socialdemokraterna-ny-profil {
   	--env-font-size-base: 1.125em;
   }
}
@media (min-width: 1440px) {
   body.sv-theme-socialdemokraterna-ny-profil {
   	--env-font-size-base: 1.125em;
   }
}

   
/* Grids */
.sos-grid__standard {
   box-sizing: border-box;
   width: 100% !important;
}
   
.sv-grid-maxgrid header.soc-header, 
.sv-grid-maxgrid footer.sos-footer {
   padding: 0 1rem !important;
}

   .sv-grid-maxgrid.sv-fluid-grid .sv-custom-module.sv-pull-3,
   .sos-grid__standard.sv-fluid-grid .sv-custom-module.sv-pull-3 {
      position: unset !important;
   }

@media (max-width: 767px) {
   .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;
   }
}
   
@media (max-width: 1376px) {
   .sos-grid__standard {
      padding: 0 1rem !important;
   }
}
   
/* Main */
header + main {
	padding-top: 5.125rem;
}

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 var(--env-border-color);
   border-bottom: 0px;
}

.soc-aside-menu .subheading {
   background-color: var(--env-element-secondary-background-color);
   color: var(--env-element-secondary-font-color);
   padding: 1rem;
   margin: 0;
   border-bottom: 1px solid var(--env-element-secondary-background-color);
}

.soc-aside-menu li a {
   background-color: white;
    border-bottom: 1px solid var(--env-border-color);
    padding: 1em;
    position: relative;
    display: block;
    text-decoration: none !important;
    font-size: var(--env-font-size-base);
}

.soc-aside-menu li a:hover {
}

.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 {
   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 {
    -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{
   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;
}




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

# 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: 2rem;
   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: var(--env-color-brand);
   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: var(--env-color-brand);
   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: var(--env-color-brand);
}

.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: var(--env-color-brand);;
   display: inline-block;
}

.sos-links__icon-arrow:after {
   content: "";
   background-color: currentColor;
   mask-image: url("/images/18.46061409177d7ef9303358c2/1568881618234/icon-arrow-right-red.svg");
   mask-repeat: no-repeat;
   mask-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: var(--env-element-secondary-background-color);
  color: var(--env-element-secondary-font-color);
}

.sap-pink-box p.normal {
   color: var(--env-element-secondary-font-color);
   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;
}




/* 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;
}
   
   .pagecontent .sv-image-portlet + .sv-text-portlet,
   .pagecontent .sv-text-portlet + .sv-image-portlet,
   .pagecontent .sv-text-portlet + .sv-MosaicBox,
   .pagecontent .sv-MosaicBox + .sv-marketplace-sitevision-button {
      margin-top: var(--env-font-size-base);
         }
/* Text med profilfärg */   
.sv-font-brand-color {
   font-weight: inherit;
    color: var(--env-ui-color-brand);
 }
   
ul.sv-list-style-colored-list {
   padding-left: 0;
   list-style: none;
}
ul.sv-list-style-colored-list li {
    margin-top: .25rem;
    margin-left: 1.75rem;
    margin-bottom: 1.25rem;
    line-height: 1.4;
   max-width: 750px;
}
   
ul.sv-list-style-colored-list li:before {
    content: '';
    display: inline-block;
    border-radius: 100%;
    height: .625rem;
    width: .625rem;
    background: var(--env-color-brand);
    margin-top: -0.125rem;
    margin-right: 1.125rem;
    margin-left: -1.75rem;
    vertical-align: middle;
}

/** News list 2 columns **/
.sv-archive-portlet:has(.sos-newsbox__columns) ul  {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 1.5rem;
}
.sv-archive-portlet:has(.sos-newsbox__columns) ul li {
   margin-bottom: 0;
   background-color: #FFF;
}
.sv-archive-portlet:has(.sos-newsbox__columns) ul li .sos-newsbox:has(.sos-newsbox__info) {
   flex-direction: column;
}
.sv-archive-portlet:has(.sos-newsbox__columns) ul * {
   box-sizing: border-box;
}
.sv-archive-portlet:has(.sos-newsbox__columns) ul .sos-news__item-img {
   height: initial;
}
.sv-archive-portlet:has(.sos-newsbox__columns) ul .sos-news__item-img img {
   aspect-ratio: 1.91 / 1;
   width: 100%;
   max-width: 100%;
   max-height: initial;
}
.sos-newsbox__columns .sos-news__external-text {
   padding: 1rem 2rem;
}

@media(max-width: 990px) {
   .sv-archive-portlet:has(.sos-newsbox__columns) ul  {
      grid-template-columns: repeat(1, minmax(0, 1fr));
      gap: 1rem;
   }
}