*{margin:0;padding:0;}

body	{
	margin:0;
	padding:0;
	font-family:var(--font-body);
	font-size:16px;
	line-height:24px;
	background:var(--color-bg);
	color:var(--color-txt);
	font-weight:400;
	}

p {margin-bottom:20px;}

/* -------------------- Farben -------------------- */
:root{
	--color-bg:#FFFFFF;
	--color-white:#FFFFFF;
	--color-blue:#4caac9;
	--color-hdl:#4caac9;
	--color-dark:#333333;
	--color-txt:#555555;
	--color-line:#e3e5e5;
	--font-body:'roboto', Arial;

	/* Fontsize-Skala (rem, Basis 16px) */
	--fs-h1-mobile:1.875rem;   /* 30px */
	--fs-h1-desktop:2.5rem;    /* 40px */
	--fs-h2-mobile:1.5rem;   /* 24px */
	--fs-h2-desktop:2.25rem;   /* 36px */
	--fs-h3-mobile:1.15rem;  /* 21px */
	--fs-h3-desktop:1.875rem;  /* 30px */
	--fs-headline-mobile:1.75rem;  /* 28px – .content-headline */
	--fs-headline-desktop:2.75rem; /* 44px – .content-headline */
	--fs-body-sm:0.95rem;      /* 15.2px – Modul-Fließtext */
  }


/* -------------------- Headlines -------------------- */

h1, h2,h3{font-family:var(--font-body); font-style:normal;color:var(--color-hdl); font-weight: 300;}
.colm-1.blue h1, .colm-1.blue h2,.colm-1.blue h3{color:var(--color-white);}
h1 {font-size:var(--fs-h1-mobile);line-height: 40px;margin:0 0 20px 0;}
h2 {font-size:var(--fs-h2-mobile);line-height: 30px;margin:0 0 20px 0;}
h3 {font-size:var(--fs-h3-mobile);line-height: 21px;margin:0 0 5px 0;}
h4 {font-weight:300;}
/* -------------------- Header -------------------- */
#header .inside {margin:40px 20px 20px 20px;}
.logo {font-size: 26px; letter-spacing:2px;
	text-transform: uppercase;}
.logo span{font-size: 12px;
letter-spacing:7.3px;}
.logo a {color:var(--color-txt); text-decoration:none}

/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 1024px) {
#header .inside {width: 960px; margin:40px auto 20px auto;}
}
/* Desktop (desktop, 1280 and up) */
@media (min-width: 1280px) {
#header .inside  {width: 1100px;}
}
/* -------------------- Stage -------------------- */
#Stage .inside {margin: 0 20px 40px 20px;}

/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 1024px) {
#Stage .inside  {width: 960px; margin:0 auto 40px auto;}
}
	
/* Desktop (desktop, 1280 and up) */
@media (min-width: 1280px) {
#Stage .inside {width: 1100px;}
}


/* -------------------- text lang -------------------- */

.colm-1 {margin:0 0 20px 0;}
.colm-1 .content-text {margin:0 20px 30px 20px;}
.colm-1.feedback ol li {
  border-bottom:1px solid var(--color-white);
  font-style: italic!important;
  padding:10px 0
}
.colm-1.feedback strong{
  display: inline-block;
  font-weight: 300;
  font-style: normal!important;
  padding:0 0 5px 0
}
.colm-1.blue {
	background:var(--color-blue); 
	padding:50px 0 30px 0;
	color:var(--color-white); 
	margin:0 0 50px 0;}
.colm-1.blue.last {margin:0 0 0 0!important;}
.colm-1 ul  {margin: 0 0 20px 20px}
.colm-1 ul li {margin: 0 0 4px 0}
.colm-1 .media img{
	margin: 0 0 20px 0;
	border-radius: 12px;
}
.colm-1.blue ol  {list-style: none;margin: 0 0 20px 0}
.colm-1.blue li  {margin: 0 0 4px 0}

.colm-1.blue ul.links {list-style: none;}
.colm-1.blue .links a {
  list-style: none;
  display: inline-block;
	background:var(--color-white); 
	padding:10px 30px;
	color:var(--color-blue); 
	margin:0 0 10px 0;
text-decoration: none;
border:2px solid var(--color-white);}

.colm-1.blue .links a:hover {
  list-style: none;
  display: inline-block;
	background:var(--color-blue); 
	padding:10px 30px;
	color:var(--color-white); 
	margin:0 0 0 0;
text-decoration: none;
border:2px solid var(--color-white);}

.colm-1 em{
	font-style: normal; 
	font-size: 18px;
	line-height: 28px;
	font-weight: 300;
}
.colm-1 blockquote  {
	color:var(--color-blue); 
	font-style: normal; 
	font-size: 18px;
	line-height: 28px;
	font-weight: 300;
}

.colm-1 ul.links a{
  display: inline-block;
	background-color: var(--color-blue);
  border: 2px solid var(--color-blue);
  color:var(--color-white);
  text-decoration: none;
  padding:10px 30px;
  margin-top:10px!important;
}

.colm-1 ul.links  a:hover{
  display: inline-block;
	background-color: var(--color-white);
  border: 2px solid var(--color-blue);
  color:var(--color-blue);
  text-decoration: none;
  padding:10px 30px;
  margin-top:10px!important;
}
.colm-1 ul.links {list-style: none;}

/* Small Desktop (desktop, 768 and up) */
@media (min-width: 768px) {
.colm-1 .media img{width:300px;float:right;margin: 0 0 0 25px}
.colm-1.blue ul.links li{display: inline-block; margin: 0 5px}
.colm-1 ul.links li{display: inline-block; margin: 0 5px}

}

/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 1024px) {
.colm-1 {margin:0 0 30px 0;}
.colm-1 .content-text {width: 960px; margin:0 auto 30px auto;}
.colm-1 .content-image {width: 960px; margin:0 auto 30px auto;}
.colm-1 .media img{width:350px;float:right;margin: 0 0 0 25px}
.colm-1.blue {
	background:var(--color-blue); 
	padding:60px 0 40px 0;
	color:var(--color-white); 
	margin:0 0 50px 0!important;}
	
}

/* -------------------- Footer -------------------- */
#footer {padding: 0 20px 0 20px; background: var(--color-dark); color: var(--color-white);}
#footer .inside {padding:40px 0;}
#footer .inside .left {margin: 0 0 20px 0;}
#footer .inside ul li {list-style: none;}
#footer .nav-footer a{color: var(--color-white); text-decoration: none;}
#footer .nav-footer a:hover{color: var(--color-white); text-decoration: underline;}

/* Small Desktop (desktop, 768 and up) */
@media (min-width: 768px) {
#footer .left{display: inline-block; width: 50%;}
#footer .nav-footer{
	display: inline-block; 
	float: right; 
	text-align: right; 
	width: 50%;}
}
	
/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 1024px) {
#footer .inside {margin:0 auto;width: 960px;}
}

/* -------------------- Kurse / Termine -------------------- */
.ce_rsce_kurse {
	margin: 0 20px 40px 20px;
	padding: 0 0 40px 0;
/* --- 	border-bottom:1px solid var(--color-line); --- */
}
.ce_rsce_kurse .content-headline {
	text-align: center;
	margin: 0 0 30px 0;
}
.ce_rsce_kurse .subline{
	text-align: center;
	margin: 0 0 30px 0;
}
.ce_rsce_kurse .text {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
.ce_rsce_kurse .termin {
	flex: 0 1 100%;
	background: #f2f7f8;
	border-radius: 10px;
	padding: 25px 20px;
	text-align: center;
	box-sizing: border-box;
}
.ce_rsce_kurse .termin .rte p {
	margin: 0 0 10px 0;
}
.ce_rsce_kurse .termin .rte p:first-child {
	color: var(--color-dark);
	font-weight: 400;
}
.ce_rsce_kurse .termin .rte strong {
	color: var(--color-dark);
	font-weight: 700;
}
.ce_rsce_kurse .termin .rte em {
	font-style: normal;
	color: var(--color-blue);
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
}
.ce_rsce_kurse .termin .rte p:last-child {
	margin-bottom: 0;
}
.ce_rsce_kurse .termin .rte p:last-child span {
	font-weight: 700;
}

/* Small Desktop (desktop, 768 and up) - 2 boxen pro reihe, wachsen bis 1024px mit */
@media (min-width: 768px) {
.ce_rsce_kurse .termin {
	flex: 0 1 calc(50% - 10px);
	max-width: calc(50% - 10px);
}
}

/* Small Desktop (desktop, 1024 and up) - 4 boxen pro reihe */
@media (min-width: 1024px) {
.ce_rsce_kurse {
	width: 960px;
	margin: 0 auto 40px auto;
}
.ce_rsce_kurse .termin {
	flex: 0 1 calc(25% - 15px);
	max-width: calc(25% - 15px);
}
}

/* Desktop (desktop, 1280 and up) */
@media (min-width: 1280px) {
.ce_rsce_kurse {
	width: 1100px;
}
}