/*Fonts in Bootstrap.min.css*/
:root {
    --blau: #195A96;		/* original */
/*    --blau: #006fb9;		/* Info-Blau */
/*    --blau: #0060b0;		/* Kompromiss */
/*	--orange: #E3692B;		/* Original */
/*	--orange: #f17b29;*/	/* Vorschlag Turicia */
	--orange: #fb893a;		/* noch heller */
	--orange_dark: #ce6028;
	--hellgrau: #f4f4f4;
}
/**************************************************************************************
  General
**************************************************************************************/
html,body {
	color:black;
	font-family: "SwiftEF", serif;
	font-size:16px;
	background-color:white;
	margin:0;
	min-height:100vh; /*height: 100% sollte aufgrund von Lenis-Animation nicht eingesetzt werden*/
}
body {
	display: flex;
	flex-direction: column;
}
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	color:black;
	font-weight:bold;
	line-height:1.2;
}
h1, h2, h3, h4, h5, h6 {
	width: max-content;
	max-width:100%;
}
h1, .h1 {
	font-size:30px;
	margin-bottom:20px;
	position:relative;
}
h1 {
	border-bottom:6px solid var(--orange);
}
h2, .h2 {
	font-size:30px;
	margin-top:0px;
	margin-bottom:20px;
}
h2 {
	line-height:1.7;
	text-underline-offset: 15px;
	text-decoration:underline solid 6px var(--orange);
}
/*h2:before, .h2:before {
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100px;
	height:6px;
	border-bottom: 6px solid var(--orange);	
}*/
h3, .h3 {
	font-size:28px;
	margin-top:20px;
	display:inherit;
}
h4, .h4 {
	font-size:24px;
	font-weight:bold;
	margin-top:18px;
	display:inherit;
}
hr{border-width:1px;border-color:black;}
a, .pseudolink {
	color:var(--orange);
	cursor:pointer;
	transition:color 200ms linear;
}
a:hover, a:focus,
.pseudolink:hover {
	color:var(--orange_dark);
	transition:color 200ms linear;
}
.pseudolink:hover,
*[onclick]:hover,
*[data-src]:hover,
*[data-toggle="modal"]:hover {
	cursor:pointer;
}
h1 a, .h1 a,
h2 a, .h2 a,
h3 a, .h3 a,
h1 a:hover, .h1 a:hover,
h2 a:hover, .h2 a:hover,
h3 a:hover, .h3 a:hover {
	color:inherit;
	text-decoration:none;
}

/**************************************************************************************
   Service Klassen (unterstützend)
**************************************************************************************/
.page-wrap {
	flex: 1;
}
main {
	margin-top:calc(75px + 70px + 4%);
	margin-bottom:4%;
	padding-bottom:50px/*Gegensteuer für translateY in Section*/
}
/*Update 15.05.2025*/
.home:not(.admin) main {
	margin-top:clamp(45px, 4%, 87px);
}
/*.admin main {
	margin-top:calc(75px + 25px);
}*/

/*Für Animation mit Lenis (inkl. visible-Class*/
section {
	transform: translateY(50px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.visible {
	opacity: 1;
	transform: translateY(0);
}

img {
	user-drag: none;
    -webkit-user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.imgCoverCenter {
    position: relative;
    overflow: hidden;
}
.imgCoverCenter > img,
.imgCoverCenter > video,
.imgCoverCenter > svg {
	position: absolute;
	/*top: 50%;
left: 50%;
transform: translate(-50%,-50%);*/
	height: 100%;
	width: 100.1%;
	object-fit: cover;
	object-position: center;
}
@media (orientation: portrait) and (max-width: 576px) {
    .imgCoverCenter > video {
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
        transform: none;
        object-position: 61% bottom;
    }
}

.hyphens,
.hyphens-xs,
.flowrow {
	-moz-hyphens:auto;
	-ms-hyphens:auto;
	-webkit-hyphens:auto;
	hyphens:auto;
}
.breakword {
  /* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;

  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;
}
.date-pick.form-control {display:inline;}

/* Inserting this collapsed row between two flex items will make 
 * the flex item that comes after it break to a new row */
.flex-break {
  flex-basis: 100%;
  height: 0;
}

.card,
.card-header,
.card-footer,
.card-image-top {
	border:none;
	border-radius:0;
	background-color:transparent;
}
.card-deck .card {
	margin-bottom:30px;
}
.bg-wrapper {
	background-color:var(--hellgrau);
	padding:30px;
}

/**************************************************************************************
  Startseite / Home
**************************************************************************************/
#pfeil{
	position: absolute;
	left: 50%;
	bottom: 70px;
	margin-left: -25px;
}
#pfeil img{
	width: 50px;
}

.home main section {
	margin-bottom:60px;
}
header {
	margin-top:70px;
}
header, .headimg {
	height:37vh;
}
.eintrag {
	font-size:16px;
}
#Blog h2,
#LastEvent h2 {
	padding-left:30px;
	padding-right:30px;
}
#Blog .eintrag,
#LastEvent .eintrag,
#gallery .eintrag {
	background-color:var(--hellgrau);
	padding:30px;
}
#Blog p,
#LastEvent p,
#gallery p {
	margin-bottom:24px;
}
#Blog .datum,
#LastEvent .datum,
#gallery .datum {
	font-size:20px;
	font-weight:bold;
}
#Events {
	background-color:var(--hellgrau);
	padding:30px;
}
#Events .eintrag,
.Blog .eintrag,
.Termin .eintrag {
	padding-top: 6px;
	border-bottom:3px solid black;
}
.eintrag h2,
.eintrag h3 {
	-moz-hyphens:auto;
	-ms-hyphens:auto;
	-webkit-hyphens:auto;
	hyphens:auto;
}
#Events .eintrag[onclick]:hover,
#Events .eintrag[onclick]:focus,
.Termin .eintrag[onclick]:hover,
.Termin .eintrag[onclick]:focus {
	border-bottom:3px solid var(--orange);
	background-color:white;
	transition:all 200ms linear;
}

#Events .eintrag,
#Events .eintrag .row > div,
.Termin .eintrag,
.Termin .eintrag .row > div{	
	transition:all 200ms linear;
}
#Events .eintrag[onclick]:hover .row > div,
#Events .eintrag[onclick]:focus .row > div,
.Termin .eintrag[onclick]:hover .row > div,
.Termin .eintrag[onclick]:focus .row > div {
	padding-left:20px;
	padding-right:10px;
	transition:all 200ms linear;
}
#Events .datum small,
.Termin .datum small {
	font-size:20px;
	font-weight:bold;
}
#Events .h2,
.Termin .eintrag .h2 {
	margin-bottom:12px;
}
#Events .more {
	display:inline-block;
	font-size:20px;
	font-weight:bold;
	margin-top:24px;
}
/*Update JC 15.05.2025
#LastEvent img {
	margin-bottom:25px;
}
*/

/*Testimonial Slider*/
.carousel-caption {
	color:#000;
	font-size:1.25em;
	position:static;
}
.carousel-control {
	border:none;
	background-color:transparent;
	transition:background-color 200ms linear;
}
.carousel-control:hover {
	border:none;
	background-color:rgba(0,0,0,0.3);
	transition:background-color 200ms linear;
}
.carousel-control-prev {
	/*Update JC 12.06.2025
	top:20px;
	left:-130px;
	align-items:normal;*/
}
/*
.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}
.carousel-control-next {
	top:20px;
	right:-130px;
	align-items:normal;
}
.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}*/
#Content .carousel img {
	margin-bottom:0;
}

i.m-right {
	margin-right: 10px;
}
/**************************************************************************************
  Navigation
**************************************************************************************/
.zurich {
	width:75px/*132px*/;
	position:relative;
}
li.logo {
	display:none;
}
.navbar-brand {
	position:relative;
	z-index:2;
}
.navbar {
	/*display:block;
	margin-bottom:0;*/
	font-size:26px;
	font-weight:bold;
	background-color:var(--blau);
	padding:0;
	border-radius:0;
	height:70px;
	margin-bottom:70px;
	align-items:start;
	/*damit Footer überlappt werden kann*/
	/*position:relative;*/
	z-index:2;
	/*box-shadow:0 6px 8px white;**/
	border-bottom:4px solid white;
}
.navbar .navbar-collapse {
	border:none;
	box-shadow:none;
	max-height:none;
	position: absolute;
	top: 0;
	width: 100%;
	left: 0;
	right: 0;
	bottom:0;
	background-color: var(--blau);
	z-index: 1;
}
.navbar-nav {
	margin-bottom:0;
	padding-top:10vw;
	/*box-shadow:0 25px 10px -10px white;*/
	border-bottom:4px solid white;
}
ul.navbar-nav {
	background-color: var(--blau);
}
.nav a {
	text-decoration:none;
}
.nav > li {
	position:relative;
}
.navbar .navbar-nav > li > .nav-link {
	color:white;
	text-align:right;
	padding-left:10px;
	padding-right:10px;
	position:relative;
	margin-right:25px;
}
.nav-link.dropdown-toggle:after {
	content:url(/images/chevron-down.svg);
	margin-right:5px;
	border:none;
	position: absolute;
  	top: 7px;
}
/*,
li:focus .nav-link.dropdown-toggle:after,
li.show .nav-link.dropdown-toggle:after*/
li:hover .nav-link.dropdown-toggle:after,
li .nav-link.dropdown-toggle:focus:after,
li.active .nav-link.dropdown-toggle:after {
	content:url(/images/chevron-down-active.svg);
}
.navbar .navbar-nav > .open > a, 
.navbar .navbar-nav > .open > a:hover, 
.navbar .navbar-nav > .open > a:focus {
	color:black;
	background-color:transparent;
}
.navbar .navbar-nav > li:hover > .nav-link,
.navbar .navbar-nav > li > .nav-link:hover, .navbar .navbar-nav > li > .nav-link:focus,
.navbar .navbar-nav > .active > .nav-link, .navbar .navbar-nav > .active > .nav-link:hover, .navbar .navbar-nav > .active > .nav-link:focus {
	color:var(--orange);
	background-color:transparent;
}

/*Toggle*/
.container > .navbar-header/*,
.navbar-toggler */{
	text-align:center;
	float:right;
	margin-right:0;
	position:absolute;
	top:0;
	right:0;
}
.navbar-toggler/*BS4*/ {
	border:none;
	margin-top:14px;
	position:relative;
	z-index:2;
}
.navbar-dark .navbar-toggler {
	border:none;
}
.navbar .navbar-toggle .icon-bar,
.navbar .navbar-toggle:hover .icon-bar/*,
.navbar .navbar-toggle:focus .icon-bar*/ {
	width:25px;
	background-color:#FFF;
    transition: background-color 200ms linear;
}
.navbar .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-toggler:focus .navbar-toggler-icon, 
.navbar-dark .navbar-toggler:hover .navbar-toggler-icon,
.navbar-dark .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(206, 96, 40, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.dropdown-menu {
	border-radius:0;
	border:none;
	background:transparent;
	padding-top:0;
	margin-top:0;
}
.dropdown-menu a {
	font-size: 1.3em;
/*	font-weight:bold;*/
	color:white;
	display:block;
	text-align:right;
	margin-right:10px;
}
.dropdown-item:focus, 
.dropdown-item:hover,
.dropdown-item.active, 
.dropdown-item:active {
	color:var(--orange);
	background-color:transparent;
}
.dropdown-item.active a, 
.dropdown-item:active a {
	color:var(--orange);
}
/**************************************************************************************
  Content Ansicht
**************************************************************************************/
p, .ptext, #Content ul {
	margin: 0 0 10px;
}
#Content:empty {
	display:none;
}
#Content img:not:parent(.listicon) {
	max-width:100%;	
	height:auto;
    margin-bottom: 5px;
}
#Content > h1:first-child {
	margin-top:0;
	margin-bottom:45px;
}
.website #Content td img{
	display:block;
	width:auto;
	height:auto;
}
#Content ul, #Content ol {
	padding-left:15px;
}
#Content ul li, #Content ol li {
	margin-bottom:0px;
}
/*Gegensteuer Bootstrap für per Editor erstellte Tabellen*/
.website #Content table td td {
	padding:0;
}

/**************************************************************************************
  Blog
**************************************************************************************/
.bimg img{
	margin-bottom:1em;
	cursor:pointer;
}
.Blog .card-body,
.Blog .card-header {
	padding:0 0 14px 0;
}
.Blog h2 {
	margin-top:0;
	text-decoration:underline 3px solid black;
}
.Blog h2:hover {
	text-decoration:underline 3px solid var(--orange);
	transition:text-decoration 200ms linear;
}
.Blog .card a:hover,
.Blog .card a:focus,
.Blog h2:hover {
	color:var(--orange);
}
.Blog .card:hover .body-text,
.Blog .card:focus .body-text {
	color:var(--orange);
}
.Blog .card,
.Gallery .row [onclick]
.Gallery #lightgallery a {
	transition:opacity 200ms linear;
}
.Blog .card:hover,
.Blog .card:focus,
.Gallery .row [onclick]:hover,
.Gallery .row [onclick]:focus,
.Gallery #lightgallery a:hover,
.Gallery #lightgallery a:focus {
	opacity:0.8;
	transition:opacity 200ms linear;
}
.Blog p.text-center {
	margin-top:30px;
}
.Blog .datum {
	font-weight:bold;
}
.Blog .eintrag h1,
.Blog .eintrag .h1 {
	border-bottom:none;
	margin-bottom:0;
}
.Blog .bg-wrapper {
	margin-top:30px;
}

/*Slider*/
.swiper .custom-prev:after, 
.swiper .custom-next:after {
	content: url(/images/arrow-alt.svg);
}
.swiper .custom-prev:after {
	transform:rotate(180deg);
}
.swiper-button-prev.swiper-button-disabled, 
.swiper-button-next.swiper-button-disabled {
	display:none;
}
	
/*Team*/
.team > * {
	min-height:285px;
}

/**************************************************************************************
  Gruppe / Team
**************************************************************************************/
.arbGruppe > div {
	margin-bottom: 15px;
}
.arbGruppe > div .subGruppe {
    display: none;
}
.subGruppe {
    position: absolute;
    background-color: #FFF;
    box-shadow: 0 3px 5px rgba(0,0,0,0.5);
}
.arbGruppe > div:hover .subGruppe {
    display: block;
    z-index: 1;
}

/**************************************************************************************
  Kontaktformular
**************************************************************************************/
form#Kontakt {position:relative;}
/*#Kontakt .form-group label{display:none;}*/
form#Kontakt .cbx label {display:inline-block;}
form#Kontakt .btn {min-width:110px;}

/**************************************************************************************
  Galerie / Gallery / lightGallery
**************************************************************************************/
#lightgallery.row > div {
	padding-top:15px;
	padding-bottom:15px;
}
#lightgallery .background-slider {
	cursor:pointer;
}
/*new lightgallery with iFrame set height*/
.ifHeight75 .lg-inner .lg-video {
	padding-bottom: 75%;/*56.25%;   Format=16:9*/
}
.ifHeight100 .lg-inner .lg-video {
	padding-bottom: 100%;/*56.25%;   Format=16:9*/
}
#lightgallery a {
	padding-bottom:61%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	display:block;
}

/**************************************************************************************
  Footer
**************************************************************************************/
footer {
	flex-shrink: 0;/*Sticky Footer*/
	color:white;
	font-size:16px;
	font-weight:normal;
	background-color:var(--blau);
	padding-top:40px;
	padding-bottom:20px;
}
footer a, footer .pseudolink {
	color:white;
	text-decoration:underline;
}
footer a:hover, 
footer a:active, 
footer a:focus,
.social a:hover,
.social a:active,
.social a:focus {
	color:var(--orange);
}
footer h3 {
	color:white;
	font-size:24px;
	margin-top:0;
	margin-bottom:24px;
}
footer strong {
	font-weight:normal;
	text-transform:uppercase;
}
footer td {
	padding-right:10px;
}
footer input[type="text"], footer input[type="password"], footer input[type="email"] {
	color:white;
	border:1px solid white;
	background-color:var(--blau);
	margin-bottom:18px;
}
html footer input.btn {
	font-size:20px;
	color:white;
	border-color:white;
	background-color:var(--blau);
	transition:all 200ms linear;
}
html footer input.btn:hover,
html footer input.btn:focus {
	background-color:var(--blau);
	color:var(--orange);
	border-color:var(--orange);
	transition:all 200ms linear;
}
#passlink {
	font-size:80%;
	margin-top:5px;
}
.social a {
	color:white;
	display:inline-block;
	margin-right:12px;
}

footer .container-fluid {
	margin-top:30px;
}
footer .form-control::-webkit-input-placeholder { /* Edge */
	color: white;
	opacity:0.5;
}
footer .form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: white;
	opacity:0.5;
}
footer .form-control::placeholder {
	color:white;
    opacity:0.5;
}
footer .form-control:focus::-webkit-input-placeholder { /* Edge */
  color: inherit;
}
footer .form-control:focus:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: black;
}
footer .form-control:focus::placeholder {
	color:inherit;
}

/*Cookie Banner*/
#cookie_directive_container {
	font-size:0.8em;
}
#cookie_directive_container > * {
	background-color:var(--orange);
	color:#FFF;
	
	padding:12px 0 2px 0;
}
#cookie_directive_container a {
	color:white;
	text-decoration: underline;
}
#cookie_directive_container a[href="#"] {
	padding:6px 12px;
	margin: 0 0 6px 12px;
	color:var(--blau);
	background-color:white;
	border-color:white;
	text-decoration: none;
	transition:border-color 200ms linear;
}
#cookie_directive_container a[href="#"]:hover,
#cookie_directive_container a[href="#"]:focus {
	border-color:var(--blau);
	transition:border-color 200ms linear;
}
#cookie_directive_container .credit a:hover,
#cookie_directive_container .credit a:focus {
	color:var(--blau);
}

/**************************************************************************************
  Done
**************************************************************************************/
#Done {
	margin-right:30px;
}
#Done, #Done a {
	color:rgba(255,255,255,0.3);
	text-decoration:none;
}
#Done a {white-space:nowrap;}
#Done a:hover,
#Done a:focus {
	color:#FFF;
	text-decoration:underline;
}

/**************************************************************************************
  Formulare
**************************************************************************************/
input, input.form-control,
textarea, textarea.form-control,
select, select.form-control {
	font-size:1em;
	color:black;
	border-radius:0;
}
.input-group-addon {
    border-radius:0;
    padding-left: 0px;
}
label{
    font-weight:400;
    font-size:14px;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="file"],
input[type="number"],
input[type="url"],
textarea,
select {
	font-size:16px;
	color:#000000;
	margin:1px;
	border-color: var(--blau);
	width: 100%;
    padding: 0.5rem .75rem;
}
.admin input[type="text"],
.admin input[type="password"],
.admin input[type="email"],
.admin input[type="file"],
.admin input[type="number"],
.admin textarea,
.admin select {
	border:1px solid var(--blau);
}
.admin .input-group input[type="text"] {
	margin-top:0;
	border-right:none;
}
input[type="file"] {
	border-bottom:1px solid var(--blau);
	width: 100%;
}
button:not(.carousel-control), 
html input[type="button"], input[type="reset"], input[type="submit"], .btn,
.btn-group-sm > .btn, .btn-sm {
	font-weight: inherit;
	text-align: center;
	padding: 6px 10px;
	transition: all 200ms linear;
	border: 1px solid var(--blau);
	color: white;
	background: var(--blau);
	border-radius: 0;
	transition: background-color 200ms linear;
}
.accordion-button {
	padding: 6px 10px;
	border: 1px solid var(--blau);
}
.accordion-collapse {
	margin-top:15px;
}
.fa.btn {
	line-height:19px;
}
.input-group-append input[type="submit"] {
	border:none;
	padding:0;
}
button:not(.navbar-toggler):not(.carousel-control):hover, 
.btn:hover, .btn:focus, .btn.focus
html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
	border: 1px solid var(--blau);
	color: var(--blau);
	background: transparent;
	transition: background-color 200ms linear;
}
button.navbar-toggler:focus {
	outline:white;
}
input[disabled] {
	background-color:#ddd;
	border-style:dotted;
	border:none;
}
input#Code {
	margin-top:0;
	z-index:0;
}
.input-group-addon {
	min-width:111px;
	padding-bottom:5px;
}
.btn.focus, .btn:focus {
	box-shadow:none;
}
.form-control:focus {
	box-shadow:0 0 0 .2rem rgba(43, 46, 52,.25);
	border-color:rgb(43, 46, 52);
}
.page-link:focus {
	box-shadow:0 0 0 .2rem rgba(43, 46, 52,.25);
}

/* damit Kalender-Icon auf gleicher Zeile rechts daneben angezeigt werden kann*/
input.date-pick {
	display:inline-block;
	width: calc(100% - 18px);
}
.ui-widget:hover {
	color:black;
}
/**************************************************************************************
  Listen-, Tabellen-Ansicht, Pagination
**************************************************************************************/
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td, 
.table > tfoot > tr > td {
	border-color:#000;
	line-height: 1.42857;*/
    padding: 8px;
    vertical-align: top;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th {
	border-top:none;
}
.table-hover > tbody > tr:hover {
	background-color:rgba(0,0,0,0.1);
}
.table > thead > tr > th.listicon,
.table > tbody > tr > th.listicon,
.table > tfoot > tr > th.listicon,
.table > thead > tr > td.listicon,
.table > tbody > tr > td.listicon, 
.table > tfoot > tr > td.listicon {
	padding-left:0;
	padding-right:0;
	text-align:center;
}
td.back {text-align:center;}
#Content ul.pagination {
	padding-left:0;
}
.pagination > li > a, 
.pagination > li > span {
	color:#000;
	border-color:var(--orange);
}
.pagination > li > a:hover, 
.pagination > li > span:hover, 
.pagination > li > a:focus, 
.pagination > li > span:focus {
	color:#FFF;
	border-color:var(--orange);
	background-color:var(--orange);
}
.pagination > .active > a, 
.pagination > .active > span, 
.pagination > .active > a:hover, 
.pagination > .active > span:hover, 
.pagination > .active > a:focus, 
.pagination > .active > span:focus {
	background-color:#000;
	border-color:#000;
}
.page-item.active .page-link {
    color: #fff;
    background-color: var(--blau);
    border-color: var(--blau);
}
.tbl {display:table; width:100%;table-layout:fixed;}
.tbl > .tblrow {display:table-row;}
.tbl > *,
.tbl > .tblrow > *,
.tbl td {
	vertical-align:top;
	display:table-cell;
	padding:0 1% 1% 1%;
}
.tbl > *:first-child,
.tbl > .tblrow > *:first-child,
.tbl td:first-child {
	padding-left:0;
}
.tbl > *:last-child,
.tbl > .tblrow > *:last-child,
.tbl td:last-child {
	padding-left:0;
}
.admin .tbl > *,
.admin .tbl > .tblrow > * {
	vertical-align:middle;
	padding:3px 6px;
}

/*Entgegensteuern von Bootstrap*/
.table-responsive {border:none;font-size:14px;}
.table-responsive > .table > tbody > tr > td {white-space:normal;}
.img-responsive { max-width:100%; }

/**************************************************************************************
  Kalender
**************************************************************************************/
#calendercontent input[type="button"]{
	padding:5px;
}
#calendercontent td {
	text-align:center;
	vertical-align:middle;
	font-size:1.1rem;
}
#calendercontent td.calenderApointement {
	border: 1px solid #c2c2c2;
}
#calendercontent td.calenderToday {
	border: 2px dashed #666;
}
#calendercontent a {
	color:black;
	display:block;
}
.calenderWeeks {
	border-right: 1px solid #666666;
}
/**für Bubbletooltips.js */
.tooltip {
	width: 200px; color:#000;
	text-align:left;
	text-decoration:none;
}
	
.tooltip span.top { 
	padding: 30px 8px 0;
    background: url(/library/tooltip/images/bt.gif) no-repeat top;
}

.tooltip b.bottom {
	padding:3px 8px 15px;color: #548912;
    background: url(/library/tooltip/images/bt.gif)	no-repeat bottom;
}

/**************************************************************************************
  Admin
**************************************************************************************/
.CuteEditorGroupMenuCell img {
	box-sizing:content-box;
}
#CE_Editor1_ID {
	width:100% !important;
	line-height:initial;
	font-size:12px;
}
/*.admin .form-control {
	height:calc(1.5em + .75rem - 3px);
}*/
.admin .navbar {
	/*font-size:18px;*/
}

/*Handy Queransicht / Landscape*/
@media (min-width:576px){
	#Done a,
	.service a {
		margin-left:24px;
	}
	#Blog .eintrag,
	#LastEvent .eintrag,
	#Events,
	#gallery .eintrag {
		padding:50px;
	}
	#Events .container {
		padding-left:50px;
		padding-right:50px;
	}
	#Blog h2,
	#LastEvent h2,
	#gallery h2 {
		padding-left:50px;
		padding-right:50px;
	}
}
/*Tablet / iPad Ansicht hoch*/
@media (min-width:768px){
	h1, .h1 {
		-moz-hyphens:none;
		-ms-hyphens:none;
		-webkit-hyphens:none;
		hyphens:none;
	}
	
	footer{
		position:relative;
	}
	footer .container {
		position:relative;
		z-index:1;
	}
	#passlink {
		float:right;
	}	
}
@media (min-width:992px){
	header {
		margin-top:75px;
	}
	header,
	.headimg {
		height:calc(100vh - 75px); /*75px ist Navbar-Höhe*/
	}
	/*Navigation*/
	.nav {
		/*max-width:960px;*/
	}
	.navbar {
		z-index:2;
		padding:0;
		height: auto;
		min-height:0;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
	}
	.admin .navbar {
		font-size:19px;
	}
	li.logo {
		min-width:152px;
		display:list-item;
	}
	.navbar-brand {
		position:absolute;
		top:12px;
		padding:0;
		margin:0;
	}
	.website .navbar-brand {
		left:50%;
		transform:translateX(-50%);
	}
	.navbar-brand {
		z-index:1001;
	}
	.navbar .navbar-brand:hover,
	.navbar .navbar-brand:focus {
		background-color: transparent;
	}
	.navbar .navbar-collapse {
		width:auto;
		border:none;
		position:static;
		flex-grow:1;
		background-color:transparent;
	}
	/*.navbar-collapse .d-lg-flex {
		align-items: stretch;
	}*/
	ul.navbar-nav {
		margin:0 auto;
		padding-bottom:20px;
		background-color:transparent;
		padding:0;
		box-shadow:none;
		border:none;
	}
	.admin ul.navbar-nav {
		margin-right:0;
	}
	.nav-item {
		margin-right:12px;
	}
	.nav > li {
		padding:0;
		min-height:75px;
		display:flex;
		align-items:center;
	}
	.nav > li:last-child {
		background-image:none;
	}
	.navbar .navbar-nav > li > .nav-link {
		transition: color 200ms linear;
		text-align:left;
		margin-right:0;
	}
	.admin .navbar .navbar-nav > li > .nav-link {
		padding-left:0;
	}
	.nav > li:not(.logo) > a {
		padding-left:6px;padding-right:6px;
	}
	.navbar .navbar-nav > li > .nav-link:before {
		content:'';
		display:none;
	}
	.navbar .navbar-nav > li:hover > .nav-link, 
	.navbar .navbar-nav > li > .nav-link:hover, 
	.navbar .navbar-nav > li > .nav-link:focus, 
	.navbar .navbar-nav > .active > .nav-link, 
	.navbar .navbar-nav > .active > .nav-link:hover, 
	.navbar .navbar-nav > .active > .nav-link:focus,
	li.active ul.dropdown-menu, 
	li:hover ul.dropdown-menu, li:focus ul.dropdown-menu {
		background-color:transparent;
		transition: all 200ms linear;
	}
	.navbar .navbar-nav > .active > .nav-link, .navbar .navbar-nav > .active > nav-link:hover, .navbar .navbar-nav > .active > nav-link:focus {
		/*margin:0 8px;*/
		/* Abstand bei Linie entfernt, aufgrund Navigation "hüpfen" *** Update AH 11.11.2020 Meeting */
		margin:0;
	}
	.dropdown-menu, 
	li.active ul.dropdown-menu, 
	li:hover ul.dropdown-menu, 
	li:focus ul.dropdown-menu {
		background:var(--blau);
		border:0;
		border-top:4px solid var(--orange);
		border-radius:0;
		padding:0;
		margin:0;
		/*box-shadow: 0 10px 10px 6px rgba(0,0,0,0.2);*/
		box-shadow: 0 0 10px black;
		clip-path: inset(0 -15px -15px -15px);
	}
	.dropdown-menu a {
		color:white;
		text-align:left;
		margin-right:0;
	}
	.dropdown-menu a:hover,
	.dropdown-menu a:focus {
		color:var(--orange);
	}
	.dropdown-item {
		padding:0;
	}
	.dropdown-item:focus, 
	.dropdown-item:hover,
	.dropdown-item.active, 
	.dropdown-item:active,
	.dropdown-item.active a, 
	.dropdown-item:active a {
		color:var(--orange);
		background-color:transparent;
	}
	.dropdown-item a {
		display:block;
		padding:0.25rem 15px;
	}
	
	footer .container-fluid {
		margin-top:70px;
	}
	#Done,
	.service {
		text-align:right;
	}
	
	/*Impressum*/
	.flowrow {
		width:100%;
		-webkit-column-count: 2;
   		-moz-column-count: 2;
		column-count:2;
		-webkit-column-gap: 3em;
     	-moz-column-gap: 3em;
        column-gap: 3em;
	}
	.flowrow .pagebreak {
		-webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
          page-break-inside: avoid; /* Firefox */
               break-inside: avoid; /* IE 10+ */
	}
}
@media (min-width:1200px){
	body.website {
		font-size:24px;
	}
	h1, .h1 {
		font-size:60px;
	}
	h2, .h2 {
		font-size:48px;
	}
	.Gallery h2.h1 {
		font-size:32px;
	}
	.admin .navbar {
		font-size:23px;
	}
	.website .nav {
		width:1140px;
		max-width:calc(100vw - 132px - 121px); /*132px Zurich; ca. 121px Social Media inkl. margin-right*/;
	}
	.website .nav > li {
		flex: 1;
	}
	.admin .navbar .navbar-nav > li > .nav-link {
		padding-left: 10px;
	  }
	
	.social {
		margin-right:32px;
	}
	#Testimonial #slider-carousel2,
	#Testimonial .carousel-inner,
	#Testimonial .carousel-inner .item {
		max-height:none;
	}
}
@media (min-width:1900px){
	.admin ul.navbar-nav {
		margin-right: auto;
	  }
}