
:root{
  --violet:#5a2982;
  --violet-light:#ae91c1;
  --green:#76b82a;
  --text:#2f3439;
  --heading:#343b44;
  --border:#e6e8eb;
  --content:1200px;
  --reading:860px;
  --speed:.25s ease;
}

*,
*:before,
*:after{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  font:400 17px/1.8 "Source Sans 3",sans-serif;
  color:var(--text);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}

img{display:block;max-width:100%;height:auto}

a{
  color:var(--violet);
  text-decoration:none;
  transition:all var(--speed);
}

#wrapper{overflow:hidden}

.inside{
  width:min(var(--content),calc(100% - 60px));
  margin:auto;
}

/* HEADER */

#header{
  position:relative;
  margin:0;
}

.desktop-nav{
  position:absolute;
  inset:5px 0 auto;
  z-index:20;
}

.desktop-nav ul{
  list-style:none;
  display:flex;
  justify-content:center;
  gap:38px;
  margin:0;
  padding:0 1em 0 0;
  background: rgba(255,255,255,0.7);
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}

.desktop-nav ul{
  padding: 6px;
}

.desktop-nav a,
.desktop-nav strong{
  color:var(--heading);
  font-size: 1rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.1em;
  padding:1px 0;
  border-bottom:2px solid transparent;
}

.desktop-nav a:hover,
.desktop-nav strong{
  color:var(--violet);
  border-color:var(--green);
}

.hero{
  position:relative;
}

.hero figure{
  margin:0;
}

.hero img{
  width:100%;
  height:min(72vh,760px);
  object-fit:cover;
  object-position:right center;
}

.hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(255,255,255,.85) 0%,
      rgba(255,255,255,.80) 22%,
      rgba(255,255,255,.75) 38%,
      rgba(255,255,255,.25) 60%,
      rgba(255,255,255,0) 78%);
  z-index:1;
}

.hero-content{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
}

.hero-content .titel,
.hero-content .datum{
  max-width:var(--content);
  width:100%;
  margin:auto;
}

.titel{
  position:absolute;
  left:25px;
  right:0;
  top:50%;
  transform:translateY(-62%);
}

.titel .rte{
  width:500px;
}

.titel p{
  margin:0;
  font:600 clamp(2.0rem,5vw,2.5rem)/1.02 "Source Serif 4",serif;
  color:var(--heading);
}

.datum{
  position:absolute;
  left:25px;
  right:0;
  top:calc(50% + 125px);
}

.datum .rte{
  width:520px;
}

.datum p{
  margin:0;
  color:var(--green);
  font-size:1.5rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* MAIN */

main{
  padding:90px 0 0;
}

.mod_article{
  max-width:var(--reading);
  margin:0 auto;
}

.content-text{
  max-width:var(--reading);
  margin-inline:auto;
}

h1,h2,h3{
  font-family:"Source Serif 4",serif;
  color:var(--heading);
  font-weight:600;
  line-height:1.12;
}

h1{
  margin:0 0 40px;
  font-size:clamp(1.2rem,4vw,2.2rem);
}

h1:after{
  content:"";
  display:block;
  width:90px;
  height:3px;
  background:var(--green);
  margin-top:22px;
}

h2 { margin-top: 4rem; }

p{margin:0 0 1.4rem}

strong{
  color:var(--heading);
  font-weight:700;
}

#main .content-text:not(:first-child) {
    margin-top: 5rem;
}

/* LOGOS */

.klinik-logos{
  max-width:var(--content);
  margin:110px auto 0;
  padding:55px 0;
  border-top:1px solid var(--border);
}

.klinik-logos p{
  text-align:center;
  font-weight:600;
  margin-bottom:45px;
}

.klinik-logos ul{
  list-style:none;
  display:flex;
  justify-content:space-evenly;
  align-items:center;
  gap:80px;
  padding:0;
  margin:0;
}

.klinik-logos li{
  display:flex;
  justify-content:center;
  align-items:center;
}

.klinik-logos img{
  max-height:90px;
  width:auto;
}



/* ANMELDUNG */

.eveeno{
	margin:2rem 0;
	text-align:center;
}

.eveeno a{
	display:inline-block;
	padding:1rem 2rem;
	background:#5a2982;
	color:#fff;
	font-weight:600;
	text-decoration:none;
	border-radius:6px;
	box-shadow:0 8px 20px rgba(0,0,0,.12);
	transition:
		background .25s ease,
		box-shadow .25s ease,
		transform .25s ease;
}

.eveeno a:hover{
	background:#76b82a;
	box-shadow:0 12px 28px rgba(0,0,0,.18);
	transform:translateY(-2px);
}

.eveeno a:active{
	transform:translateY(0);
}

.eveeno a:focus-visible{
	outline:2px solid #76b82a;
	outline-offset:3px;
}






/* FOOTER */

#footer{
  margin-top:70px;
  border-top:1px solid var(--border);
}

#footer .inside{
  padding:30px 0;
}

#footer ul{
  margin:0;
  padding:0;
  list-style:none;
  text-align:center;
}



/* MOBILE */

@media (max-width:991px){


.mobile_menu_trigger {
  display: initial;
}

.desktop-nav{display:none}

.inside{
  width:min(var(--content),calc(100% - 32px));
}

.hero:before{display:none}

.hero img{
  height:320px;
}

.hero-content{
  position:static;
  display:block;
  padding:35px 0 10px;
}

.titel,
.datum{
  position:static;
  transform:none;
  text-align: center;
}

.titel .rte,
.datum .rte{
  width:auto;
}

.titel p{
  font-size:2.4rem;
}

.datum{
  margin-top:20px;
}

main{
  padding:50px 0;
}

h1{
  font-size:2.2rem;
}

.klinik-logos ul{
  flex-direction:column;
  gap:40px;
}

.klinik-logos img{
  max-height:70px;
}

}

