/* CSS Document */

/*---------------------------------------
	BASCIC CONFIGURATIONS
---------------------------------------*/

html, body {
	font-family:Arial, Helvetica, sans-serif;	
	word-wrap:break-word;	
}

h1, h2, h3, h4, h5 {
	font-family:Arial, Helvetica, sans-serif;
}

h1 {
	font-size:2.375rem;
	margin-bottom:1.5rem;
}

h2 {
	font-size:1.5rem;
}

h3 {
	font-size:1.25rem;
}

h4 {
	font-size:1.125rem;
	color:#444;
}

p {
	color:#333;
	line-height:1.6;
	font-size:0.9375rem;
}

strong, b {
	font-weight:bold;
}

ul, ol, dl {
	font-size:1.125rem;
}	

a {
	color:#000;
}

h1 span.important {
	font-weight: bold;
	color:red;
}

/*---------------------------------------
	HEADER
---------------------------------------*/

#branding {
	border-bottom:1px solid #ddd;
}

#navigation {
	border-bottom:1px solid #ddd;
}

#branding .logo, #branding .icon {
	padding:1.5rem 0;
}

#branding .icon {
	text-align:right;
    margin-left: 1.5rem;    
}

#branding .icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#branding .jubilaeum {
	text-align:right;
	padding-top:2.5rem;
}

/*---------------------------------------
	MAIN MENU
---------------------------------------*/

.top-bar {
	background:none;
}

.top-bar-section ul li {
	background:none;
}

.top-bar-section ul li > a {
	color:#0075bf;
	font-family:Arial, Helvetica, sans-serif;
	font-size:1.125rem;
}

.top-bar-section ul.left li:not(.has-form):first-child a:not(.button) {
	padding-left:0;
}

.top-bar-section ul li:hover:not(.has-form) > a {
	background:none;
	color:#222;
}

.top-bar-section li:not(.has-form) a:not(.button) {
	background:none;
}

.top-bar-section li.active:not(.has-form) a:not(.button) {
	background:none;
	color:#222222;
}

.top-bar-section li.active:not(.has-form) a:hover:not(.button) {
	background:none;
	color:#222;
}

.top-bar-section li:not(.has-form) a:hover:not(.button) {
	background:none;
}

.top-bar-section .has-dropdown > a::after {
	border-color:rgba(0, 0, 0, 0.4) transparent transparent;
}

/*dropdown*/
.top-bar-section .dropdown {
	padding-top:1px;
}

.top-bar-section .dropdown li > a {
	font-size:1rem;
}

.top-bar-section .dropdown li a:not(.button) {
	line-height:2.25rem !important;
}

.top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
	background:#555555;
	color:#d4d4d4;
}

.top-bar-section .dropdown li:hover:not(.has-form):not(.active) > a:not(.button) {
	color:#fff;
	background-color:#222;
}

.top-bar-section ul li.has-dropdown.active ul.dropdown li.act-sub a {
	background-color:#222;
}

/*---------------------------------------
	MOBILE MENU
---------------------------------------*/

.top-bar .toggle-topbar.menu-icon a {
	color:#0075bf;
	padding:0 2.5rem 0 0.9375rem;
}

.top-bar .toggle-topbar.menu-icon a span::after  {
    box-shadow: none;
}

.top-bar.expanded .title-area {
	background:none;
}

.top-bar.expanded .top-bar-section ul li > a {
	padding:0.25rem;
	border-bottom:1px solid #ccc;
}

.top-bar.expanded .top-bar-section ul.langmenu li > a:not(.link) {
  display: none;
}

.top-bar.expanded .top-bar-section .has-dropdown > a::after {
	border-bottom: 5px solid transparent;
    border-left: 5px solid #aaa;
    border-top: 5px solid transparent;
	margin-right:0.25rem;
}

.top-bar.expanded .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown li.parent-link a {
	color:#0075bf;
}

.top-bar.expanded .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
	background:none;
	color:#0075bf;
}

.top-bar.expanded .top-bar-section .dropdown li a:not(.button) {
	line-height:inherit !important;
}

.top-bar.expanded .top-bar-section ul.left li:first-child:not(.has-form) a:not(.button) {
	padding:0.25rem;
}

.top-bar.expanded .top-bar-section ul.right {
	display:table;
}

.top-bar.expanded .top-bar-section ul.right li {
	display:table-cell;
}

.top-bar-section ul.langmenu li.lang-act > a {
	color:#222222;
}

/* IOS 14 menu disappear fix */
.top-bar .menu-icon a {
    position: relative;
}

.top-bar .menu-icon a::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    top: 0;
    right: 0;
    background: url("../Images/menu-icon.svg") no-repeat;
    background-size: 2rem;
    background-position: center;
}

/*---------------------------------------
	HOME
---------------------------------------*/

.service h2 {
	border-bottom:2px solid #0075bf;
	color:#0075bf;	
	margin-bottom:1rem;
	padding-bottom:0.75rem;
}

.service .panel {
	padding:1.25rem;
}

.service .panel p {
	padding-bottom:0;
	min-height:4.1875rem;
}

.service .panel p:last-child {
	padding-bottom:0;
	min-height:inherit;
}

.service .panel a {
	color:#0075bf;
}

.service .panel a:hover {
	color:#00568c;
}

/*---------------------------------------
	CONTENT
---------------------------------------*/

.home #content {
	padding:0;
}

#content {
	padding:0 0 5rem 0;
}

.main p a {
	text-decoration:underline;
}

/*printlink*/
i.icon-print {
	background-image:url(../Images/print-icon.png);
	background-repeat:no-repeat;
	display:block;
	height:16px;
	width:16px;
}

figcaption.image-caption {
  display: table-caption;
  text-align: left;
  caption-side: bottom;
}

.printlink .print {
	float:right;
	margin-top:1.75rem;
}

/*visual*/
#visual {
	margin-bottom:2rem;
}

#content ul, #content ol {
	font-size:0.9375rem;
}

#content ol {
	margin-left:1.1rem;
}

#content ul li, #content ol li {
	line-height:1.75;
}

#visual figcaption.image-caption {
	padding: 2.5rem 1.375rem;
}

.ce-image figcaption.image-caption {
  color: #fff;
  font-size: 1.25rem;
  padding: 1.375rem;
  margin-top: -175px;
  width: 30%;
}

/*panel*/
.panel {
	background-color:#f7f7f7;
	border:1px solid #e3e3e3;	
	padding-bottom:0;
	margin-bottom:1.5rem;
}

.panel p {
	font-size:0.875rem;
	color:#555;
}

.panel a {
	color:#555;
}

.panel a:hover, .panel a:focus {
	color:#0075bf;
}

.panel h3 {
	color:#0075bf;
	margin-bottom:1rem;
	border-bottom: 2px solid #0075bf;
	padding-bottom:0.75rem;
}

.panel ul {
	padding-bottom:1rem;
}

.panel .ce-image.ce-center figure img {
	margin-bottom:0.9375rem;
}

/*form*/
label {
	font-size:0.9375rem;
}

fieldset {
	padding-bottom:0;
}

fieldset legend {
	margin:0;
	font-size:1.25rem;
	font-weight:600;
}

input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
	margin:0 0 0.5rem;
}

/*csc-uploads*/
ul.ce-uploads {
	margin:0;
  list-style-type: none;
}

ul.ce-uploads li {
	background:url(../Images/pdf-icon.png) no-repeat left 3px;
	padding-left:1.5rem;
	margin:0 0 0.25rem 0;
	line-height:1.6 !important;
	font-size:0.875rem;
}

ul.ce-uploads li span {
	display:inline;
}

ul.ce-uploads li span.ce-uploads-fileName {
	margin-right:0.25rem;
	text-decoration:none;
	color:#666;
}

.csc-uploads-description, .csc-uploads-fileSize {
	color:#888;
}

.csc-uploads-fileSize:before{
	content:"(";
}

.csc-uploads-fileSize:after{
	content:")";
}

/*news*/
.news-wrapper {
	background-color:#f7f7f7;
	border-top:1px solid #e3e3e3;
	padding:2.5rem 0 1rem 0;
	margin-top:3.5rem;
}

.news h2 a {
	color:#0075bf;
}

.news h2 a:hover {
	color:#00568c;
}

.news a.more, .news-backlink-wrap a {
	font-size:0.9375rem;
	text-decoration:underline;
	color:#333;
}

.news a.more:hover, .news-backlink-wrap a:hover {
	color:#00568c;
}

.box-wrapper {
	margin-bottom:1rem;
	overflow:hidden;
}

.news .news-related-files ul.csc-uploads li::marker {
    content: "";
}

/*---------------------------------------
	IMAGES
---------------------------------------*/

.csc-textpic-caption {
	color:#fff;
	font-size:1.25rem;
	padding:1.375rem;
	margin-top:-175px;
	width:30%;
}

figure img {
	width:100%;
}

.slick-slider .slick-item {
    vertical-align: top;
}

.slick-slider figure {
    margin: 0;
    padding: 0;
    position: relative;
}

.slick-slider .slick-img {
    max-width: none;
    min-width: 100%;
    width: 100%;
}

.slick-slider figure figcaption {
    background:none;
    bottom: 0;
    color: #fff;
    font-size: 1.25rem;
    padding: 2.5rem 1.375rem;
    position: absolute;
    text-align: left;
    width: 30%;
}

.slick-dots, #visual .slick-slider .slick-dots {
    bottom: -30px;
}

.slick-slider .slick-dots li {
    height: 20px;
    margin: 0 3px;
    width: 20px;
}

.slick-slider .slick-dots li button {
    height: 20px;
    width: 20px;
    padding: 5px;
}

.slick-slider .slick-dots li button::before {
    color: #000;
    font-family: 'slick';
    font-size: 14px;
    height: 14px;
    line-height: 14px;
    opacity: 0.25;
    text-align: center;
    width: 14px;
    transition: 0.25s;
}

.slick-slider .slick-dots li.slick-active button::before,
.slick-slider .slick-dots li:focus button::before,
.slick-slider .slick-dots li:hover button::before {
    opacity: 1;
}

.ce-textpic, .ce-image {
  overflow: hidden;
}

.ce-textpic.ce-right.ce-intext .ce-gallery {
  float: right;
  margin-left: 10px;
}

.ce-textpic.ce-left.ce-intext .ce-gallery {
  float: left;
  margin-right: 10px;
}

div.ce-image .ce-gallery figure.image, div.ce-textpic .ce-gallery figure.image {
  margin: 0;
  margin-bottom: 10px;
  display: table;
}

/*---------------------------------------
  FRAMES
---------------------------------------*/
.frame-space-before-large {
  margin-top: 30px!important;
}

.frame-space-after-large {
  margin-bottom: 30px!important;
}

/*---------------------------------------
	FOOTER
---------------------------------------*/

footer, #footer {
	border-top:1px solid #dbdbdb;
	padding-top:3.5rem;
}

footer p, #footer p {
	color:#666;
	font-size:0.875rem;
}

#footer .bottom {
	border-top:1px solid #dbdbdb;
	margin-top:0.5rem;
	padding-top:1.5rem;
}

.disclaimer {
	text-align:right;
}

/*---------------------------------------
	Miscellaneous
---------------------------------------*/

/*tables*/
table {
	width:100%;
	border:0;
}

/*last-column*/
[class*="column"] + [class*="column"]:last-child {
	float:left;
}

.cbQuickGoogleMap {
	overflow:hidden;
}

.responsive-map {
  position: relative;
  padding-bottom: 60%;
  height: 0;
  overflow: hidden;
  margin-bottom: 1.25rem;
}

.responsive-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;	
}

@media only screen and (max-width: 40em) {
	h1 {
		font-size:1.875rem;
	}
	
	#visual {
		margin-bottom:0.5rem;
	}
	
	#branding .icon, #branding .logo, #branding .jubilaeum {
		padding:0.5rem 0;
	}
	#content {
		padding: 0 0 1.5rem;
	}
    #branding .icon img {
        max-width: 50px
    }
	
	.news-wrapper {
		margin-top:1.5rem;	
		padding: 1.5rem 0 1rem;
	}
	footer, #footer {
		padding-top: 1.5rem;	
	}
}

@media only screen and (max-width: 58.75em) {
	figcaption.image-caption {
		display:none;
	}
	.sidebox {
		margin-top:1rem;
	}
}

@media only screen and (max-width: 64em) {
	.sidebox {
		margin-top:1.25rem;
	}
	.slick-slider figure figcaption {
		background: #0175c0;
		bottom: 0;
		color: #fff;
		font-size: 1.125rem;
		padding: 1rem;
		position: relative;
		text-align: left;
		width: 100%;
	}	
}

@media only screen and (min-width:30.0625em) and (max-width:40em) {
	.panel .csc-textpic-center figure img, 
	.news-single .article .news-img-wrap img {
		width:60%;
	}
}