
/* ++++ Basics ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

*	{ margin: 0; padding: 0; border: 0; text-align: left; list-style-type: none; text-decoration: none; outline: none; }

html { height: 100%; font-family: 'Source', 'Lucida Sans', 'Lucida Sans Unicode', sans-serif; font-weight: 400; font-size: 17px; line-height: 1.471em; /* 17/25 */ }
body	{ height: 100%; background: rgba(205,190,155,0.8); color: black; padding-bottom: 100px; }
img { display: block; }

/* ++++ Layout Hauptcontainer +++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-wrapper { width: 80%; min-width: 960px; max-width: 1160px; margin: 0 auto; position: relative; padding: 50px 0 100px 0; }
.c-page { background: white; width: 70%; padding: 30px 30px 30px 30px; min-height: 80%; }
.c-side { width: calc(28% - 60px); position: absolute; right: 0; top: 50px; }

header a.logo-hor, header a.mobi-trg { display: none; }

footer { padding: 1.0rem 30px 0 30px; font-size: 0.889rem; line-height: 1.25em; /* 16/20 */ }
footer a { color: black; }
footer * { opacity: 0.4; }
footer a:hover { opacity: 0.6; }


/* ++++ Headlines +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

h1, h2 { font-family: 'Bebas', sans-serif; font-weight: bold; text-transform: uppercase; letter-spacing: 0.07rem; color: rgb(90,90,90); }
h1, h2 { color: rgb(205,190,155); }

h1 { padding: 0 0 1.5rem 0; font-size: 2.353rem; line-height: 1.0em; /*  40/40 */ }
h1.h-intro { padding: 0 0 0.588rem 0; font-size: 3.53rem; line-height: 1.0em; /* 60/60 */}
h1.h-intro.h-6 { position: absolute; /* Sonderfall Presse */}
h1.h-intro.start { padding: 0 0 0.5em 0; }

h2 { padding: 0.7em 0 0.7em 0; font-size: 1.529em;  line-height: 1.12em; /* 25/28 */ }
h3 { font-size: 1.176em; padding: 0.647rem 0 0.647rem 0; font-weight: 500; /* 20 */ }
h4 { font-size: 1.0em; padding: 0.3em 0 0.7em 0; font-weight: 500; } 
h5 { font-weight: 500; padding: 0.235em 0 0.235em 0; font-size: 1.0rem; line-height: 1.059em; } /* 17/18 – Teaser */


/* ++++ Absätze, Listen und Auszeichnung ++++++++++++++++++++++++++++++++++++++ */

article p, article ul, article ol { padding: 0 0 0.7em 0; }
ul, ol { overflow: hidden; }
article .c-zweispalter ul li  { list-style-type: none; padding: 0 0 0 15px; position: relative; }
article .c-zweispalter ul li::before { position: absolute; left: 0; top: 0; content: "\25B6"; font-size: 0.706rem; }
article ol li { list-style-type: decimal; margin: 0 0 0 2.0em; }

em, i { font-style: italic; }
strong, b { font-weight: 500; }
del, strike { text-decoration: line-through; }


/* ++++ Hauptnavigation +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

nav.n-main { margin: 50px 0 50px 0; }
nav.n-main ul { font-family: 'Bebas', sans-serif; font-weight: bold; text-transform: uppercase; letter-spacing: 0.07rem; }
nav.n-main ul li { font-size: 1.059rem; line-height: 1.5em; /* 18/27 */ }
nav.n-main ul li a { color: black; opacity: 0.3; }
nav.n-main ul li a:hover, nav.n-main ul li a.aktiv { text-decoration: none; opacity: 0.6; }

article a { color: rgb(173,150,106); }
article a:hover { color: black; } 


/* ++++ Formularelemente ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-formular { width: 80%; margin: 0 0 0 20%; }
.c-label { width: 25%; float: left; padding-top: 0.25rem; }
.c-input { width: 75%; margin: 0 0 0 25%; }
.c-checks, .c-submit { width: 75%; margin: 1.0rem 0 1.0rem 25%; }
.c-error, .c-forminfo { background: rgb(204,0,0); color: white; font-weight: 500; padding: 5px 20px; margin: 0 0 1.5rem 0; }
.c-forminfo { background-color: rgba(20,0,0,0.5); }


textarea, input, select {
	font-family: 'Source', 'Lucida Sans', 'Lucida Sans Unicode', sans-serif; font-size: 1.0rem; line-height: 1.471em; /* 17/25 */
	padding: 5px 5px; margin-bottom: 1.0rem; border: 1px solid rgb(205,190,155); background: rgba(205,190,155,0.2); 
}
select { padding-right: 20px; font-size: 0.882rem; line-height: 1.2em;  /* 15/18 */}
textarea:focus, input:focus { background: white; }
input.basic, textarea { width: calc(100% - 12px); }
label, input[type="submit"] { cursor: pointer; outline: none; font-weight: 500; font-size: 0.882rem; line-height: 1.0em; /* 15/15 */ }
.c-checks label { font-weight: 400; text-transform: none; letter-spacing: 0; }

input[type="submit"] { 
	border: 3px solid; color: rgb(205,190,155); padding: 10px 30px 10px 30px; background: white;
	font-family: 'Bebas', sans-serif; font-weight: bold; text-transform: uppercase; letter-spacing: 0.07rem;
	font-size: 1.059rem; line-height: 1.0em; /* 18/18 */
}
input[type="submit"]:hover { color: rgb(173,150,106); }


.errorlabel { color: rgb(204,0,0); }
.c-formular h4, p.form-info { padding-bottom: 1.0rem; }
.c-formular .c-umfluss-text.noimage { margin: 0 0 0 20%; }


/* ++++ Text-Bild-Boxen +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-zweispalter { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: flex-start; width: 100%; }
.c-zweispalter.rechts { flex-direction: row-reverse; }
.c-zweispalter.border { border-top: 3px solid rgb(205,190,155); }

.c-zweispalter.kasten { flex-direction: row-reverse; }
.c-zweispalter.kasten.rechts { flex-direction: row; }

.c-umfluss { width: calc(40% - 20px); }
.c-umfluss figure { width: 100%; margin: 0.235rem 0 15px 0; }
.c-umfluss figure img { width: 100% !important; height: auto !important; }
.c-umfluss-text { width: 60%; }
.c-umfluss-text.noimage { margin: 0 0 0 40%; }
.c-umfluss-text.border { margin: 0 0 1.5rem 0; border-bottom: 3px solid rgb(205,190,155); }
.c-umfluss h2 { padding: 4px 0 0 0; }

.c-kasten-text { width: calc(40% - 50px); background:  rgba(205,190,155,0.4); padding: 10px; font-size: 0.941rem; line-height: 1.5em; /* 16/24 */}
.c-kasten-text h2 { padding: 0 0 0.7rem 0;  }

article .c-kasten-text ul li::before { content: "\25A0"; font-size: 0.588rem; color: rgb(205,190,155); }

.c-kasten-text .l-start-kurse li { padding: 0.7em 0 0.7em 0; background: none; border-bottom: 2px solid white; }
article .c-kasten-text ul.l-start-kurse li::before { display: none !important; }
.c-kasten-text .l-start-kurse li:last-child { border-bottom: none; }
.c-kasten-text .l-start-kurse li h5 { font-size: 0.941rem; line-height: 1.125em; padding: 0.1em 0 0.1em 0; /* 16/18 */}
.c-kasten-text .l-start-kurse li p { font-size: 0.882rem; line-height: 1.2em; padding: 0; /* 15/18 */}
.c-kasten-text .l-start-kurse li p.datum { font-size: 0.824rem; line-height: 1.0em; text-transform: uppercase; /* 14/14 */ }
.c-kasten-text .l-start-kurse li p a { color: black; }


/* ++++ Sidebar-Boxen +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-sb-box { border-top: 3px solid white; border-bottom: 3px solid white; padding: 0.5rem 0 1.0rem 0; position: relative; }
.c-sb-box.follower { border-top: none; }
.c-sb-box.link { padding-bottom: 2.5rem; }
.c-sb-box.zitat { padding-left: 30px; background: url(/css_gfx/sym_sb_bq.svg) 0 20px no-repeat; background-size: 80px 72px; }
.c-sb-box.noheader { padding-top: 1.5rem; }
.c-sb-box h5, .c-sb-box h5 a { text-transform: uppercase; color: white; }
.c-sb-box p { opacity: 0.8; font-size: 0.882rem; line-height: 1.2em; /* 15/18 */}
.c-sb-box p.autor { text-align: right; font-style: italic; }
.c-sb-box a.mehr { 
	display: block; position: absolute; bottom: 10px; right: 0; width: 20px; height: 18px;
	background: transparent url(/css_gfx/sym_sb_mehr.svg) 0 0; background-size: 20px 18px; 
}


/* ++++ Introseiten +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.l-intro-teaser { 
	display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;
}
/* .l-intro-teaser.col-1,  */.l-intro-teaser.col-6 { display: block; }
.l-intro-teaser.col-6 { width: 60%; }

.l-intro-teaser li { background: none; padding: 0 0 0 0; width: 23%;  padding: 10px 0; border-bottom: 3px solid rgb(205,190,155); position: relative; }
.l-intro-teaser li::before { display: none !important; }
/* .l-intro-teaser.col-1 li { width: 100%; clear: left; } */
.l-intro-teaser.col-2 li { width: calc((100% - 15px) / 2); min-height: 370px; }
.l-intro-teaser.col-3 li { width: calc((100% - 30px) / 3); }
.l-intro-teaser.col-4 li { width: calc((100% - 45px) / 4); min-height: 260px; }
.l-intro-teaser.col-5 li { min-height: 100px; width: calc((100% - 15px) / 2); min-height: 100px;  }
.l-intro-teaser.col-6 li { width: 100%; border: none !important; min-height: 0; padding: 0 0 1.0rem 0 !important; }
/* .l-intro-teaser.col-1 li:nth-child(-n+1), */
.l-intro-teaser.col-2 li:nth-child(-n+2),
.l-intro-teaser.col-3 li:nth-child(-n+3),
.l-intro-teaser.col-4 li:nth-child(-n+4),
.l-intro-teaser.col-5 li:nth-child(-n+2),
.l-intro-teaser.col-6 li:nth-child(-n+1) { border-top: 3px solid rgb(205,190,155); }
/* .l-intro-teaser.col-1 li:nth-child(-n+1), */
.l-intro-teaser.col-2 li:nth-child(-n+2),
.l-intro-teaser.col-3 li:nth-child(-n+3),
.l-intro-teaser.col-4 li:nth-child(-n+4),
.l-intro-teaser.col-5 li:nth-child(-n+2) { margin-top: 1.0rem; }

.l-intro-teaser li img { width: 100% !important; height: auto !important; margin: 0 0 5px 0; }
.l-intro-teaser.col-1 li img { width: 22.75% !important; float: left; margin: 0 0 5px 0; }
.l-intro-teaser.col-5 li img { width: 48.5% !important; float: left; margin: 0 0 5px 0; }


.l-intro-teaser li p { padding: 0; font-size: 0.882rem; line-height: 1.2em; /* 15/18 */ }
/* .l-intro-teaser.col-1 li p, */ .l-intro-teaser.col-2 li p { padding: 0; font-size: 0.941rem; line-height: 1.25em; /* 16/20 */ }
.l-intro-teaser li p a { color: black; }
/* .l-intro-teaser.col-1 li h5, .l-intro-teaser.col-1 li p { margin: 0 0 0 24%; } */
.l-intro-teaser.col-5 li h5, .l-intro-teaser.col-5 li p { margin: 0 0 0 51.5%; }

.l-intro-teaser li a.mehr { 
	display: block; position: absolute; bottom: 10px; right: 0; width: 20px; height: 18px;
	background: rgb(205,190,155) url(/css_gfx/sym_teaser_mehr.svg) 0 0; background-size: 20px 18px; 
}
.l-intro-teaser li a.mehr:hover { background-color: (173,150,106); background-color: black; }


/* ++++ Bilder/~alben +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* figure { position: relative; display: block; } */
figcaption { font-size: 0.882em; margin: 0.3em 0 0 0; font-style: italic; line-height: 1.2em; /* 15/18 */ }
figcaption.invisible { display: none; }

.c-album { 
	margin: 0 0 1.0em 0; overflow: hidden; position: relative; display: -ms-flexbox;  display: -webkit-flexbox;  display: -webkit-flex; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: flex-start;
	-ms-flex-wrap: wrap; -ms-flex-direction: row; -ms-flex-pack: justify; -webkit-flex-wrap: wrap; -webkit-flex-direction: row; -webkit-justify-content: flex-start;
}
.c-album.cycle-slideshow { overflow: visible !important; }
.c-album figure { display: block; height: auto; overflow: hidden; }

.c-album.col-1 figure { width: 100% !important; margin: 0 0 15px 0; }
.c-album.col-2 figure { width: calc((100% - 15px) / 2) !important; margin: 0 15px 15px 0; }
.c-album.col-3 figure { width: calc((100% - 30px) / 3) !important; margin: 0 15px 15px 0; }
.c-album.col-4 figure { width: calc((100% - 45px) / 4) !important; margin: 0 15px 15px 0; }

.c-album.col-2 figure:nth-child(2n), 
.c-album.col-3 figure:nth-child(3n),
.c-album.col-4 figure:nth-child(4n) { margin-right: 0; }

.s-start .c-album.col-1 figure { width: 940px !important; }

.c-album figure img { width: 100% !important; height: auto !important; }
.c-album figure a { display: block; width: 100% !important; height: 100%; }

.cycle-slideshow span.prev, .cycle-slideshow span.next { 
	display: block; position: absolute; width: 40px; height: 67px; cursor: pointer;
	background: transparent 0 0 no-repeat; background-size: 40px 67px; top: 50%; margin-top: -40px; opacity: 0.3; 
}
.cycle-slideshow span.prev { left: -40px; background-image: url(/css_gfx/sym_slider_prev.svg); }
.cycle-slideshow span.next { right: -40px; background-image: url(/css_gfx/sym_slider_next.svg); }
.cycle-slideshow span.prev:hover, .cycle-slideshow span.next:hover { opacity: 0.7;  }

.cycle-slideshow span.cycle-pager { display: block; position: absolute; top: 10px; z-index: 101; left: 10px; cursor:pointer; }
.cycle-slideshow span.cycle-pager span { display: inline-block; width: 8px; height: 8px; border: 2px solid white; margin: 0 5px 0 0; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px;  }
.cycle-slideshow span.cycle-pager span.cycle-pager-active, .cycle-slideshow span.cycle-pager span:hover  { background: white; }


figcaption span.copyright { letter-spacing: 0.02em; color: rgb(125,125,125); font-style: normal; font-size: 0.75rem; /* 12 */ }
.c-float-box figcaption span.copyright { display: block; }

a.fancy { position: relative; display: block; }
a.fancy span { color: white; font-weight: bold; position: absolute; bottom: 2px; right: 3px; line-height: 1.0em; }


/* ++++ Kurzportraits +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-kurzportraits { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
.c-kurzportraits h5 {  }
.c-kurzportraits p { font-size: 0.882rem; line-height: 1.2em; /* 15/18 */ }
.c-kurzportrait-box { border-bottom: 3px solid rgb(205,190,155); position: relative; padding: 1.0rem 0 1.0rem 0; }

.c-kurzportraits.col-5 .c-kurzportrait-box { width: calc((100% - 15px) / 2);  }
.c-kurzportraits.col-2 .c-kurzportrait-box { width: calc((100% - 15px) / 2); }
.c-kurzportraits.col-3 .c-kurzportrait-box { width: calc((100% - 30px) / 3); }

.c-kurzportraits.col-5 .c-kurzportrait-box img { width: 30% !important; height: auto !important; float: left; margin: 0.3rem 15px 15px 0; }
.c-kurzportraits.col-2 .c-kurzportrait-box img { width: 100% !important; height: auto !important; margin: 0.3rem 15px 15px 0; }
.c-kurzportraits.col-3 .c-kurzportrait-box img { width: 100% !important; height: auto !important; margin: 0.3rem 15px 15px 0; }

.c-kurzportraits.col-5 .c-kurzportrait-box:nth-child(-n+2),
.c-kurzportraits.col-2 .c-kurzportrait-box:nth-child(-n+2),
.c-kurzportraits.col-3 .c-kurzportrait-box:nth-child(-n+3)
 { border-top: 3px solid rgb(205,190,155); }


/* ++++ Kursdetailseiten ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

p.label { padding-bottom: 0; }
section.s-kurstermine { border-top: 2px solid rgb(205,190,155); border-bottom: 2px solid rgb(205,190,155); margin: 0 0 1.0rem 0; }
.c-kurstermine { display: flex; border-top: 1px solid rgb(205,190,155); padding: 10px 0 10px 0; }
.c-kurs-nummer { width: 15%;  }
.c-kurs-termin { width: 35%; }
.c-kurs-leiter { width: 25%; }
.c-kurs-buchen { width: 25%; position: relative; }
.c-kurs-buchen input[type="submit"] { padding: 2px 10px; border-radius: 2px; position: absolute; right: 0; font-size: 1.0rem; /* 17 */ }

/* ++++ Kursliste +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-kursliste { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; }
.c-kursliste div {  border-top: 1px solid rgb(200,200,200); }
.c-kursliste div:nth-child(-n+3) {  border-top: none; }
.c-kursliste div:nth-last-child(-n+3) { border-bottom: 1px solid rgb(200,200,200); }
.c-numm { width: 15%; }
.c-kurs { width: 60%; }
.c-date { width: 25%; }
.c-date strong { font-weight: 400; }

/* ++++ Downloads +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

section.s-download { margin: 1.0rem 0 0 40%; padding: 1.0rem 0 0 0; border-top: 3px solid rgb(205,190,155); }
section.s-download:first-of-type { border: none; margin: 0 0 0 40%; }

section.s-download ul li { background: url(/css_gfx/sym_file.svg) 0 0 no-repeat; background-size: 15px 20px; padding: 0 0 0 22px; }
section.s-download ul li::before { display: none; }
section.s-download p.datum { display: inline-block; text-transform: uppercase; padding: 0; font-size: 0.824rem; line-height: 1.0em; /* 14/14 */ }
section.s-download h3 { padding-top: 0; }


/* ++++ Kalenderseiten ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.c-event-perma { display: flex; border-top: 3px solid rgb(205,190,155); padding: 5px 0 5px 0; }
.c-event-datum { width: calc(30% - 15px); padding-right: 15px; }
.c-event-titel { width: 70%; }

.c-event-toggl { padding: 0 0 15px 0; }
.c-event-zeile { display: flex; border-top: 1px solid rgb(205,190,155); padding: 10px 0 0 0; }
.c-event-label { width: calc(30% - 15px); padding-right: 15px; }
.c-event-value { width: 70%; }
.c-event-img figure img { max-width: 100% !important; height: auto !important;}

nav.n-filter ul { display: flex; }
nav.n-filter ul li { background: none; padding: 0 0 0 0; }
nav.n-filter ul li a { display: block; padding: 5px 10px; font-weight: 500; }
nav.n-filter ul li a:first-child { padding-left: 0; }
nav.n-filter ul li a.aktiv { color: black; }


/* ++++ Paginierung +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

nav.n-pagina ul { 
	display: -ms-flexbox;  display: -webkit-flexbox;  display: -webkit-flex; display: flex; flex-wrap: nowrap; justify-content: flex-end; 
	-webkit-flex-wrap: nowrap; -webkit-justify-content: flex-end; -ms-flex-pack: center; margin: 100px 0 0 0; 
}
nav.n-pagina ul li { background: none; padding: 0; }
nav.n-pagina ul li a { 
	display: block; width: 34px; height: 38px; margin: 0 0 0 10px; border: 4px solid rgb(205,190,155); 
	background: rgb(205,190,155) 0 0; background-size: 34px 38px; 
} 
nav.n-pagina ul li#a-next a { background-image: url(/css_gfx/sym_pg_next.svg); }
nav.n-pagina ul li#a-prev a { background-image: url(/css_gfx/sym_pg_prev.svg); } 
nav.n-pagina ul li#a-up a { background-image: url(/css_gfx/sym_pg_up.svg); }
nav.n-pagina ul li#a-top a { background-image: url(/css_gfx/sym_pg_top.svg); } 
nav.n-pagina ul li a:hover { background-color: rgb(173,150,106); border-color: rgb(173,150,106); } 
nav.n-pagina ul li a span { display: block; width: 0; height: 0;  overflow: hidden; }


nav.n-sub ul { 
	display: -ms-flexbox;  display: -webkit-flexbox;  display: -webkit-flex; display: flex; flex-wrap: nowrap; justify-content: flex-end; 
	-webkit-flex-wrap: nowrap; -webkit-justify-content: flex-end; -ms-flex-pack: center; margin: 100px 0 0 0; 
}
nav.n-sub ul li { background: none; padding: 0; }
nav.n-sub ul li a { 
	display: block; margin: 0 0 0 10px; border: 3px solid; color: rgb(205,190,155); padding: 10px 30px 10px 30px; background: white;
	font-family: 'Bebas', sans-serif; font-weight: bold; text-transform: uppercase; letter-spacing: 0.07rem;
	font-size: 1.059rem; line-height: 1.0em; /* 18/18 */
}
nav.n-sub ul li a:hover { color: rgb(173,150,106); }


/* ++++ Invisibles ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.clear { clear: both; height: 0; overflow: hidden; }
img.dick-kurs { margin: 20px 0 15px 280px; }
.c-preloader { width: 100%; height: 100%; background: white url(/css_gfx/preloader.gif) center center no-repeat; position: absolute; z-index: 300; }
.c-preloader.dark { opacity: 0.7; }




