/*############# Sayco Actiderma CSS ############*/


@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

:root {  
--actiderma-rot: #ac1b57;  
--blau: #062f67;
--gruen: #6fbc82;
--conni-orange: #f0811a;
--renew-blau: #26316e;
--renew-hellblau: #5aa7dc;

--aquaflush:  linear-gradient(to right, #EC6818 0%, #F3AE24 100%);
--aquaflush-bg:#f6f0ed;
--profem-lila: #662382;
--profem-bg: #b290c0;

}

html {
	scroll-behavior: smooth;
}


body {
font-family: 'Roboto', sans-serif;
font-size: clamp(1rem, 0.8875rem + 0.3125vw, 1.2rem);
line-height: 1.6rem;
color: #727574;
background-color: #ffffff;  
}

/* ------- n3t-Cookie-Banner-Breite ---------*/
.cc_div .bar #s-inr {
  max-width: 44em !important;
}
/* --------------- Navigation ----------------*/

.sp-megamenu-parent > li > a {
font-family: 'Roboto', sans-serif;
font-weight: 700;
font-size: clamp(0.8rem, 0.0709rem + 1.519vw, 1.4rem);
color: var(--blau);
}

.sp-megamenu-parent > li > a:hover {
color: var(--actiderma-rot);
font-weight: 700;
}

.sp-megamenu-parent > li.active > a, .sp-megamenu-parent > li.active:hover > a {
color: var(--actiderma-rot);
font-weight: 700;
}

.sp-megamenu-parent > li:last-child a {
font-family: 'Roboto', sans-serif;
font-weight: 700;
line-height: 2rem;
color: #fff;
background-color: var(--actiderma-rot);
border-radius: 6px;
padding-inline: 1.1rem;
padding-block: clamp(0.2rem, -0.0286rem + 0.4762vw, 0.4rem);
padding-right: 1.2rem;
margin-left: 3rem;
transition: background-color 700ms linear, color 700ms linear;
}

.sp-megamenu-parent > li:last-child > a:hover {
color: #fff;
background-color: var(--blau);
font-weight: 700;
}

.sp-megamenu-parent > li:last-child.active > a{
color: #fff;
background-color: var(--blau);
font-weight: 700;
}

.sp-megamenu-parent > li:last-child.active:hover > a {
color: var(--blau);
background-color: var(--actiderma-rot);
}
/* ----------- Dropdown ------------- */
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
color: var(--actiderma-rot);
font-family: 'Roboto', sans-serif;
font-size: 1.1rem;
font-weight: 700;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
color: var(--blau);
}

/* ----------- Offcanvas ------------- */
.burger-icon {
width: 40px;;
}

.burger-icon > span {
background-color: var(--actiderma-rot);
height: 4px;
margin: 7px 0;
border-radius: 15px;
}

.offcanvas-active .burger-icon > span:nth-child(3), #modal-menu-toggler.active .burger-icon > span:nth-child(3) {
  transform: translate(0, -14px) rotate(45deg);
}

.offcanvas-active .burger-icon > span, #modal-menu-toggler.active .burger-icon > span {
 background-color: rgb(255, 255, 255);
}

.offcanvas-menu {
  backdrop-filter: blur(10px);
  background-color: var(--actiderma-rot);
  color: #ffffff;
}

.offcanvas-menu .offcanvas-inner ul.menu > li {
overflow: visible;
}

.offcanvas-menu .offcanvas-inner ul.menu > li a, .offcanvas-menu .offcanvas-inner ul.menu > li span {
  color: #ffffff;
  font-weight: 500;
}

.offcanvas-menu .offcanvas-inner ul.menu > li a:hover, .offcanvas-menu .offcanvas-inner ul.menu > li a:focus, .offcanvas-menu .offcanvas-inner ul.menu > li span:hover, .offcanvas-menu .offcanvas-inner ul.menu > li span:focus {
  color: var(--blau);
    font-weight: 500;
}

.offcanvas-menu .offcanvas-inner ul.menu li.active a {
  color: var(--blau);
  font-weight: 500;
}

.offcanvas-menu .offcanvas-inner ul.menu > li li a {
  color: #fff;
  font-weight: 500;
  opacity: .7;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > a > .menu-toggler, .offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > .menu-separator > .menu-toggler {
  color: rgba(255,255,255,.5);
}
/* --------------- Button Sprachauswahl ----------------*/
.btn {
padding: .65rem .2rem;
}

.btn-secondary {
  color: var(--blau);
background-color: #fff;
border: inherit;
}

.btn-secondary:hover {
color: #fff;
background-color:var(--actiderma-rot);
border: inherit;
}

.dropdown-menu {
color: var(--blau);  
min-width: 4rem;
margin: 0px;
border: inherit;
box-shadow: 3px 3px 4px hsla(0,0%,0%,0.2);
transition: all 0.5s ease-in-out;
}

.dropdown-menu:hover {
color: #fff;
background-color:var(--actiderma-rot);
}

.sp-module ul > li > a {
color: var(--blau);
}

.dropdown-menu:hover a, .sp-module ul > li > a:hover {
color: #fff;
}

div.mod-languages ul.lang-block li {
padding: .2rem 0;
}

div.mod-languages li {
  margin: 0;
}

div.mod-languages a {
  padding: .2rem;
}
/* --------------- Header Carousel ----------------*/
#sp-title {
  padding-inline: 0px;
}

#carouselSayco .carousel-item img {
border-radius: 20px;  
}

#carouselSayco .carousel-item {
position: relative;
}

#carouselSayco .slider-headline {
position: absolute;
display: block;
left: 3%;
top: 3%;
width: 100%;
height: fit-content;
}

#carouselSayco .slider-headline2 {
position: absolute;
display: block;
left: 3%;
top: 16%;
width: 100%;
height: fit-content;
}

#carouselSayco .slider-headline h2 {
display: inline-block;  
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.3rem, -0.7658rem + 4.3038vw, 3rem);
font-weight: 700;
height: fit-content;
border-top-left-radius: 15px;
border-top-right-radius: 15px;
line-height: clamp(1.4rem, 0.4845rem + 3.9061vw, 4rem);
padding: clamp(0.1rem, -0.0408rem + 0.6009vw, 0.5rem);
}

#carouselSayco .slider-headline2 h2 {
display: inline-block;  
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.3rem, -0.7658rem + 4.3038vw, 3rem);
font-weight: 700;
height: fit-content;
border-bottom-left-radius: 15px;
border-bottom-right-radius: 15px;
line-height: clamp(1.4rem, 0.4845rem + 3.9061vw, 4rem);
padding: clamp(0.1rem, -0.0408rem + 0.6009vw, 0.5rem);
}

/* ---------------Header Produkte ----------------*/
.produkt-header {
	display: grid;
	grid-template-rows: 1fr;
	grid-template-columns: 1fr;
	gap: 0;
	width: 100%;
	height: auto;
  margin-top: 2rem;
}

.produkt-header-bild {
 grid-area: 1 / 1 / 2 / 2;
  display: block;
}


.produkt-header-bild img {
  display: block;
  border-radius: 15px;
}


.produkt-header-logo  {
grid-area: 1 / 1 / 2 / 2;
display: block;
padding: 1rem;
}

.produkt-header-logo img {
width: clamp(3rem, 1.5366rem + 6.2439vw, 7rem);
}



/* --------------- Main Content ----------------
Dient dazu den Badge-Button "Featured" aauf der Startseite abzuschalten.
--- */
#start-profem, #start-actiderma, #start-aquaflush, #start-renew, #start-conni, #kontakt {
  scroll-margin-top: 140px; 
}

.article-details .featured-article-badge {
  display: none;
}

#sp-main-body {
padding: 0 0;
/*margin-top: -2.6em;*/
}

.abstand-section {
margin-top: clamp(1rem, -0.7606rem + 7.5117vw, 6rem); 
}

/* --------------- Kontakt Menü Sticky rechts----------------*/
.kontakt-menu-rechts {
  display: block;
  position: fixed;
  top: 45%;
  right: 0px;
  width: 36px;
  height: auto;
  line-height: 36px;
  text-align: center;
  border-radius: 7px;
  z-index: 1000;
  transition: all .3s ease;

  & .button-kmr {
    display: block;
    color: #fff;
    background-color: var(--actiderma-rot);

    border-top-left-radius: 7px;
    border-bottom-left-radius: 7px;
    margin-bottom: .1rem;
    }

    & .button-kmr:hover {
    color: #fff;
    background-color: var(--blau);
    }
}




h1 { font-size: clamp(1.75rem, 1.4005rem + 0.9709vw, 2.25rem);font-weight: 700; word-break: break-word;}
h2 { font-size: clamp(1.45rem, 1.0655rem + 1.068vw, 2rem);font-weight: 700;word-break: break-word; }
h3 { font-size: clamp(1.35rem, 0.9346rem + 0.8654vw, 1.8rem);font-weight: 700; word-break: break-word;}
h4 { font-size: clamp(1.25rem, 1.0192rem + 0.4808vw, 1.5rem);font-weight: 700;line-height: 1.8rem; word-break: break-word;}
h5 { font-size: clamp(0.75rem, 0.6801rem + 0.1942vw, 0.85rem);font-weight: 700; word-break: break-word;}

.headline1 {
color: #fff;
font-size: 1rem; 
}

p, ul, li, ol ,li{
color: #000;
font-family: 'Roboto'; 
hyphens: auto;
font-weight: 300;
}

.liste1 {
list-style: none;
margin-left: -1.6rem; 
}

.liste1 li:before {
/*content:"\f105";*/
content:"\f054";
font-family: 'Font Awesome 6 Free';
font-weight: 600;
color: var(--gold);
font-size: 1.1rem;
float: left;
padding-right: 0.5rem; 
}

.text-weiss {
  color: #fff;
}

.text-rot{
  color: var(--actiderma-rot);
}

.text-blau {
  color: var(--blau);
}

.bg-rot {
  background-color: var(--actiderma-rot);
}

.bg-orange {
  background-color: var(--conni-orange);
}

.bg-blau {
  background-color: var(--blau);
}

.border-all {
border-radius: 15px;
}



/*------------- Button ---------------*/
.button1 {
font-weight: 600;
border-radius: 6px;
padding-block: 0.4rem;
padding-inline: 2rem;
box-shadow: 3px 3px 4px hsla(0,0%,0%,0.2);
transition: background-color 700ms linear, color 700ms linear;
}

.btn-default {
color: #fff;  
background-color: var(--actiderma-rot); 
}

.btn-default:hover {
color: #fff;  
background-color: var(--blau);
}

.btn-actiderma{
color: var(--actiderma-rot);  
background-color: #fff; 
}

.btn-actiderma:hover {
color: #fff;  
background-color: var(--blau);
}

/* Button "Erhältlich in Ihrer Apotheke" mit PZN.
   Pillenform mit Kreuz-Icon links, zweizeiliger Text; beim Hover kehren sich die Farben um.
   Abstände, Icon und Schrift skalieren fließend von 360px bis 1400px Viewport. */
.btn-apotheke {
  position: relative;
  z-index: 2; /* liegt über dem absolut positionierten Bild der Frau (.acti-inhalt-frau-bild) */
  display: inline-flex;
  align-items: center;
  gap: clamp(10px, 8.62px + 0.3846vw, 14px);
  max-width: 100%;
  padding: clamp(8px, 6.62px + 0.3846vw, 12px) clamp(18px, 15.23px + 0.7692vw, 26px) clamp(8px, 6.62px + 0.3846vw, 12px) clamp(10px, 8.62px + 0.3846vw, 14px);
  color: #fff;
  background-color: var(--blau);
  border: 2px solid var(--blau);
  border-radius: 999px;
  text-decoration: none;
  font-family: 'Roboto', sans-serif;
  line-height: 1.2;
  transition: background-color .2s, color .2s;
}

.btn-apotheke:hover,
.btn-apotheke:focus {
  color: var(--actiderma-rot);
  background-color: #fff;
  text-decoration: none;
}

.btn-apotheke:focus-visible {
  outline: 3px solid #A8AEB8;
  outline-offset: 3px;
}

.btn-apotheke__icon {
  flex: 0 0 auto;
  width: clamp(34px, 30.54px + 0.9615vw, 44px);
  height: clamp(34px, 30.54px + 0.9615vw, 44px);
}

.btn-apotheke__icon circle { fill: #fff; transition: fill .2s; }
.btn-apotheke__icon path   { stroke: var(--blau); transition: stroke .2s; }

.btn-apotheke:hover .btn-apotheke__icon circle,
.btn-apotheke:focus .btn-apotheke__icon circle { fill: var(--actiderma-rot); }

.btn-apotheke:hover .btn-apotheke__icon path,
.btn-apotheke:focus .btn-apotheke__icon path { stroke: #fff; }

.btn-apotheke__text {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.btn-apotheke__label {
  font-size: clamp(12px, 11.31px + 0.1923vw, 14px);
  font-weight: 400;
}

.btn-apotheke__pzn {
  font-size: clamp(16px, 14.96px + 0.2885vw, 19px);
  font-weight: 700;
  letter-spacing: .02em;
}

/* Zwischen 768px und 992px würde der Button das Gesicht der Frau verdecken.
   Er wird nur optisch nach unten versetzt; der Seitenfluss bleibt unverändert. */
@media (min-width: 768px) and (max-width: 991.98px) {
  .btn-apotheke {
    top: 5rem;
  }
}

/*------------- Button Ende----------*/

.start-services {
background-color: var(--actiderma-rot);
border-radius: 20px;  
}

.start-services h3{
color: #fff;
font-weight: 700;
font-size: clamp(0.7rem, 0.1462rem + 1.1538vw, 1.3rem);
padding-left: clamp(1rem, 0.6479rem + 1.5023vw, 2rem);
}
@media (max-width: 767.98px) {
.start-services h3{
font-size: 1.0rem;
padding-left: 2rem;
} 
.start-services img{
max-width: 4em;
} 
.start-services .col-md-3 {
border-bottom: 2px solid #fff;
padding-block: 1rem;
 
}
}
/* --------------- Home Section Actiderma Inhalt ----------------*/
.actiderma-inhalt {
  background-color: var(--actiderma-rot);
  padding: 1.2rem;
  border-radius: 15px;

  & h4 {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 1rem;
  }

  & .act-inhalt {
    list-style: none;
    margin-left: -2rem;
    line-height: 2.1rem;
  }
    & .act-inhalt li{
    display: flex;
    color: #fff;
}

    & .act-inhalt li img{
    width: 1.5rem;
    margin-right: 0.5rem;
}
    & p {
    color: #fff;
}
}

.pzn-button {
  color: #fff;
 border: 1px solid #fff; 
 border-radius: 6px;
 width: fit-content;
}

.acti-inhalt-frau {
position: relative;
height: 200px;
width: 100%;
}

.acti-inhalt-frau-bild {
position: absolute;
right: 0px;
bottom: 0px;
display: flex;
justify-content: end;
}

.acti-inhalt-frau-bild img{
width: 60%;
}

@media (max-width: 991.98px) { 
 .acti-inhalt-frau-bild {
position: absolute;
right: -30px;
bottom: 0px;
display: flex;
justify-content: end;
} 

}


.act-eigenschaften ul li::marker {
    color: var(--actiderma-rot);
    font-size: 3rem;
  }

.act-eigenschaften ul li h5 {
    color: #000;
    font-size: 1.4rem;
    transform: translateY(-6px);
  }

.act-eigenschaften ul li p{
      color: #000;
      transform: translateY(-14px);
}

.act-eigenschaften p small{
      color: #000;
}

.act-eigenschaften p small span{
   font-weight: 700;
}

.act-eigenschaften {
   background-image: url(../../../images/startseite/act-eigenschaften.webp);
   background-repeat: no-repeat;
   background-position: top right;
   background-size: 65%;
}
/* --------------- Home Section Actiderma Haut Detail ----------------*/

#start-haut h3:first-child {
display: inline-block;  
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.2rem, -0.7443rem + 4.0506vw, 2.8rem);
font-weight: 700;
height: fit-content;
border-top-left-radius: 15px;
border-top-right-radius: 15px;
line-height: clamp(1.1rem, -1.2765rem + 4.8875vw, 3rem);
padding: clamp(0.1rem, -0.0408rem + 0.6009vw, 0.5rem);
}

#start-haut h3:nth-child(2) {
display: inline-block;  
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.2rem, -0.7443rem + 4.0506vw, 2.8rem);
font-weight: 700;
height: fit-content;
border-bottom-left-radius: 15px;
border-bottom-right-radius: 15px;
line-height: clamp(1.1rem, -1.2765rem + 4.8875vw, 3rem);
padding: clamp(0.1rem, -0.0408rem + 0.6009vw, 0.5rem);
}

@media (max-width: 767.98px) {
 #start-haut h3:first-child {
font-size: clamp(1.4rem, -0.4000rem + 5.0000vw, 2rem);
line-height: 2.5rem;
padding: 0.5rem;
} 
#start-haut h3:nth-child(2) {
font-size: clamp(1.4rem, -0.4000rem + 5.0000vw, 2rem);
line-height: 2.5rem;
padding: 0.5rem;
}
}

#start-haut p{
color: #000;
margin-top: 2rem;
}

#start-haut p strong{
font-weight: 600;
}

/* ----------neuer Headline Wrapper ------------------*/
.headline-wrapper {
display: flex;
flex-direction: column;
}

.headline-wrapper h1:first-child {
width: fit-content;
color: #ffffff;
font-size: clamp(1.7rem, -0.2443rem + 4.0506vw, 3.3rem);
font-weight: 700;
height: fit-content;
border-top-left-radius: 15px;
border-top-right-radius: 15px;
line-height: clamp(1.1rem, -1.2765rem + 4.8875vw, 3rem);
padding: clamp(0.4rem, 0.1569rem + 0.3922vw, 0.5rem);
}

.headline-wrapper h1:nth-child(2) {
width: fit-content;
color: #ffffff;
font-size: clamp(1.7rem, -0.2443rem + 4.0506vw, 3.3rem);
font-weight: 700;
height: fit-content;
border-bottom-left-radius: 15px;
border-bottom-right-radius: 15px;
line-height: clamp(1.1rem, -1.2765rem + 4.8875vw, 3rem);
padding: clamp(0.4rem, 0.1569rem + 0.3922vw, 0.5rem);
}

@media (max-width: 767.98px) {
.headline-wrapper h1:first-child {
font-size: clamp(1.4rem, -0.4000rem + 5.0000vw, 2rem);
line-height: 2.5rem;
padding: 0.5rem;
} 
.headline-wrapper h1:nth-child(2) {
font-size: clamp(1.4rem, -0.4000rem + 5.0000vw, 2rem);
line-height: 2.5rem;
padding: 0.5rem;
}
}

@media (max-width: 575.98px) { 
.headline-wrapper h1:first-child {
font-size: 1.4rem;
line-height: 1.7rem;
padding: 0.3rem;
margin-bottom: .2rem;
}
.headline-wrapper h1:nth-child(2) {
font-size: 1.4rem;
line-height: 1.7rem;
padding: 0.3rem;
}
}

/*----------Headline Wrapper ende -------------------*/


.haut-detail {
  background-image: url(../../../images/startseite/acti-haut-detail.webp);
   background-repeat: no-repeat;
   background-position: top left;
   background-size: cover; 
   border-radius: 15px;
   min-height: 60vh;
}
@media (max-width: 767.98px) {
.haut-detail {
   background-position: center center;
   min-height: 60vh;
}
}

/* --------------- Home Section Lieferservice ----------------*/
.home-lieferservice {
  background-color: rgba(172, 27, 87,.1);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

#lieferservice h2 {
color: var(--actiderma-rot);
}

#lieferservice p {
color: var(--blau);
}
/* --------------- Home Section Kontakt ----------------*/
#home-kontakt .row {
background-color: var(--actiderma-rot);
border-bottom-left-radius: 15px;
border-bottom-right-radius: 15px;
}

#home-kontakt h2 {
color:#fff;
font-size: clamp(1.6rem, 0.2633rem + 2.7848vw, 2.7rem);
font-weight: 700; 
text-wrap: balance;
word-break: break-word;
padding-block: 0.5rem;
margin-bottom: 0px;
}

#home-kontakt p {
color:#fff;
}

@media (max-width: 767.98px) {
#home-kontakt h2 {
font-size: 2.7rem;
}
}
/* --------------- Home Section Kontakt2 ----------------*/
#home-kontakt2 img {
width: 4rem;
}

#home-kontakt2 img {
margin-right: 1rem;
}

#home-kontakt2 h3 a{
color: var(--actiderma-rot);
}

#home-kontakt2 h3 a:hover{
color: var(--blau);
}
/* --------------- Section Marken Anfang ----------------*/
.start-sec-logo {
width: clamp(6rem, 3.7143rem + 4.7619vw, 8rem);
height: clamp(6rem, 3.7143rem + 4.7619vw, 8rem);
margin: 1rem;
}

@media (max-width: 767.98px) { 
.start-sec-logo {
width: 6rem;
height: 6rem;
margin: 1rem;
}
} 
/* --------------- Section Home Actiderma ----------------*/
.home-actiderma-bild {
   background-image: url(../../../images/startseite/home-actiderma.webp);
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
       border-bottom-left-radius: 15px;
  border-top-left-radius: 15px;
  height: 70vh;
}

@media (max-width: 767.98px) { 
 .home-actiderma-bild {
display: block;
height: 40vh;
border-radius: 15px;
} 
.home-actiderma {
border-radius: 15px;
}
}

.home-actiderma {
  background-color: var(--actiderma-rot);
  border-bottom-right-radius: 15px;
  border-top-right-radius: 15px;

  & h2,p,h4 {
    color: #fff;
  }
    & h4 {
    font-weight: 500;
  }
}


/* --------------- Hautpflege ----------------*/

/* Zwei gestapelte Headline-Balken.
   Eine durchgehende Skala von 360px bis 1400px Viewport, ohne Sprung am Breakpoint.
   Zeilenhöhe, Abstand und Radius hängen an der Schriftgröße (em) und schrumpfen proportional mit. */
#hautpflege h3:first-child,
#hautpflege h3:nth-child(2) {
display: block;
width: fit-content;
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.3rem, 0.7808rem + 2.3077vw, 2.8rem);
font-weight: 700;
line-height: 1.15;
padding: clamp(0.3rem, 0.2308rem + 0.3077vw, 0.5rem);
}

#hautpflege h3:first-child {
margin: 0 0 0.09em 0; /* vorher 0.5rem, jetzt ca. 0.25rem am Desktop */
border-radius: clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px) 0 0;
}

#hautpflege h3:nth-child(2) {
margin-top: 0;
border-radius: 0 0 clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px);
}

.hautpflege-haende-waschen {
   background-image: url(../../../images/hautpflege/hautpflege-haende-waschen.webp);
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
       border-bottom-left-radius: 15px;
  border-radius: 15px;
  height: 70vh;
}

@media (max-width: 767.98px) { 
 .hautpflege-haende-waschen {
display: block;
height: 40vh;
border-radius: 15px;
} 
.hautpflege {
border-radius: 15px;
}
}

/* Liste mit roten Kästchen als Aufzählungszeichen.
   Größe und Abstände in em, damit sie mit der Schrift mitskalieren. */
.li-kasten-rot {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

.li-kasten-rot li {
  position: relative;
  padding-left: 1.3em;
  margin-bottom: 0.4em;
}

.li-kasten-rot li::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc((1.6rem - 0.55em) / 2); /* mittig zur ersten Textzeile (line-height 1.6rem) */
  width: 0.55em;
  height: 0.55em;
  background-color: var(--actiderma-rot);
  border-radius: 2px;
}

#barrierefunktion h3:first-child,
#barrierefunktion h3:nth-child(2) {
display: block;
width: fit-content;
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.3rem, 0.7808rem + 2.3077vw, 2.8rem);
font-weight: 700;
line-height: 1.15;
padding: clamp(0.3rem, 0.2308rem + 0.3077vw, 0.5rem);
}

#barrierefunktion h3:first-child {
margin: 0 0 0.09em 0; /* vorher 0.5rem, jetzt ca. 0.25rem am Desktop */
border-radius: clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px) 0 0;
}

#barrierefunktion h3:nth-child(2) {
margin-top: 0;
border-radius: 0 0 clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px);
}

/* Höhe ergibt sich aus der Breite im Seitenverhältnis des Bildes (1024 × 473),
   dadurch ist das Bild bei jeder Fensterbreite komplett zu sehen. */
.hautpflege-barrierefunktion {
   background-image: url(../../../images/hautpflege/hautpflege-barrierefunktion.webp);
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
  border-radius: 15px;
  height: auto;
  aspect-ratio: 1024 / 473;
  align-self: flex-start; /* verhindert, dass eine Bootstrap-Row die Höhe aufzieht */
}

@media (max-width: 767.98px) { 
 .hautpflege-barrierefunktion {
display: block;
border-radius: 15px;
} 
.hautpflege {

border-radius: 15px;
}
}

#kreislauf h3:first-child,
#kreislauf h3:nth-child(2) {
display: block;
width: fit-content;
color: #ffffff;
background-color: var(--actiderma-rot);
font-size: clamp(1.3rem, 0.7808rem + 2.3077vw, 2.8rem);
font-weight: 700;
line-height: 1.15;
padding: clamp(0.3rem, 0.2308rem + 0.3077vw, 0.5rem);
}

#kreislauf h3:first-child {
margin: 0 0 0.09em 0; /* vorher 0.5rem, jetzt ca. 0.25rem am Desktop */
border-radius: clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px) 0 0;
}

#kreislauf h3:nth-child(2) {
margin-top: 0;
border-radius: 0 0 clamp(8px, 0.33em, 15px) clamp(8px, 0.33em, 15px);
}


/* ---------------------Über uns ----------------------*/
#kunden figcaption {
  color: #000;
  font-size: 0.8rem;
} 
#kunden p {
  color: #000;
} 

.team-area {
border-radius: 15px;

& h1, p {
color: #fff;
}

& h1 {
font-size: 4rem;
font-weight: 400;
}

& img {
border-radius: 15px;
}
}

/* ---------------------Kontaktseite ----------------------*/
#kontakt p, #kontakt td{
  color: #000;
  font-weight: 400;
}

#kontakt h4{
  color: var(--blau);
  font-weight: 600;
}

#kontakt-markengrid {
	display: grid;
	grid-template-rows: auto-fit;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
	gap: 1rem;
	width: 100%;
}

#kontakt-markengrid .markenbox {
  position:relative;
}

#kontakt-markengrid figcaption{
color: var(--blau);
font-size: 0.8rem;
font-weight: 300;
display: flex;
justify-content: center;
}

#kontakt-markengrid .markenbox .marken-infobox{
  position:absolute;
  top: -2rem;
  right: 1rem;
  display: block;
  width: 4rem;
}

#kontakt-markengrid .marken-infobox img {
    box-shadow: none;
    border-radius: 0;
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.2));
}
/* ---------------Impressum/Datenschutz ----------------*/
#impressum h2, #impressum h3, #datenschutz h2, #datenschutz h3 {
  color: var(--actiderma-rot);
}

#impressum a, #datenschutz a {
  color: var(--actiderma-rot);
}

#impressum a:hover, #datenschutz a:hover {
  color: var(--blau);
}

/* --------------- Bottom/Footer ----------------*/
#sp-bottom h5{
color: #fff;
font-weight: 400;
text-transform: uppercase;
}

#sp-bottom :is(p,td,tr,a){
color: #fff;
font-weight: 400;
}

#sp-bottom td a:hover, #sp-bottom li a:hover{
color: var(--blau);
}

#sp-bottom .sp-module ul > li {
display: block;
margin-bottom: 3px;
font-weight: 400;
}

#sp-bottom a img:hover{
box-shadow: 3px 3px 4px hsla(0,0%,0%,0.2);
filter:brightness(106%);
}
#sp-bottom .social-bottom i{
padding-top: 1.4rem;
font-size: 1.7rem;
}

#sp-bottom .social-bottom i:hover{
color: var(--blau);
}
/* --------------- Footer Scroll nach oben----------------*/
.sp-scroll-up {
  display: none;
  position: fixed;
  bottom: 60px;
  right: 0px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  font-size: 16px;
  color:#fff;
  background: var(--actiderma-rot);
  border-top-left-radius: 7px;
  border-bottom-left-radius: 7px;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  z-index: 1000;
  transition: all .3s ease;
}

.sp-scroll-up:hover {
  color: #fff;
  background: var(--blau);
}