*,*:before,*:after {
  box-sizing:border-box;
}

html,body {
  height:100%;
}
@media only screen and (min-width : 580px) {
  html {
    font-size:14px;
  }
}
body {
  margin:0;
  padding:0;
  background:#aacde3;
}
body {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
table {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
input {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
textarea {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
button {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
select {
  font-family:arial,sans-serif;
  font-size:1rem;
  line-height:1.5;
  color:#888;
}
h1,h2,h3,h4,h5,h6,p,ol,ul,dl,table,form,fieldset,object {
  margin:0 0 1.5rem 0;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {
  display: block;
}
audio,canvas,video {
  display: block;
}

h1 {
  font-family:Georgia,serif;
  font-size:1.375rem;
  line-height:1.3em;
  font-weight:normal;
  color:#19587f;
}

.h1 {
  font-family:Georgia,serif;
  font-size:1.375rem;
  line-height:1.3em;
  font-weight:normal;
  color:#19587f;
}
h2 {
  font-family:Georgia,serif;
  font-size:1.2rem;
  line-height:1.3em;
  font-weight:normal;
  color:#19587f;
  margin:0 0 .5rem 0;
}
.h2 {
  font-family:Georgia,serif;
  font-size:1.2rem;
  line-height:1.3em;
  font-weight:normal;
  color:#19587f;
  margin:0 0 .5rem 0;
}
h3 {
  font-size:1rem;
  line-height:1.3em;
  font-weight:bold;
  color:#19587f;
  margin:0 0 .375rem 0;
}
.h3 {
  font-size:1rem;
  line-height:1.3em;
  font-weight:bold;
  color:#19587f;
  margin:0 0 .375rem 0;
}
h4,.h4,
h5,.h5,
h6,.h6 {
  font-size:1rem;
  line-height:1.3em;
  font-weight:bold;
  margin:0 0 .375rem 0;
}
a:link {
  text-decoration:none;
  color:#009ee0;
}
a:visited {
  color:#009ee0;
}
a:hover {
  text-decoration:underline;
}
a:active {}

dl.opening-times {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
  margin-bottom: 0.5rem;
}
dl.opening-times dt {
  flex: 0 0 5rem;
  font-weight: normal;
  margin: 0;
  padding: 0;
}
dl.opening-times dd {
  margin: 0;
  padding: 0;
}

main a.linkExt::before {
  content:'\f08e';
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right:.3em;
}

img {
  border:0;
  max-width:100%;
  height:auto !important;
}

table {
  border-spacing:1px;
}
table th,
table td {
  padding:.3em 1em .3em .3em;
  text-align:left;
  vertical-align:top;
  background:#fff;
  border-bottom:solid #eee 1px;
}
table th {
  font-weight:600;
  vertical-align:bottom;
  background:#f5f4f2;
}
.table-container {
  overflow-x: auto;
}

figure {
  margin:0 0 1.3em 0;
  padding:0;
}
figure img {
  display:block;
}
figure figcaption {
  background:#fff;
  margin:0;
  padding:.5em;
  font-style:italic;
  font-size:.8em;
}
figure figcaption:empty {
  display:none;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height:0;
}
.video-container video,
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.nowrap {
  white-space:nowrap;
}

/* clearfix
********************************/
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1; /* ie 6/7 */
}

/* Seitenelemente (Master)
********************************/
#header-top-container {
  background:#4583aa;
  padding:1rem 0;
  border-bottom:solid #fff 1px;
}

#header-top {
  display:flex;
  justify-content: space-between;
  align-items: center;
}


#logo img {
  width:10rem;
  height:auto;
}

#header-meta {
  display:none;
}

.nv-meta {
  font-size:.875rem;
}
.nv-meta ul {
  margin:0;
  padding:0;
  list-style:none;
  column-count:2;
}
.nv-meta ul li {
  margin:0;
  padding:0;
}
.nv-meta ul li a {
  color:#aacde3;
}

.search-form {
  display:flex;
  margin:0 0 .5rem 0;
}
.search-form input[type=search] {
  border-color:#fff;
  padding:.25rem;
}
.search-form button[type=submit] {
  background:#3c7091;
  border-color:#3c7091;
  padding:.25rem .5rem;
}

#nv-toggle {
  position:relative;
  z-index:1020;
}
#nv-toggle button {
  color:#fff;
  background:transparent;
  border:0;
  font-size:2rem;
  width:3rem;
  height:3rem;
  padding:0;
  line-height:3rem;
  text-align: center;
}
#nv-mobile {
  display:none;
  background:#4583aa;
}

#nv-mobile ul {
  margin:0;
  padding:0;
  list-style: none;
  font-weight:bold;
}
#nv-mobile ul li {
  margin:0;
  padding:0;
}
#nv-mobile ul li a {
  position:relative;
  display:block;
  padding:.625rem 1rem;
  text-decoration: none;
  color:#fff;
  background:#4583aa;
  border-bottom:solid #fff 1px;
}
#nv-mobile ul li a .toggle {
  position:absolute;
  right:1rem;
}
#nv-mobile ul li.open a {
  background:#3c7091;
}
#nv-mobile ul li.a1 > a {
  background:#ffd800 !important;
}
#nv-mobile ul li.s1 > ul {
  display:block;
}

#nv-mobile ul ul {
  display:none;
  text-transform:none;
  font-weight:normal;
}
#nv-mobile ul ul li.open a {
  background:undefined;
}
#nv-mobile ul ul li a {
  padding-left:2rem;
}
#nv-mobile ul ul li a::before {
  content:'';
  display:block;
  width:.313rem;
  height:.313rem;
  background:#fff;
  position:absolute;
  left:1.1rem;
  top:calc(50% - .1565rem);
}

#nv-mobile .search-form {
  padding:1rem;
  margin:0;
}

#nv-mobile .nv-meta {
  padding:1rem 0;
}
#nv-mobile .nv-meta ul li a {
  border:0;
  font-weight:normal;
}

#header-nv-container {
  background:#e0e5e1;
}
#nv {
  background:#aacde3;
  display:none;
}
#nv ul {
  margin:0;
  padding:0;
  list-style: none;
}
#nv ul li {
  margin:0;
  padding:0;
}
#nv ul li a {
  display:block;
  color:#7e6c5a;
  font-weight:bold;
  text-decoration: none;
  padding:.3125rem .625rem;
  transition:background .2s ease, color .2s ease;
}
#nv ul li a:hover {
  color:#ffd800;
  background:#4583aa;
  outline:0;
}
#nv ul li a:focus {
  color:#ffd800;
  background:#4583aa;
  outline:0;
}

#nv ul ul {
  display:none;
}

#main-container {
  background:#fff;
}

#footer-container {
  background:#4583aa;
  color:rgba(255,255,255,.8);
  padding:1rem 0;
  font-size:.875rem;
  border-top:solid #ffd800 2px;
}
#footer p {
  margin:0 0 .5rem 0;
}
#footer a {
  color:rgba(255,255,255,.8);
}

#footer .nv ul {
  margin:0;
  padding:0;
  list-style: none;
  line-height:1;
}
#footer .nv ul li {
  margin:0 0 .375rem 0;
  padding:0 0 0 .25rem;
  border-left:dotted rgba(255,255,255,.8) 1px;
}

#footer .col {
  margin:0 0 1rem 0;
}

#footer .logo-kunstblume {
  margin:0 0 1rem 0;
}
#footer .link-facebook {
  line-height: 2rem;
}
#footer .link-facebook .fa {
  font-size:2rem;
  vertical-align: middle;
}

@media only screen and (max-width : 992px) {
  #footer .col {
    flex: 0 0 50%;
    max-width: 50%;
  }
  /* #footer .col-themen,
  #footer .col-angebote,
  #footer .col-service {
    flex:0 0 33.3333%;
    max-width:33.3333%;
  }
  #footer .col-kontakt,
  #footer .col-kunstblume {
    flex:0 0 50%;
    max-width:50%;
  } */
}

@media only screen and (min-width : 768px) {
  #header-top {
    min-height:8rem;
  }
  #logo img {
    width:14rem;
    height:5.6rem;
  }
  #header-meta {
    display:block;
  }

  #nv-toggle {
    display:none;
  }
  #nv-mobile {
    display:none !important;
  }

  #nv {
    border-bottom:solid #4583aa .625rem;
    display:block !important;
  }
  #nv ul {
    display:flex;
  }
  #nv ul li {
    border-right:solid #fff 1px;
    position:relative;
  }
  #nv ul li a {
    text-align:center;
    height:100%;
  }
  #nv ul li:hover > a {
    color:#ffd800;
    background:#4583aa;
  }
  #nv ul li.a1 > a {
    color:#ffd800;
    background:#4583aa;
  }
  #nv ul li.s1 > a {
    color:#ffd800;
    background:#4583aa;
  }
  #nv ul ul {
    position:absolute;
    left:0;
    top:100%;
    z-index:1000;
    border-top:solid #4583aa .625rem;
  }
  #nv ul li:last-child ul {
    left:auto;
    right:0;
  }
  #nv ul ul li {
    border:0;
    border-top:solid #fff 1px;
  }
  #nv ul ul li a {
    background:#4583aa;
    font-weight:normal;
    color:#fff;
    text-align:left;
    white-space: nowrap;
  }
  #nv ul li:hover > ul {
    display:block;
  }
}