/*
Theme Name: Kompetenzzentrum für antisemitismuskritische Bildung und Forschung
Author: WeMakeWebsites / Jonas Langreuter
Author URI: https://wemakewebsites.de
Description: WeMakeWebsites Startertheme / Foundation 6.3
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wmwde2017
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

WeMakeWebsites2017 is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #404040;
	font-family: sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

select {
	border: 1px solid #ccc;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: royalblue;
}

a:visited {
	color: purple;
}

a:hover,
a:focus,
a:active {
	color: midnightblue;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

.main-navigation ul ul {
	float: left;
	position: absolute;
	top: 1.5em;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul a {
	min-width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: 20px;
}

.main-navigation ul > li:hover > ul,
.main-navigation ul > li.focus > ul {
	left: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/* variablen */

:root{
	--fontfamily: 'CamphorProRegular', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;
	--fontfamilybold: 'CamphorProBold', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;
	--fontsize-small: 12px;
	
	--koze-black: #0a0a0a;
	--koze-purple: #8c2e69;
	--koze-lightred: #f06e78;
	--koze-lightblue: #82ced6;
	
	--global-row-gutter-md: 20px;
}

/* off canvas */

button.menu-icon::after{
	display: none;
}

button.menu-icon{
	width: 34px;
	height: 28px;
	position: absolute;
	top: 44px;
	right: 15px;
	z-index: 19;
}

button.menu-icon span{
	width: 34px;
	height: 3px;
	background: #0a0a0a;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	-moz-transition: all 200ms ease-out 0s;
	-webkit-transition: all 200ms ease-out 0s;
	-o-transition: all 200ms ease-out 0s;
	transition: all 200ms ease-out 0s;
}

button.menu-icon span.mimiddle{
	top: 11px;
}

button.menu-icon span.mibottom{
	top: 22px;
}

button.menu-icon[aria-expanded="true"] span.mitop{
	opacity: 0;
}

button.menu-icon[aria-expanded="true"] span.mimiddle{
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

button.menu-icon[aria-expanded="true"] span.mibottom{
	top: 11px;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

#off-canvas-menu{
	padding-top: 120px;
}

#off-canvas-menu,
#off-canvas-menu ul{
	list-style: none;
	margin-left: 0;
}

#off-canvas-menu li{
	padding: 0px 20px 20px 20px;
	text-align: right;
}

#off-canvas-menu ul li{
	padding: 0;
}

#off-canvas-menu a{
	color: #404040;
	font-size: 24px;
	text-transform: uppercase;
	font-family: var(--fontfamilybold);
}

#off-canvas-menu ul a{
	font-size: 16px;
	font-family: var(--fontfamily);
}

/* Kompetenzzentrum */

@font-face {
  font-family: "CamphorProBold";
  src: url('fonts/CamphorProBold/font.woff2') format('woff2'), url('fonts/CamphorProBold/font.woff') format('woff');
}
@font-face {
  font-family: "CamphorProRegular";
  src: url('fonts/CamphorProRegular/font.woff2') format('woff2'), url('fonts/CamphorProRegular/font.woff') format('woff');
}

/* header */

#masthead{
	padding-top: 35px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--koze-purple);
	margin-bottom: 50px;
	position: relative;
}

#masthead .logo,
#masthead .logo img{
	max-width: 150px;
}

#masthead #site-navigation{
	margin-top: 40px;
}

#masthead #site-navigation a,
#masthead #site-navigation a:active,
#masthead #site-navigation a:visited,
#masthead #site-navigation a:focus,
#masthead #site-navigation a:hover{
	font-family: var(--fontfamilybold);
	font-size: 32px;
	line-height: 1;
	text-transform: uppercase;
	padding: 10px 20px;
}

#masthead #site-navigation ul.menu > li:hover > a,
#masthead #site-navigation ul.menu > li.current-menu-item > a,
#masthead #site-navigation ul.menu > li.current-menu-ancestor > a{
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 6px;
}

#masthead #site-navigation ul.menu > li:first-of-type > a{
	padding-left: 0;
}

#masthead #site-navigation .sub-menu{
	background-color: #fff;
	top: 50px;
	padding: 10px 0;
}

#masthead #site-navigation .sub-menu a,
#masthead #site-navigation .sub-menu a:active,
#masthead #site-navigation .sub-menu a:visited,
#masthead #site-navigation .sub-menu a:focus,
#masthead #site-navigation .sub-menu a:hover{
	font-family: var(--fontfamily);
	font-size: 15px;
}

#masthead #site-navigation .sub-menu li:hover a,
#masthead #site-navigation .sub-menu li.current-menu-item a{
	text-decoration: underline;
	text-underline-offset: 4px;
}

#masthead .menu-topmenu-container{
	position: absolute;
	top: 20px;
	right: 20px;
}

.menu li.nosocial a{
	font-family: var(--fontfamilybold);
	font-size: var(--fontsize-small);
	line-height: 1;
	text-transform: uppercase;
	padding-left: 26px;
}

.menu li.nosocial a:hover{
	text-decoration: underline;
	color: var(--koze-purple);
}

.menu li.newsletter a{
	background: url('images/newsletter.svg') 0 6px no-repeat;
	background-size: 18px 18px;
}

.menu li.newsletter a span{
	display: none;
}

.menu li.newsletter a:hover{
	background: url('images/newsletter-color.svg') 0 6px no-repeat;
	background-size: 18px 18px;
}

.menu li.events a{
	background: url('images/events.svg') 0 6px no-repeat;
	background-size: 18px 18px;
}

.menu li.events a:hover{
	background: url('images/events-color.svg') 0 6px no-repeat;
	background-size: 18px 18px;
}

.menu li.social a{
	text-indent: -999rem;
	width: 20px;
	height: 20px;
	background-color: var(--koze-black);
	mask-size: 20px 20px;
    mask-position: center center;
    mask-repeat: no-repeat;
}

.menu li.social:hover a{
	background-color: var(--koze-purple);
}

.menu li.social.facebook a{
    -webkit-mask-image: url('images/facebook.svg');
    mask-image: url('images/facebook.svg');
}

.menu li.social.instagram a{
    -webkit-mask-image: url('images/instagram.svg');
    mask-image: url('images/instagram.svg');
}

.menu li.social.linkedin a{
	width: 23px;
	height: 23px;
	mask-size: 23px 23px;
	-webkit-mask-image: url('images/linkedin.svg');
	mask-image: url('images/linkedin.svg');
}

.menu li.social.bluesky a{
    -webkit-mask-image: url('images/bluesky.svg');
    mask-image: url('images/bluesky.svg');
    mask-size: 24px 24px;
    mask-position: center 1px;
}

.menu li.social.youtube a{
	-webkit-mask-image: url('images/youtube.svg');
	mask-image: url('images/youtube.svg');
	mask-size: 22px 22px;
	mask-position: center 2px;
}

/* general */

a:active, a:focus, a:visited, a:link {
color: var(--koze-black);
outline:0;
outline:expression(hideFocus='true');
}

p a{
	text-decoration: underline;
}

p a:hover{
	color: var(--koze-purple);
}

.alignfull {
	clear: both;
	width: calc(100vw - var(--scrollbar_width));
	max-width: calc(100vw - var(--scrollbar_width));
	margin-left: calc(50% - 50vw + var(--scrollbar_width) / 2);
}

.alignfull > *{
	max-width: 1110px;
	margin: 0 auto;
	padding: 0 15px;
}

h1, h2{
	text-transform: uppercase;
	/* -webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto; */
}

h2.is-style-groesseh1,
h3.is-style-groesseh1,
h4.is-style-groesseh1,
h5.is-style-groesseh1,
h6.is-style-groesseh1{
	font-size: 48px;
}

h1.is-style-mini-ueberschrift
h2.is-style-mini-ueberschrift,
h3.is-style-mini-ueberschrift,
h4.is-style-mini-ueberschrift,
h5.is-style-mini-ueberschrift,
h6.is-style-mini-ueberschrift{
	font-size: var(--fontsize-small);
	text-transform: uppercase;
}

.has-kozepurple-color{
	color: var(--koze-purple);
}

.has-kozepurple-background-color{
	background-color: var(--koze-purple);
}

.has-kozelightred-color{
	color: var(--koze-lightred);
}

.has-kozelightred-background-color{
	background-color: var(--koze-lightred);
}

.has-kozelightblue-color{
	color: var(--koze-lightblue);
}

.has-kozelightblue-background-color{
	background-color: var(--koze-lightblue);
}

#content strong{
	font-weight: normal;
	font-family: var(--fontfamilybold);
}

#content hr.wp-block-separator{
	border-top: 1px solid var(--koze-purple);
	margin: 30px 0;
}

#content hr.wp-block-separator.is-style-notopmargin{
	margin-top: 0;
}

.wp-block-button a.wp-block-button__link{
	background-color: transparent;
	border: 1px solid var(--koze-black);
	font-family: var(--fontfamilybold);
	font-size: var(--fontsize-small);
	text-transform: uppercase;
	padding: 12px 25px 8px;
	margin-bottom: 20px;
	-moz-transition: all 300ms ease-out 0s;
	-webkit-transition: all 300ms ease-out 0s;
	-o-transition: all 300ms ease-out 0s;
	transition: all 300ms ease-out 0s;
}

.wp-block-button a.wp-block-button__link:hover{
	background-color: var(--koze-purple);
	border-color: var(--koze-purple);
	color: #fff;
}

.wp-block-buttons.is-style-farbig .wp-block-button a.wp-block-button__link{
	color: #ffffff;
	background-color: var(--koze-lightred);
	border-color: var(--koze-lightred);
}

.wp-block-buttons.is-style-farbig .wp-block-button a.wp-block-button__link.has-kozelightblue-background-color{
	color: #ffffff;
	background-color: var(--koze-lightblue);
	border-color: var(--koze-lightblue);
}

.wp-block-buttons.is-style-farbig .wp-block-button a.wp-block-button__link:hover{
	color: var(--koze-purple);
	border-color: var(--koze-purple);
	background-color: transparent;
}

.kt-accordion-panel .kt-accordion-header-wrap .kt-blocks-accordion-header .kt-blocks-accordion-title{
	font-size: 16px;
}

/* grid */

.cssgrid3-wrapper{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px 40px;
}

.kb-row-layout-wrap.columngap40 .kt-row-column-wrap{
	column-gap: 40px;
}

@media screen and (max-width: 1023px){
	
	.cssgrid3-wrapper{
		grid-template-columns: repeat(2, 1fr);
		display: grid;
	}	
	
}

@media screen and (max-width: 767px){
	
	.cssgrid3-wrapper{
		grid-template-columns: 1fr;
		display: grid;
	}	
		
}

/* elements */

.wp-block-kadence-pane{
	border-bottom: 1px solid #8c2e69;
}

.kt-blocks-accordion-title{
	font-family: var(--fontfamilybold);
	font-size: 24px;
	line-height: 1.4;
	text-transform: uppercase;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

.kt-blocks-accordion-title:hover{
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 6px;
	cursor: pointer;
}

.kt-accordion-panel-inner a:hover{
	cursor: pointer;
	color: var(--koze-purple);
	text-decoration: underline;
}

.wp-block-kadence-accordion.is-style-withnumbers{
	counter-reset: step;
}

.wp-block-kadence-accordion.is-style-withnumbers .kt-blocks-accordion-title{
	position: relative;
	padding-left: 45px;
}

.wp-block-kadence-accordion.is-style-withnumbers .kt-blocks-accordion-title:before{
   counter-increment: step;
   content: counter(step);
   position: absolute;
   left: 0;
   top: -3px;
   width: 32px;
   height: 32px;
   color: #fff;
   text-align: center;
   font-size: 20px;
   line-height: 35px;
   background: var(--koze-purple);
   -webkit-border-radius: 100%;
   border-radius: 100%;
}

.wp-block-kadence-accordion.is-style-withnumbers .kt-blocks-accordion-title:hover:before{
	background: var(--koze-lightred);
}

.wp-block-kadence-accordion.is-style-withnumbers .kt-blocks-accordion-title:hover{
	color: var(--koze-lightred);
}

.wp-block-embed-youtube .wp-block-embed__wrapper{
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}

.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* alm */

.ajax-load-more-wrap ul{
	list-style: none;
	min-height: 500px;
}

.alm-filters-container .alm-filter{
	margin-bottom: 30px;
}

/* events */

body.single-veranstaltung h1{
	font-size: 2rem;
	margin-bottom: 16px;
}

.event-datetime,
.event-ort{
	font-family: var(--fontfamilybold);
	font-size: 20px;
}

.eventlist-item{
	border-bottom: 1px solid var(--koze-purple);
	padding-bottom: 30px;
	margin-bottom: 45px;
}

.eventlist-item h2{
	font-size: 20px;
}

.eventlist-item .event-datetime,
.eventlist-item .event-ort{
	font-size: 16px;
	font-family: var(--fontfamily);
	margin-bottom: 5px;
}

/* mailchimp */

.mc4wp-form{
	width: 100%;
	max-width: 500px;
}

.mc4wp-form label span{
	font-size: 1rem;
	display: block;
	margin-bottom: 5px;
}

.mc4wp-form input[type="submit"]{
	color: #ffffff;
	background-color: var(--koze-lightred);
	border: 1px solid var(--koze-lightred);
	font-family: var(--fontfamilybold);
	font-size: var(--fontsize-small);
	text-transform: uppercase;
	padding: 12px 25px 8px;
	margin-bottom: 20px;
	-moz-transition: all 300ms ease-out 0s;
	-webkit-transition: all 300ms ease-out 0s;
	-o-transition: all 300ms ease-out 0s;
	transition: all 300ms ease-out 0s;
	border-radius: 9999px;
}

.mc4wp-form input[type="submit"]:hover{
	color: var(--koze-purple);
	background-color: transparent;
	border: 1px solid var(--koze-purple);
}

/* footer */

#colophon{
	margin-top: 50px;
	background-color: var(--koze-purple);
	padding: 25px 0;
	color: #fff;
}

#colophon .site-info{
	position: relative;
}

#colophon .footerlogo{
	max-width: 150px;
}

#colophon #footer-navigation{
	margin-top: 20px;
	padding: 25px 0 17px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#colophon #footer-menu{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: normal;
	align-content: normal;
}

#colophon #footer-menu,
#colophon #footer-menu ul{
	list-style: none;
	margin: 0;
}

#colophon #footer-menu > li{
	vertical-align: inherit;
}

#colophon #footer-menu a,
#colophon #footer-menu a:active,
#colophon #footer-menu a:visited,
#colophon #footer-menu a:focus,
#colophon #footer-menu a:hover{
	color: #fff;
	text-transform: uppercase;
	padding: 0;
	font-family: var(--fontfamilybold);
}

#colophon #footer-menu > li > a{
	font-size: 22px;
	padding-bottom: 10px;
}

#colophon #footer-menu  ul.sub-menu > li > a,
#colophon #footerbottom-menu a{
	font-size: 14px;
}

#colophon #footer-menu > li > a:hover{
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
	padding-bottom: 10px;
}

#colophon #footer-menu  ul.sub-menu > li > a:hover,
#colophon #footerbottom-menu a:hover{
	text-decoration: underline;
	text-underline-offset: 4px;
}

#colophon #footerbottom-menu{
	margin: 25px 0 20px;
}

#colophon #footerbottom-menu a,
#colophon #footerbottom-menu a:active,
#colophon #footerbottom-menu a:visited,
#colophon #footerbottom-menu a:focus,
#colophon #footerbottom-menu a:hover{
	color: #fff;
	text-transform: uppercase;
	font-family: var(--fontfamilybold);
	padding: 0 20px;
}

#colophon #footerbottom-menu li:first-of-type a{
	padding-left:  0;
}

#colophon span.copyright{
	display: block;
	font-size: 11px;
	font-family: var(--fontfamilybold);
	margin: 5px 0;
}

#colophon .menu-topmenu-container{
	position: absolute;
	right: 15px;
	bottom: 35px;
}

#colophon .menu li.events{
	display: none;
}

#colophon .menu li.newsletter{
	position: absolute;
	right: -8px;
	bottom: -40px;
}

#colophon .menu li.newsletter a{
	background: none;
	padding-left: 0;
	color: #ffffff;
}

#colophon .menu li.newsletter a span{
	display: inline-block;
}

#colophon .menu li.newsletter a:hover span{
	text-decoration: underline;
}

#colophon .menu li.social{
	width: 30px;
	height: 30px;
	-webkit-border-radius: 100%;
	border-radius: 100%;
	display: inline-block;
	margin-left: 2px;
	margin-right: 2px;
}

#colophon .menu li.social a{
	background-color: #ffffff;
	width: 30px;
	height: 30px;
	mask-position: 5px 5px;
}

#colophon .menu li.social.linkedin a{
	mask-position: 4px 3px;
}

#colophon .menu li.social.bluesky a{
	mask-position: 3px 5px;
}

#colophon .menu li.social.youtube a{
	mask-position: 4px 4px;
}

#colophon .menu li.social:hover{
	background-color: #ffffff;
}

#colophon .menu li.social:hover a{
	background-color: var(--koze-purple);
}

/* media queries */

@media screen and (max-width: 1023px){
	
	#masthead{
		padding-top: 20px;
		padding-bottom: 20px;
	}
	
	#masthead .menu-topmenu-container{
		top: 40px;
		right: 80px;
	}
	
	#colophon #footerbottom-menu{
		border-top: 1px solid #fff;
		padding-top: 15px;
	}
	
	#footerbottom-menu > li{
		display: table;
	}
	
	#colophon #footerbottom-menu a,
	#colophon #footerbottom-menu a:active,
	#colophon #footerbottom-menu a:visited,
	#colophon #footerbottom-menu a:focus,
	#colophon #footerbottom-menu a:hover{
		padding: 8px 0;
	}
	
	#colophon .menu-topmenu-container{
		bottom: 100px;
	}
		
}

@media screen and (max-width: 767px){
	
	h1, h2, h3{
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
		hyphenate-limit-chars: auto 8;
		hyphenate-limit-lines: 3;
	}
	
	body.single-veranstaltung h1 {
	  font-size: 1.4rem;
  	}
	
	h2.is-style-groesseh1,
	h3.is-style-groesseh1,
	h4.is-style-groesseh1,
	h5.is-style-groesseh1,
	h6.is-style-groesseh1{
		font-size: 32px;
	}
	
	#masthead #topmenu li.social{
		display: none;
	}
	
	#masthead .menu li.nosocial{
		text-indent: -999rem;
	}
	
	#masthead .menu li.nosocial a{
		padding-left: 5px;
		margin-left: 10px;
	}
	
	#colophon .menu-topmenu-container{
		position: relative;
		right: auto;
		bottom: auto;
		padding-bottom: 60px;
	}
	
	#colophon .menu li.newsletter{
		right: auto;
		left: 15px;
		bottom: 10px;
	}
	
	.eventlist-item img{
		margin-bottom: 30px;
	}
	
}


