/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}
body{margin:0}
main{display:block}
h1{font-size:2em;margin:.67em 0}
hr{box-sizing:content-box;height:0;overflow:visible}
pre{font-family:monospace,monospace;font-size:1em}
a{background-color:transparent}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
b,strong{font-weight:bolder}
code,kbd,samp{font-family:monospace,monospace;font-size:1em}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-.25em}
sup{top:-.5em}
img{border-style:none}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}
button,input{overflow:visible}
button,select{text-transform:none}
button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}
fieldset{padding:.35em .75em .625em}
legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}
progress{vertical-align:baseline}
textarea{overflow:auto}
[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}
[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}
[type="search"]::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
details{display:block}
summary{display:list-item}
template{display:none}
[hidden]{display:none}

/*! HTML5 Boilerplate v7.2.0 | MIT License | https://html5boilerplate.com/ */
html{color:#222;font-size:1em;line-height:1.4}
::-moz-selection{background:#b3d4fc;text-shadow:none}
::selection{background:#b3d4fc;text-shadow:none}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
audio,canvas,iframe,img,svg,video{vertical-align:middle}
fieldset{border:0;margin:0;padding:0}
textarea{resize:vertical}

/* Browser Upgrade Prompt */
.browserupgrade{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}

/* ==========================================================================
	Author's custom styles

	font-family: benton-sans, sans-serif;
	light=300 | book=400 | medium=600
	blue: #21326d; rgb 33, 50, 109
	orange: #d3811f; rgb 211, 129, 31

	========================================================================== */

body {
  font-family: benton-sans, sans-serif;
  font-weight:300;
  font-style: normal;
  background:#fff;
  color:#222;
  margin:0;
}
html { font-size:.9375rem; line-height:1.5; }

/* generale */
a { color:#21326d; text-decoration:none; transition:color .35s; }
a:hover, a.active { color:#d3811f; }
a:focus, button:focus, select:focus {outline:0; }
nav, ul { margin:0; padding:0; }
nav ul li { list-style:none; }
img, embed, object { max-width:100%; height:auto; width:100%; }
figure { margin:0; }

/* default font-weight + styles */
nav.nav_main ul li a {
  font-weight:400;
}
strong, th, .btn, nav.nav_main ul li a.active {
  font-weight:400;
}
h1, h2, h3, .mm-menu .mm-navbar {
  font-weight:600;
}

/* layout boxes */
#container { display:flex; min-height:100vh; flex-direction:column; }
.wrapper { max-width:62.25em; margin:0 auto; }
.wrapper .inner { margin:0 1.125em; }
main { flex:1 0 auto; margin:5em 0 2.5em 0; }
.illu main { margin:0; }
.contact .content { position:relative; }
.contact .content div {
  position:absolute;
  z-index:1;
  right:0;
  bottom:30vh;
  padding:1.25em 1.25em 0 1.25em;
  background:#fff;
  border:1px solid #ccc;
}

/* header */
.header { margin:0; position:fixed; background:rgba(255,255,255,0.9); width:100%; top:0; z-index:10; }
.illu .header { background:none; position:absolute; }
.header .wrapper .inner { position:relative; margin:.5em 1.125em; }
.header .logo { display:inline-block; margin:0; }
.illu .header .logo { margin:0; }
.header .logo svg { width:160px; opacity:1.0; transition:opacity .35s; }
.header .logo svg:hover { opacity:0.7; }

/* img map */
img.zala-map, map area { outline: none; }

/* header navi */
nav.nav_main { position:absolute; top:.5em; right:0; }
nav.nav_main ul li { display:inline-block; padding:0; }
nav.nav_main ul li a {
  display:block;
  line-height:1.5;
  margin:0 1.5em 0 0;
  padding:0;
  font-size:1.0625rem;
  transition:all .35s;
}
nav.nav_main ul li:last-child a { margin:0; }

/* content styles */
.content h1 { font-size:1.3125rem; line-height:1.2; margin:0 0 1em 0; padding:0; color:#d3811f; }
.content h2 { font-size:1.125rem; line-height:1.1; margin:0 0 .75em 0; padding:0; color:#666; }
.content h3 { line-height:1; margin:0 0 .25em 0; padding:0; color:#444; }

.content p, .content ul { margin:0 0 1em 0; }
.content p.small { font-size:81.25%; margin:.125em 0 1em 0; }

.content a { color:#21326d; border-bottom:1px solid #21326d; }
.content a:hover { color:#d3811f; border-bottom:1px solid #d3811f; }

.content ul { padding-left:22px; text-indent:-18px; list-style:none; }
.content ul li { margin:0 0 6px 0; }
.content ul li:before { content:"–"; padding:0 8px 0 0; }

.content table { border-collapse:collapse; margin:0 0 1.25em 0; width:100%; }
.content table caption, .content table th { text-align:left; }
.content table th, .content table td { padding:.375em .625em; vertical-align:top; }
.content table td { border-top:1px solid #ccc; border-bottom:1px solid #ccc; }

/* footer */
footer { margin:0 0 2em 0; }
footer address { font-style:normal; display: inline-block; }
footer span.email:before, footer span.tel:before { content:'\00a0\00a0|\00a0\00a0' }

/* prev/next nav */
.nav_browse nav {
  display:-ms-flexbox;
  display:-webkit-box;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  -webkit-box-orient:horizontal;
  -webkit-box-direction:normal;
  -ms-flex-direction:row;
  flex-direction:row;
  margin:0 0 2em 0;
  padding:0;
  border-bottom:1px solid #ccc;
}
.nav_browse a, .nav_browse a:hover { font-size:81.25%; display:block; border-bottom:none; }
.nav_browse .prev a:before { content:'⇠'; font-size:1.25rem; padding-right:.25em; vertical-align:middle; line-height:1.2; }
.nav_browse .next a:after { content:'⇢'; font-size:1.25rem; padding-left:.25em; vertical-align:middle; line-height:1.2; }
.nav_browse .up { padding:.5em 0 0 0; }
.nav_browse .up a:before { content:'⇡'; font-size:1rem; padding-right:.25em; vertical-align:middle; line-height:1.2; }

/* pagelist grid */
.pagelist-cards {
  display: -ms-grid;
  display: grid; 
  -ms-grid-columns: 1fr 1em 1fr 1em 1fr 1em 1fr; 
  grid-template-columns: 1fr 1fr 1fr 1fr; 
  gap:1em; 
  margin:0 0 1em 0;
}
.pagelist-cards .card {
  border: 1px solid #ccc;
}

/* grid cols */
.grid.col_50-50, .grid.col_66-33, .grid.col_33-66, .grid.col_75-25, .grid.col_25-75, .grid.col_33-33-33, .grid.col_25-25-25-25 {
    display:-ms-flexbox;
    display:-webkit-box;
    display:flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    -ms-flex-direction:row;
    flex-direction:row;
    flex-wrap: wrap;
}

.grid.col_50-50 .item { width:48.5%; }
.grid.col_50-50--divided .item:first-child { width:48.5%; border-right:1px solid #ccc; padding-right:1.5%; }

.grid.col_66-33 .item:first-child { width:65.6667%; }
.grid.col_66-33 .item:last-child { width:31.3333%; }
.grid.col_66-33--divided .item:first-child { width:65.6667%; border-right:1px solid #ccc; padding-right:1.5%; }

.grid.col_33-66 .item:first-child { width:32.33%; }
.grid.col_33-66 .item:last-child { width:64.66%; }
.grid.col_33-66--divided .item:first-child { width:31.3333%; border-right:1px solid #ccc; padding-right:1.5%; }

.grid.col_75-25 .item:first-child { width:75%; }
.grid.col_75-25 .item:last-child { width:22.75%; }
.grid.col_75-25--divided .item:first-child { width:22.75%; border-right:1px solid #ccc; padding-right:1.5%; }

.grid.col_25-75 .item:first-child { width:22.75%; }
.grid.col_25-75 .item:last-child { width:75%; }
.grid.col_25-75--divided .item:first-child { width:75%; border-right:1px solid #ccc; padding-right:1.5%; }

.grid.col_33-33-33 .item { width:31.3333%; }
.grid.col_25-25-25-25 .item { width:22.75%; }

.grid .item { margin-bottom:3%; }

/* default styles for extension "tx_frontend" */
.ce-table td, .ce-table th { vertical-align: top; }
.ce-textpic, .ce-nowrap .ce-bodytext, .ce-uploads li, .ce-uploads div { overflow:hidden; }

.ce-left .ce-gallery, .ce-column { float: left; }
.ce-center .ce-outer { position: relative; float: right; right: 50%; }
.ce-center .ce-inner { position: relative; float: right; right: -50%; }
.ce-right .ce-gallery { float: right; }

.ce-gallery figure { display:table; margin:0; }
.ce-gallery figcaption { display:table-caption; caption-side:bottom; font-size:81.25%; color:#999; padding:.25em 0; }
.ce-gallery img { display:block; }
.ce-gallery iframe { border-width:0; }
.ce-border img, .ce-border iframe { border:1px solid #ccc; padding:0; }

.ce-intext.ce-right .ce-gallery,
.ce-intext.ce-left .ce-gallery,
.ce-above .ce-gallery {
    margin-bottom: 1em;
}
.ce-intext.ce-right .ce-gallery { margin-left: 1em; }
.ce-intext.ce-left .ce-gallery { margin-right: 1em; }
.ce-below .ce-gallery { margin-top: 1em; }

.ce-column { margin-right: 1em; }
.ce-column:last-child { margin-right:0; }

.ce-row { margin-bottom: 1em; }
.ce-row:last-child { margin-bottom:0; }

.ce-above .ce-bodytext { clear:both; }

.ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left:2.5em; overflow:auto; }

/* Uploads */
ul.ce-uploads { padding:0; }
ul.ce-uploads li { padding:.3125em 0; margin:0; }
ul.ce-uploads span.ce-uploads-description,
ul.ce-uploads span.ce-uploads-filesize { font-size:81.25%; padding-left:.5em; }
ul.ce-uploads img { width:150px; float:left; margin:0 .5em .5em 0; border:1px solid #ccc; }

/* Table */
.ce-table { width: 100%; max-width: 100%; }
.ce-table th, .ce-table td { padding: 0.5em 0.75em; vertical-align: top; }
.ce-table thead th { border-bottom: 2px solid #dadada; }
.ce-table th, .ce-table td { border-top: 1px solid #dadada; }
.ce-table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.05); }
.ce-table-bordered th, .ce-table-bordered td { border: 1px solid #dadada; }

/* special CE layout styles */
div.frame-space-before-small { margin-top:2em; }
div.frame-space-before-medium { margin-top:3em; }
div.frame-space-before-large { margin-top:4em; }
div.frame-space-after-small { margin-bottom:2em; }
div.frame-space-after-medium { margin-bottom:3em; }
div.frame-space-after-large { margin-bottom:4em; }

/* gallery responsive */
.ce-gallery, .ce-column { float: left; }
.ce-gallery { width: 100%; }
.ce-gallery .ce-column { box-sizing: border-box; margin-right: 2%; padding: 0; }
.ce-gallery .ce-column:last-child { margin-right: 0; }
.ce-gallery[data-ce-columns="1"] .ce-column { width: 100%; margin-bottom:0; }
.ce-gallery[data-ce-columns="2"] .ce-column { width: 48.5%; margin-bottom:0; }
.ce-gallery[data-ce-columns="3"] .ce-column { width: 31.3333%; margin-bottom:0; }
.ce-gallery[data-ce-columns="4"] .ce-column { width: 22.75%; margin-bottom:0; }
.ce-textpic.ce-left.ce-intext .ce-gallery { width:auto; float:left; margin:.25em 1.5em 1em 0; }
.ce-textpic.ce-right.ce-intext .ce-gallery { width:31.3333%; float:right; margin:.25em 0 1em 1.5em; }

/* youtube embed via CE text + media */
.embed-container { position:relative; padding-bottom:56.25%; height:0; overflow:hidden; max-width:100%; }
.embed-container iframe, .embed-container object, .embed-container embed { position:absolute; top:0; left:0; width:100%; height:100%; border:none; }

/* ext cookieconsent */
.cc-revoke, .cc-window { font-family: benton-sans, sans-serif; font-weight:300; line-height:1.25; }
.cc-window.cc-floating { padding:1em; }
.cc-floating.cc-theme-edgeless .cc-message { margin:0 0 .75em 0; }
.cc-link { padding:0; }
.cc-btn { font-weight:600; transition:background-color .35s; }
.cc-btn:hover { background-color:#d3811f!important; }

/* show mmenu ul after dom loaded */
#off-mmenu:not( .mm-menu ) { display:none; }

/*
* hamburgers
* @author Jonathan Suh @jonsuh
* @site https://jonsuh.com/burgers
*/

.burger {
  display:none;
  padding:1em;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  position:fixed;
  z-index:999999;
  right:-0.75%;
}

.burger:hover, .mm-wrapper_opened .burger:hover { opacity: 0.7; }
.mm-wrapper_opened .burger .burger-inner,
.mm-wrapper_opened .burger .burger-inner::before,
.mm-wrapper_opened .burger .burger-inner::after { background-color:#d3811f; }

.burger-box {
  width: 2.5em;
  height: 1.875em;
  display: inline-block;
  position: relative;
}

.burger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.burger-inner, .burger-inner::before, .burger-inner::after {
  width: 2.5em;
  height: 0.3125em;
  background-color:#d3811f;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.burger-inner::before, .burger-inner::after {
  content: "";
  display: block;
}
.burger-inner::before { top: -10px; }
.burger-inner::after { bottom: -10px; }

/* spin animation */
.burger--spin .burger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.burger--spin .burger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.burger--spin .burger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.mm-wrapper_opened .burger--spin .burger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.mm-wrapper_opened .burger--spin .burger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.mm-wrapper_opened .burger--spin .burger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* CE teaser */
.ce-teaser { position:relative; margin-bottom:1em; }

.ce-teaser .no_img .spacer { padding-bottom:66.6666%; }
.ce-teaser a { display:block; border-bottom:none; }
.ce-teaser a:hover { border-bottom:none; }
.ce-teaser a img { opacity:1.0; transition:opacity .35s; border:1px solid #ccc; }
.ce-teaser a:hover img { opacity:0.8; }

.ce-teaser .title {
  position:absolute;
  z-index:10;
  width:calc(100% - 1em);
  bottom:0;
  padding:.25em .5em;
  background:rgba(33, 50, 109, 0.5);
  display:none;
}
.ce-teaser a:hover .title { background:rgba(33, 50, 109, 1.0); display:block; }
.ce-teaser .no_img .title { background:none; }

.ce-teaser .title p { font-size:.875rem; }
.ce-teaser .title p, .ce-teaser .title span { color:#fff; margin:0; line-height:1.3; }
.ce-teaser .title .spacer { height:.625em; }

/* gridgallery */
.ce-gridgallery { margin:0 0 20px 0; }
.ce-gridgallery a, .ce-gridgallery a:hover { border:1px solid #ccc; }
.justified-gallery > a > .caption,
.justified-gallery > div > .caption,
.justified-gallery > figure > .caption {
  font-family: benton-sans, sans-serif;
  font-size: .8125rem;
  font-weight: 400;
  background-color:#fff;
  color: #222;
}
.justified-gallery > a > .caption.caption-visible,
.justified-gallery > div > .caption.caption-visible,
.justified-gallery > figure > .caption.caption-visible {
  filter: "alpha(opacity=100)";
  opacity: 1.0;
}

/* Helper classes */
.hidden{display:none!important}
.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}
.sr-only.focusable:active,.sr-only.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;white-space:inherit;width:auto}
.invisible{visibility:hidden}
.clearfix:before,.clearfix:after{content:" ";display:table}
.clearfix:after{clear:both;}

/* ==========================================================================
  media queries
  ========================================================================== */
@media only screen and (max-width : 48em) {

  /* show burger */
  .burger { display: inline-block; }

  /* hide reduntant nav items */
  nav.nav_main { display:none; }

  .content h1, .content h2, .content h3, .content p { -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }

  .header .logo { margin:0; }

  /* container */
  .wrapper { max-width:100%; margin:0; }
  .header { position:static; }
  .wrapper .inner { margin:0 3%; }
  .illu .wrapper .inner { margin:3.25em 0 0 0; }
  .header .wrapper .inner { margin:1em 3%; }
  .illu .header .wrapper .inner { margin:1em 3% 2.5em 3%; }

  main { margin:1em 0 0 0; }
  .contact .content div { right:0; bottom:-3em; margin:0 3%; padding:1.25em .75em 0 .75em; font-size:87.5%; }

  .grid.col_50-50, .grid.col_66-33, .grid.col_33-66, .grid.col_75-25, .grid.col_25-75,
  .grid.col_33-33-33, .grid.col_25-25-25-25 { flex-direction:column; }
  .grid.col_50-50.reverse, .grid.col_66-33.reverse, .grid.col_75-25.reverse, .grid.col_25-75.reverse,
  .grid.col_33-66.reverse, .grid.col_33-33-33.reverse { flex-direction:column-reverse; }

  .grid.col_50-50--divided .item:first-child,
  .grid.col_66-33--divided .item:first-child,
  .grid.col_33-66--divided .item:first-child,
  .grid.col_75-25--divided .item:first-child,
  .grid.col_25-75--divided .item:first-child { width:100%; border-right:none; padding-right:0; }

  .grid .item { width:100% !important; margin:0 0 1em 0; }

  .pagelist-cards {
    -ms-grid-columns: 1fr 1em 1fr 1em 1fr;
    grid-template-columns: 1fr 1fr 1fr; 
  }

  /* footer */
  .illu footer .wrapper .inner, footer .wrapper .inner { margin:0 3% 1em 3%; }
  footer { margin:2em 0 0 0; }
  footer span.fn, footer span.break { display:block; }
  footer span.email:before { display:none; }

  /* cookie-consent */
  .cc-window.cc-floating { padding:1em .75em; font-size:93.75%; }

  /* special CE layout styles */
  div.frame-space-before-small { margin-top:1em; }
  div.frame-space-before-medium { margin-top:1.75em; }
  div.frame-space-before-large { margin-top:2.5em; }
  div.frame-space-after-small { margin-bottom:1em; }
  div.frame-space-after-medium { margin-bottom:1.75em; }
  div.frame-space-after-large { margin-bottom:2.5em; }

}

@media only screen and (max-width : 30em) {

  .pagelist-cards {
    -ms-grid-columns: 1fr 1em 1fr;
    grid-template-columns: 1fr 1fr; 
  }

}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {

  /* Style adjustments for high resolution devices */

}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,:before,:after{background:transparent!important;color:#000!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important}
  a,a:visited{text-decoration:underline}
  a[href]:after{content:" (" attr(href) ")"}
  abbr[title]:after{content:" (" attr(title) ")"}
  a[href^="#"]:after,a[href^="javascript:"]:after{content:""}
  pre{white-space:pre-wrap!important}
  pre,blockquote{border:1px solid #999;page-break-inside:avoid}
  thead{display:table-header-group}
  tr,img{page-break-inside:avoid}
  p,h2,h3{orphans:3;widows:3}
  h2,h3{page-break-after:avoid}
}

