/* ------------- Main Declarations ------------- */

html, body {
    margin: 0;
    padding: 0 0 8px;
    font-family: "Helvetica", "Arial", sans-serif;
		font-size: 12px;
		color: #444444;
}


a,
a:hover,
a:visited,
a:active {
    color: #2d75b9;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}



div.greybox {

    background-color: #f7f7f7;
    overflow: hidden;

    font-size: 14px;
    line-height: 18px;
    color: #000000;

}

div.greybox h3 {
    color: #555;
    background-color: #e5e5e5;
    border-top: solid 1px #a4b7d9;
    border-bottom: solid 1px #a4b7d9;
    border-left: none;
    border-right: none;
    padding: .2em;
    margin: 0;
    font-size: 1.4em;
}

div.greybox .wrap {
    padding: 10px;
}


.kool-events.teaser {
    width: 290px;
}

ul.teaser {
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 1.5em;
}
li.kItem {
    list-style: none outside none;
    clear: both;
}


.teaser .dateTime {
    display: block;
    float: left;
    width: 90px;
    height: 100%;
}

.teaser .title {
    display: inline-block;
    width: 180px;
}

a.goSingle,
a.goSingle:hover,
a.goSingle:visited {
    font-weight: bold !important;
}




.kool-events.monthlist {
    padding-top: 12px;
    width: 980px;
}

.monthlist .headers {
    padding: 0;
    margin: 14px 0 3px;
    height: 24px;
    background: #666666;
}

.monthlist .headers h3 {
    display: block;
    float: left;
    padding: 0;
    margin: 0;
    height: 24px;
    line-height: 24px;

    font-size: 14px;
    font-weight: normal;
    color: #fff;
}

.monthlist .kItem {
    position: relative;
    display: block;
    padding: 0;
    width: 980px;
    min-height: 48px;

    background: #e4e4e4;
    margin-bottom: 3px;
}

.monthlist .kItem:hover {
    background: #d1d1d1;
}


.monthlist .kItem.d6,
.monthlist .kItem.d7 {
    background: #cae2f8;
}
.monthlist .kItem.d6:hover,
.monthlist .kItem.d7:hover {
    background: #b9cee3;
}

.monthlist .headers h3.calendars,
.monthlist .calendars {
    padding-left: 10px;
    width: 122px;
		margin-top: -15px;
}
.monthlist .headers h3.calendars {
	margin-top:0;
}

.monthlist .time {
    width: 122px;
}

.monthlist .title {
    width: 400px;
}

.monthlist .place {
    width: 326px;
}

.kItem .cal {
    display: block;
    overflow: hidden;
    margin: 3px 0;
    height: 43px;
    width: 35px;
}


.kItem .cal .month {
    height: 15px;
    line-height: 15px;
    background: #ffffff;
    text-align: center;

    font-family: Arial, Verdana, sans-serif;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: #585858;
}

.kItem .cal .day {
    margin-top: 1px;
    height: 27px;
    line-height: 17px;
    background: #fff;
    text-align: center;

    font-family: Arial, Verdana, sans-serif;
    font-size: 17px;
    font-weight: bold;
    color: #000;
}

.kItem .cal .weekDay {
    display: block;
    height: 10px;
    font-size: 8px;
    line-height: 10px;
}

.kItem .cal .nrDay {
    display: block;
}

.kItem .toggle-info {
    font-size: 14px;
    line-height: 18px;
    cursor: pointer;
		padding-top: 15px;
}


.kItem .info {
    box-sizing: border-box;
    display: none;
    width: 100%;
    min-height: 24px;
    padding: 12px 12px 12px 256px;
    font-size: 14px;
    line-height: 16px;
    border-top: 1px solid #fff;
}

.kItem.single .info {
    display: block;
    padding: 0;
    margin: 0;
}

.info .fullTime {
    padding-bottom: 12px;
}

.info .fullTime p {
    margin-top: 4px;
}

.italic {
    font-style: italic;
}

.kItem .info h4 {
    margin: 1em 0 0.15em;
    font-style: italic;
    font-weight: bold;
}


/* Kollekten */
.kItem.offerings {
    display: flex;
    align-items: flex-start;
    width: 100%;
    font-size: 14px;
    line-height: 1.5em;
    border-bottom: 1px solid #000;
}

.kItem.offerings > div {
    padding: 2px 8px;
    margin: 2px 0;
}

.kItem.offerings.titles {
    font-weight: bold;
}

.kItem.offerings .date {
    min-width: 80px;
}

.kItem.offerings .title {
    flex-basis: 800px;
}

.kItem.offerings .offering {
    flex-basis: 300px;
}



.priest {
	margin-left: 5px;
}




/* relfilter */

div.relFilter {
    float: left;
}

div.relFilter_month {
    padding-left: 10px;
    margin-right: 20px;
    width: 224px;
}

select#month {
    width: 172px;
}


div.relFilter_cat {
    width: 400px;
}
select#cat {
    min-width: 280px
}

#relFilterReset {
    float: right;
    padding: 0 6px;
    height: 21px;
    line-height: 21px;
    font-size: 13px;

    background: #eee;
    border: 1px solid #e0e0e0;
    cursor: pointer;
}



/* single */


.single {
    width: 480px;
}

.single h1 {
    display: block;
    margin: 16px 0;
    font-size: 24px;
    line-height: 24px;
    font-weight: normal;
    color: #0070b1;
    text-transform: none;
}

.single .details {
    font-size: 12px;
    line-height: 18px;
}

.single .details .comment {
    padding: 1em 0;
}

.single .moreInfo {
    margin-top: 8px;
}

.single .backlink {
    display: block;
    margin-top: 6px;
    padding: 8px 0;
    border-top: 1px solid #000;
    font-size: 12px;
}


div.grey {
    color: #444;
}


.fll {
    float: left;
}

.flr {
    float: right;
}






/* kool groupsubscribe */

.tx-koolgroupsubscribe-pi1,
.tx-koolgroupsubscribe-pi1-mandatory,
.tx-koolgroupsubscribe-pi1-optional {
    position: relative;
}
.tx-koolgroupsubscribe-pi1 {
    background-color: #f7f7f7;
    font-size: 14px;
}

.tx-koolgroupsubscribe-addressform-container,
.tx-koolgroupsubscribe-datafields-container,
.tx-koolgroupsubscribe-captcha-container,
.tx-koolgroupsubscribe-pi1 .formSubmit {
    padding: 10px;
}
.tx-koolgroupsubscribe-captcha-container,
.tx-koolgroupsubscribe-pi1 .formSubmit {
    padding-left: 20px;
}

.tx-koolgroupsubscribe-pi1-divider {
    padding: 0 0 0 10px;
    margin: 14px 0 3px;
    height: 28px;
    background: #666666;
    line-height: 28px;
    font-size: 18px;
    font-weight: normal;
    color: #fff;
}


.tx-koolgroupsubscribe-pi1 label {
    display: inline-block;
    padding: 0 10px;
}
.koolgs-basket-value {
	display: inline-block;
	font-weight: bold;
}

.tx-koolgroupsubscribe-pi1-mandatory-icon {
    /* color: #0070b1; */
    color: #ff0000;
}


.tx-koolgroupsubscribe-pi1-missing-field {
    display: block;
    margin: 0 0 8px 176px;
    font-size: 12px;
    color: #ff0000;

}

.tx-koolgroupsubscribe-pi1 input[type="submit"] {
    margin: 8px 0 8px 136px;
    padding: 0 6px;
    height: 21px;
    line-height: 21px;
    font-size: 13px;
    background: #eee;
    border: 1px solid #e0e0e0;
    cursor: pointer;
}

.tx-koolgroupsubscribe-pi1 .formSubmit input[type="submit"] {
    margin-left: 0;
}

.tx-koolgroupsubscribe-pi1 td select {
    max-width: 420px;
}

.tx-koolgroupsubscribe-pi1-captcha-image {
    margin: 4px 0;
}

@media screen and (max-width: 600px) {

    .tx-koolgroupsubscribe-pi1 table {
        display: block;
    }
    .tx-koolgroupsubscribe-pi1 td {
        display: inline-block;
        max-width: 470px;
    }
    .tx-koolgroupsubscribe-pi1 td:nth-last-of-type(2) {
        width: 20px;
    }
    .tx-koolgroupsubscribe-pi1 td:first-of-type {
        display: block;
    }

    .tx-koolgroupsubscribe-pi1 td select {
        max-width: 423px;
    }
    .tx-koolgroupsubscribe-pi1 td:first-of-type select {
        max-width: 445px;
        margin-bottom: 8px;
    }

}

.tx-koolgroupsubscribe-pi1 .tx-koolgroupsubscribe-pi1-captcha-text {
    min-height:24px;
    line-height: 24px;
}


/* flash messages */

body {
	font-family:sans-serif;
}

ul.typo3-messages {
	list-style:none;
	padding:0;
}

ul.typo3-messages li.alert {
	padding:7px 7px 7px 54px;
	border:1px solid #ccc;
	background-color:#eee;
	position:relative;
}
ul.typo3-messages li.alert:before {
	font-family:FontAwesome;
	position:absolute;
	left:7px;
	top:50%;
	margin-top:-19px;
	font-size:26px;
	width:32px;
	text-align:center;
	border-radius:19px;
	padding:3px;
	line-height:32px;
}

ul.typo3-messages li.alert h4 {
	margin:4px 0;
}

ul.typo3-messages li.alert.alert-danger {
	border-color:#eaa;
	background-color:#fee;
	color:#511;
}
ul.typo3-messages li.alert.alert-danger:before {
	content:'\f00d';
	background-color:#eaa;
}

ul.typo3-messages li.alert.alert-notice {
}
ul.typo3-messages li.alert.alert-notice:before {
	content:'\f0eb';
	background-color:#ccc;
}

ul.typo3-messages li.alert.alert-warning {
	border-color:#efc077;
	background-color:#ffe8aa;
	color:#831;
}
ul.typo3-messages li.alert.alert-warning:before {
	content:'\f12a';
	background-color:#efc077;
}

ul.typo3-messages li.alert.alert-success {
	border-color:#5c5;
	background-color:#ded;
	color:#040;
}
ul.typo3-messages li.alert.alert-success:before {
	content:'\f00c';
	background-color:#5c5;
}

ul.typo3-messages li.alert.alert-info {
	border-color:#9ae;
	background-color:#def;
	color:#015;
}
ul.typo3-messages li.alert.alert-info:before {
	content:'\f129';
	background-color:#9ae;
}


/* lpc form */

.lpcForm {
	width:100%;
}

.lpcForm .lpcFormGroup {
	display:flex;
	flex-flow:row wrap;
}

.lpcForm .lpcFormGroup > label,
.lpcForm .lpcFormGroup > .emptyCell,
.lpcForm .lpcFormError:before,
.lpcForm .lpcFormGroup.aligned:before {
	width:20%;
	min-width:10em;
	padding:0.5em 1em 0.4em 0;
	flex-grow:0;
	line-height:16px;
}

.lpcForm .lpcFormGroup > .text {
	padding:0.7em 1em 0.4em 0;
	line-height:16px;
}

.lpcForm .lpcFormGroup input,
.lpcForm .lpcFormGroup textarea,
.lpcForm .lpcFormGroup select,
.lpcForm .lpcFormGroup button {
	flex-grow:1;
	padding:5px 8px;
	margin:0.2em 0;
	white-space:nowrap;
	font-size:16px;
	border:1px solid #aaa;
	width:300px;
}

.lpcForm .lpcFormGroup.aligned > div {
	flex-grow:1;
	padding:0;
	margin:0.2em 0;
	white-space:nowrap;
	width:300px;
}

.lpcForm .lpcFormGroup.error input,
.lpcForm .lpcFormGroup.error textarea,
.lpcForm .lpcFormGroup.error select {
	border-color:#f99;
}

.lpcForm .lpcFormGroup input[type="checkbox"],
.lpcForm .lpcFormGroup input[type="radio"] {
	flex-grow:0;
	margin:0.5em 0.2em;
	transform:scale(1.2);
}

.lpcForm .lpcFormGroup input[type="submit"],
.lpcForm .lpcFormGroup button {
	flex-grow:0;
	margin-right:1em;
	width:auto;
}

.lpcForm .lpcFormError {
	color:#f00;
	margin-top:0.5em;
	margin-bottom:-0.2em;
	display:flex;
}

.lpcForm .lpcFormGroup.aligned:before {
	content:'';
}

.lpcForm .lpcFormError:before {
	content:'';
}

.lpcForm .lpcFormGroup textarea {
	resize: vertical;
}

.lpcForm .lpcFormGroup.mandatory label:after {
	content:' *';
	color:red;
}




/* ------------- Clearfix ------------- */

div.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
div.clearfix {
    float: none !important;
    display: inline-block;
    font-size: 0;
    line-height: 0;
    border: none;
}
/* Hides from IE-mac */
* html div.clearfix {height: 1%;}
div.clearfix {display: block; font-size: 0; line-height: 0;}
/* End hide from IE-mac */
