@charset "UTF-8";

/**********************************************************************************************************************************************************************************************/
/* 2visit.de  */
/* Style-CSS / custom.css */
/* AUTOR: ms - designreload.de */
/**********************************************************************************************************************************************************************************************/

*:focus,
*:active,
*:link,
*:any-link {border: none; background: none; cursor: pointer;}

/****************************************************************************************************************************************************/
/* BODY */
/****************************************************************************************************************************************************/

html, body { margin: 0; padding: 0; font-size: 16px; line-height: 1.5em; font-family: 'Titillium Web'; width: 100%; height: 100%; color: #242b36; background: #fff; }
.invisible {display: none;}
/*img {width:auto; height: auto;}*/
.break {font-size: 1px; clear: both; width: 1px; height: 1px;}
em {font-style: italic;}
a {text-decoration: none; cursor: pointer !important;}

:root {
    --blue: #0e3b5c;
    --green: #0c8e36;
    --grau: #aaa;
}

/*************************************************************************/
/* AUFBAU */
/*************************************************************************/

#header {width: 100%; z-index: 11; margin: 0 0 50px 0;}
body.standard #main {width:70%; margin: 0 1% 0 4%;}
body.standard #right {width:20%; margin: 0 4% 0 1%;}

/*** STARTSEITE ***/
.rs-columns {margin: 0 4% 50px; width: 92%;}


/*************************************************************************/
/* HEADER */
/*************************************************************************/


#logo {margin: 0 0 0 20px; width:200px; height: 70px; position: absolute; z-index: 1; background-image: url(/grafik/logo-2visit.png);}
#logo img  {height: 70px; width: 200px;}




/*************************************************************************/
/* CONTENT */
/*************************************************************************/

h1 {font-size: 3.4em; font-weight: 100; margin: 0 0 40px; line-height: initial;}
h2 {font-size: 2.4em; font-weight: 100; margin: 0 0 40px; line-height: 120%;}
h3 {}

.werbung h6 {color: var(--grau); font-size: 0.9em;font-weight: normal;}

p {margin: 0 0 20px 0;}

.content-headline {}
.rsts-skin-default .rsts-caption {top:unset; bottom: 20px !important; padding: 20px 30px !important;font-size: 2em;font-weight: 100;}




/*** NEWSBLOCK ***/
#top_news {position: relative; margin: 0 0 40px; padding: 40px 0; background: #eee;}
#top_news .layout_latest {display: flex; flex-wrap: nowrap; justify-content: flex-end; align-items: center;  align-content: center;}
#top_news .imageblock {width: 60%; height: auto;}
#top_news .textblock { position: absolute; left: 10%; max-width: 50%; background-color: rgb(255, 255, 255, 0.8);padding:10px;}
#top_news h3 {font-size: 2em; font-weight: normal; margin: 10px 0 20px 0;}
#top_news .layout_latest p.info {margin: 0 !important; font-size: 0.9em;color: #aaa;}

#newsblock {position: relative; max-width: 1150px; min-height: 400px; margin: 0 0 40px 0;}
#newsblock .layout_latest {margin: 0 0 40px 0; display: flex;}
#newsblock .layout_latest_image {width: 15%; margin: 0 1% 30px 0; float: left; }
#newsblock .top-news-textblock {width:74%;}
#newsblock .layout_latest_image figure {margin: 0 20px 0 0;}
#newsblock .layout_latest_image figcaption {display: none;}
#newsblock figure.image_container {margin: 0 0 30px 0;}
#newsblock .layout_latest p.info {margin: 0 !important; font-size: 0.9em;color: #aaa;}
#newsblock .layout_latest .ce_text {margin: 0;}

@media only screen and (max-width: 800px) {
#newsblock {margin-left: 20px; max-width: 90%;}
#newsblock .top-news-textblock {width: 90%;}
}
.mod_newsreader p.info {color: var(--grau);}
.mod_newsreader p.back {margin: 30px 0 0 0; border-top: 1px dotted var(--grau);}
.magazin-info {background-color: var(--green); color: #fff; padding: 0 5px; margin: 0 10px 0 0;}

.ce_accordion {border: 1px dotted #aaa; margin: 0 0 20px 0; padding: 10px;}
.ui-accordion-header {font-size:1.2em;}
.ui-accordion-header::before {content:"» ";}
.ui-accordion-content {margin: 20px 0 0 0; padding: 15px;}

/*** KALENDER ***/
.mod_calendar {}
.mod_calendar table {}
.mod_calendar table th.head {}
.mod_calendar table th.label {padding: 15px 0;}
.mod_calendar table td {width: 15%; height: 100px; min-height:100px; border: 1px dotted #ccc;}

.layout_upcoming {margin: 0 0 10px 0;}
.layout_upcoming time {color: var(--grau); font-size: 0.9em;}
.layout_upcoming a {font-size: 1.1em;}

/*** formulare ***/
.ce_form fieldset {border: 1px solid #aeaeae; padding: 15px; margin: 0 0 30px 0;}
.ce_form label {display: inline-block; width: 140px; margin: 0 0 10px 0;}
.ce_form input {width: 250px;}
.ce_form .datenschutz fieldset {border: none;}
.ce_form .datenschutz input {width: 35px; margin-top: 5px; vertical-align: top;}
.ce_form .datenschutz label {width: 80%;}

/*************************************************************************/
/* CONTENT */
/*************************************************************************/

.rechte-spalte .mod_eventlist,
.rechte-spalte .werbung {margin: 0 0 50px 0;}

/*************************************************************************/
/* Footer */
/*************************************************************************/

#footer {border-top: 10px solid var(--green); margin: 50px 0 0 0;background-color: #ddd;}
#footer .inside {border-top:10px solid var(--blue); padding: 20px 4%;}
#footer .footer-logo {margin:0; width:200px; height: 70px; z-index: 1; background-image: url(/grafik/logo-2visit.png);}
#footer .footer-row1 {display: block; margin: 0 0 40px 0;}
#footer .footer-row2 {display: flex; }
#footer .footer-row2 .mod_customnav {width: 200px;}


/*************************************************************************/
/* MODULE */
/*************************************************************************/


/*************************************************************************/
/* MENU */
/*************************************************************************/

.mobile_menu{position:fixed;z-index:10000;display:none;}
.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}
.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}
.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}
.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}
.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}
.mobile_menu.active.no_shadow{box-shadow:none!important}
.mobile_menu_trigger{display:none}
.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}
.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:9999}
.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}
.mobile_menu li.submenu_hide>ul{display:none}
.mobile_menu li.submenu_show>ul{display:block}
body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}

.mod_mobile_menu {}
.mobile_menu_trigger { display: block !important; position: fixed; top:0; right: 0; z-index: 99; background-color: #00427c; padding: 20px 20px 20px 40px; width:70px; height:30px; cursor: pointer;}
.mobile_menu_trigger span {color: #ffffff; font-size: 35px;}
.mobile_menu {min-width: 350px !important; width: 350px !important;}
.mobile_menu .inner { height: 100%;background: #002548; overflow-y: auto; padding: 0; color: #ffffff; font-size: 18px;}
.mobile_menu .inner a {color: #ffffff;}
.mobile_menu .close-button {float: right; margin: 10px 10px 0 0;}
.mobile_menu .mod_navigation,
.mobile_menu .mod_customnav {margin: 40px 0 50px 0;}
.mobile_menu .mod_navigation li,
.mobile_menu .mod_customnav li {margin:0; padding: 10px 0 10px 20px;}
.mobile_menu .mod_navigation li:hover {background:#00427c;}
.mobile_menu .mod_navigation .level_3 li:hover {background:#00aae5;}
.mobile_menu .mod_navigation li.submenu_hide::after {content: "\f0d7"; font-family: "FontAwesome";}
.mobile_menu .level_1 li {border-bottom: 1px solid #ffffff;}
.mobile_menu .no-border .level_1 li {border-bottom: none;}
.mobile_menu .level_1 li:last-child {border: none;}
.mobile_menu .level_2 li {border: none;}
.mobile_menu .level_3 li {border: none;}
/*.level_2 {margin-left: 30px;}
.level_3 {margin-left: 30px;}*/

.mobile_menu .social_box {margin: 30px 0 0 0; font-size: 20px; border-top: 1px solid #ffffff; padding: 20px 0 0 0;}
.mobile_menu .social-box-inner {padding: 0 0 0 20px;}
.mobile_menu .social-box-inner a {margin: 0 30px 0 0;}
.mobile_menu .social-box-inner i {font-size:1.0em;}

@media screen and (max-width: 500px) {
	.mobile_menu_trigger{ width: 100px;}
}


/*************************************************************************/
/* COOKIEBAR */
/*************************************************************************/

.cookiebar {
	box-sizing:border-box;
	position:fixed;
	left:0;
	width:100%;
	padding:.6em 1.2em;
	background-color:#474747;
	color:#f6f6f6;
	font-size:0.8em;
	text-align:center;
	z-index:10;
	box-shadow:0 5px 10px grey
}
.cookiebar *{box-sizing:border-box}
.cookiebar--active{
	display:flex!important;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap
}

.cookiebar--position-top {top:0; z-index: 1000;}
.cookiebar--position-bottom {bottom:0}
.cookiebar__message,.cookiebar__text {margin-right:1.5em}
.cookiebar__link {color:#fff;text-decoration:underline}
.cookiebar__link:hover {text-decoration:none}
.cookiebar__button {
	margin:0;
	padding:.6em 1.2em;
	border:none;
	border-radius:0;
	background-color: grey;/*#4ea55e;*/
	color:#fff;
	font-weight:700;
	cursor:pointer
}
.cookiebar__button:hover {background-color:#3e824a}
