@import url('//fonts.googleapis.com/css?family=Open+Sans|Average|Roboto:400,700');

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

body {
  margin: 0;
}

[class*='col-'] {
  float: left;
  min-height: 1px;
/*  padding-right: 20px;*/
}

.grid {
  width: 100%;
 /* min-width: 748px;  when using padded grid on ipad in portrait mode, width should be viewport-width - padding = (768 - 20) = 748. actually, it should be even smaller to allow for padding of grid containing element */
 /* max-width: 1920px; */
  margin: 0 auto;
  overflow: hidden;
}

.grid:after { content: ""; display: table; clear: both; }

.grid-pad {
  padding-top: 20px;
  padding-left: 20px; /* grid-space to left */
  padding-right: 0; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-20px=0 */
}

.push-right { float: right; }


/* Content Columns 
-------------------------------------------------------------- */

.col-1-1  { width: 100%; }

.col-2-3, .col-8-12 { width: 66.66%; }
.col-1-2, .col-6-12 { width: 50%; }
.col-1-3, .col-4-12 { width: 33.33%; }
.col-1-4, .col-3-12 { width: 25%; }

.col-1-5  { width: 20%; }

.col-1-6, .col-2-12 { width: 16.667%; }

.col-1-7  { width: 14.28%; }
.col-1-8  { width: 12.5%; }
.col-1-9  { width: 11.1%; }
.col-1-10 { width: 10%; }
.col-1-11 { width: 9.09%; }
.col-1-12 { width: 8.33% }

/* Layout Columns
-------------------------------------------------------------- */

.col-11-12 { width: 91.66% }
.col-10-12 { width: 83.333%; }
.col-9-12  { width: 75%; }
.col-5-12  { width: 41.66%; }
.col-7-12  { width: 58.33% }

/* Pushing Blocks
-------------------------------------------------------------- */

.push-2-3, .push-8-12 { margin-left: 66.66%; }

.push-1-2, .push-6-12 { margin-left: 50%; }
.push-1-3, .push-4-12 { margin-left: 33.33%; }
.push-1-4, .push-3-12 { margin-left: 25%; }

.push-1-5 { margin-left: 20%; }

.push-1-6, .push-2-12 { margin-left: 16.667%; }

.push-1-7  { margin-left: 14.28%; }
.push-1-8  { margin-left: 12.5%; }
.push-1-9  { margin-left: 11.1%; }
.push-1-10 { margin-left: 10%; }
.push-1-11 { margin-left: 9.09%; }
.push-1-12 { margin-left: 8.33% }


/* Default font settings.
   The font-size percentage is of 16px. (0.75 * 16px = 12px)
-------------------------------------------------------------- */

html { font-size:100.01%; }
body {
  color: #333;
  background-color: #E0E0F8; /* F7BE81 */
  font-family: 'Open Sans';
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 75%;
}

/* Slide
-------------------------------------------------------------- */

.slide-content {
	display:none;
    position: absolute;
    bottom: 20px!important;
    left: 10%;
    width: 600px!important;
    background: rgba(0,0,0,.7);
    padding: 40px!important;
    color: #fff;
    text-align: center;
    font-family: Open Sans;
    font-size: 1.2em;
}

/* Layout Div IDs
-------------------------------------------------------------- */

#maincontent { }

#container { background: #fff; }
#welcome-container { background: #fff; }
#welcome-container .post { padding: 15px 0; }
#welcome-container p { margin: 0 0 1em; font-size: 0.8em; text-transform: uppercase; }

#content { font-size: 1.2em; background: #fff; padding: 30px 20px; }
#welcome { font-size: 1.2em; background: #fff; }

#footer  { padding: 30px 0; background: #363636; color: #8c919b; font-family: 'Open Sans', Arial, Verdana, 'Helvetica Neue', Helvetica, sans-serif; font-size: 1.2em; margin-bottom: 30px; }
#footer h3 { color: #FF8000; font-weight: bold; }

#footer-content { display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; flex-direction: row; }
#footer-content #widget { display: inline-block; -webkit-flex: 1 0 40%; flex: 1 0 40%; margin: 0 10px; }

.post { padding: 30px 0; float: left; }

#container.members { display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; flex-direction: row; }
#container.members .post { display: inline-block; -webkit-flex: 1 0 40%; flex: 1 0 40%; margin: 0 30px; }

.thumbnail { float: right; margin: 0 20px; }
.thumbnail img { max-width: 250px; height: auto; }

.adresse { margin: -20px 0 30px 0; font-family: 'Roboto'; font-size: 0.8em;
}

.date {
font-family: Open Sans;
font-weight: 800;
text-transform: uppercase;
}

#header { /* background-image: url(../../../wp/wp-content/uploads/2017/06/banner.png);
 background-attachment: fixed; */ }

#slide { overflow: hidden;
max-height: 350px; }

#logo { padding: 50px 40px 20px 40px;
height: 120px;
background-color: rgba(255,255,255,1); }
#logo img { max-height: 100%;
max-width: 100%;
 }
#contact { float: right;
font-family: 'Roboto';
font-size: 1.3em;
color: #666;
bottom: 0px;
position: relative;
padding-top: 30px; }

#box { background-color: #FF8000; padding: 50px; }

.trenner { margin-top: 20px; }
.trenner hr {
border: 0;
height: 1px;
background-image: linear-gradient(to right, rgba(0, 0, 0, 0), #FF8000, rgba(0, 0, 0, 0));
}

#wrapper { background-color: #fff; box-shadow: 12px 0 40px -45px #000; }

/* Angebote
-------------------------------------------------------------- */

#projects	 { padding: 0 50px; background-color: rgba(255,255,255,0.8); }
#projects h3     { text-align: left; color: #ff9000;
font-weight: bold; }

#projects p      { font-family: Open Sans; font-size: 1em; }
#projects img    { float: right;
width: 75px;
height: auto;
margin-right: 5px; }

#projects ul     { display: flex; padding: 0; margin: 0;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-flex-direction: row;
flex-direction: row;
list-style-type: none; }

#projects ul li  { display: inline-block; -webkit-flex: 1 0 20%; min-width: 250px;
flex: 1 0 20%; padding: 10px 30px; }
#projects ul li:hover    { background-color: #FF8000; color: #fff; }
#projects ul li:hover h3,
#projects ul li:hover h4,
#projects ul li:hover a  { color: #fff; }

#projects ul li a   { color: #000; }


/* Map
-------------------------------------------------------------- */

#legend {
  margin-right: 20px!important;
}

/* Events
-------------------------------------------------------------- */

#sidebar {
    padding: 10px 0;
    background: #ddd;
    text-align: center;
}

#widget #vsel   { display: inline-block; margin: 10px auto; float: none; width: auto; font-family: 'Roboto'; color: #fff; }
#widget #vsel p { margin:0 0 10px; }

#widget #vsel .vsel-content:first-child { border-left: none; }

#widget #vsel .vsel-content    { width: 250px;
padding: 10px; margin: 0;
border-left: 1px solid #ccc;
border-bottom: none;
 }
#widget #vsel h4,
#widget #vsel a    { color: #666; font-size: 1em; }
#widget #vsel .vsel-meta       { width: 100%; font-size: 1em; }
#widget #vsel .vsel-meta-date  { font-size: 2em; font-weight: bold; }
#vsel .vsel-image-info {
    width: 100%;
    float: right;
}

#vsel .vsel-no-events {
    display: none;
}

/* Search
-------------------------------------------------------------- */

#search  { float: right; margin: 5px; }
#sufu-mobile  { display: none; }

/* Pagination
-------------------------------------------------------------- */

.pagination {
    clear:both;
    position:relative;
    font-size:11px; /* Pagination text size */
    line-height:13px;
    float:right; /* Pagination float direction */
}
 
.pagination span, .pagination a {
    display:block;
    float:left;
    margin: 2px 2px 2px 0;
    padding:6px 9px 5px 9px;
    text-decoration:none;
    width:auto;
    color:#fff; /* Pagination text color */
    background: #555; /* Pagination non-active background color */
    -webkit-transition: background .15s ease-in-out;
    -moz-transition: background .15s ease-in-out;
    -ms-transition: background .15s ease-in-out;
    -o-transition: background .15s ease-in-out;
    transition: background .15s ease-in-out;
}
 
.pagination a:hover{
    color:#fff;
    background: #FF8000; /* Pagination background on hover */
}
 
.pagination .current{
    padding:6px 9px 5px 9px;
    background: #FF8000; /* Current page background */
    color:#fff;
}

/* Menu
-------------------------------------------------------------- */

.main-navigation       { letter-spacing: 2px; font-weight: bold; font-size: 16px; padding-bottom: 0px; font-family: 'Roboto'; }
.main-navigation ul    { display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; flex-direction: row; list-style-type: none; margin: 0; padding: 0; overflow: hidden; }
.main-navigation li    { display: inline-block; -webkit-flex: 1 0 5%; flex: 1 0 5%;
background-color: rgba(255,128,0,0.8);
 }
.main-navigation li:hover,
.main-navigation li.current-menu-item,
.main-navigation li.current-menu-ancestor { transform: none; background-color: #FAAC58;
 }

.main-navigation li li { background-color: #FAAC58; transform: none; }

.main-navigation li ul { list-style-type: none; overflow: hidden; position: absolute; width: 100%; left: 0; display: none; z-index: 2; }
.main-navigation li:hover ul { display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; flex-direction: row; }

.main-navigation li a       { display: block; color: black; padding: 33px 13px 13px 13px; color: #fff; font-size: 1.25em; }
.main-navigation li li a    { transform: none; }

.main-navigation li.current-menu-item a { text-shadow: 1px 1px #666; }

/** Menu Items 

li.menu-item-1,
li.menu-item-11,
li.menu-item-21,
li.menu-item-31,
li.menu-item-41,
li.menu-item-51,
li.menu-item-6,
li.menu-item-16,
li.menu-item-26,
li.menu-item-36,
li.menu-item-46,
li.menu-item-56 { background-color: #FAAC58; }

li.menu-item-2,
li.menu-item-12,
li.menu-item-22,
li.menu-item-32,
li.menu-item-42,
li.menu-item-52,
li.menu-item-4,
li.menu-item-14,
li.menu-item-24,
li.menu-item-34,
li.menu-item-44,
li.menu-item-54,
li.menu-item-8,
li.menu-item-18,
li.menu-item-28,
li.menu-item-38,
li.menu-item-48,
li.menu-item-58 { background-color: #FE9A2E; }

li.menu-item-3,
li.menu-item-13,
li.menu-item-23,
li.menu-item-33,
li.menu-item-43,
li.menu-item-53,
li.menu-item-5,
li.menu-item-15,
li.menu-item-25,
li.menu-item-35,
li.menu-item-45,
li.menu-item-55,
li.menu-item-0,
li.menu-item-10,
li.menu-item-20,
li.menu-item-30,
li.menu-item-40,
li.menu-item-50 { background-color: #DF7401; }

li.menu-item-7,
li.menu-item-17,
li.menu-item-27,
li.menu-item-37,
li.menu-item-47,
li.menu-item-57,
li.menu-item-9,
li.menu-item-19,
li.menu-item-29,
li.menu-item-39,
li.menu-item-49,
li.menu-item-59 { background-color: #FF8000; } **/

/* Headings
-------------------------------------------------------------- */

h1,h2,h3,h4 { color: #111; font-family: 'Average'; font-weight: 400; }

h1 {
    font-size: 2.5em;
    line-height: 1;
    margin-bottom: 0.5em;
    padding-top: 10px;
}

h2 { font-size: 1.8em; margin-bottom: 0.75em; }
h3 { font-size: 1.5em; line-height: 1; margin-bottom: 1em; }
h4 { font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em; }
h5 { font-size: 1em; font-weight: bold; margin-bottom: 1.5em; }
h6 { font-size: 1em; font-weight: bold; }

h1 img, h2 img, h3 img,
h4 img, h5 img, h6 img {
  margin: 0;
}

h1, h2 { color: #ff8000;
/* border-bottom: 2px solid #ff8000; */
padding-bottom: 5px;
margin: 8px 0 35px 0;
}

/* Text elements
-------------------------------------------------------------- */

p           { margin: 0 0 1.5em; }
/*
  These can be used to pull an image at the start of a paragraph, so
  that the text flows around it (usage: <p><img class="left">Text</p>)
 */
.left       { float: left !important; }
p .left     { margin: 1.5em 1.5em 1.5em 0; padding: 0; }
.right      { float: right !important; }
p .right    { margin: 1.5em 0 1.5em 1.5em; padding: 0; }

a:focus,
a:hover     { color: rgba(255,128,0,0.5); }
a           { color: rgba(255,128,0,0.8); text-decoration: none; }

blockquote  { margin: 1.5em; color: #666; font-style: italic; }
strong,dfn  { font-weight: bold; }
em,dfn      { font-style: italic; }
sup, sub    { line-height: 0; }

abbr,
acronym     { border-bottom: 1px dotted #666; }
address     { margin: 0 0 1.5em; font-style: italic; }
del         { color:#666; }

pre         { margin: 1.5em 0; white-space: pre; }
pre,code,tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }

/*img	    { max-width:100%; max-height:100%; }*/

/* Lists
-------------------------------------------------------------- */

li ul,
li ol  { margin: 0; }
ul, ol { margin: 0 1.5em 1.5em 0; padding-left: 1.5em; }

ul     { list-style-type: disc; }
ol     { list-style-type: decimal; }

dl     { margin: 0 0 1.5em 0; }
dl dt  { font-weight: bold; }
dd     { margin-left: 1.5em;}


/* Tables
-------------------------------------------------------------- */

/*
  Because of the need for padding on TH and TD, the vertical rhythm
  on table cells has to be 27px, instead of the standard 18px or 36px
  of other elements.
 */
table         { margin-bottom: 1.4em; width:100%; }
th            { font-weight: bold; }
thead th      { background: #c3d9ff; }
th,td,caption { padding: 4px 10px 4px 5px; }
/*
  You can zebra-stripe your tables in outdated browsers by adding
  the class "even" to every other table row.
 */
tbody tr:nth-child(even) td,
tbody tr.even td  {
  background: #e5ecf9;
}
tfoot        { font-style: italic; }
caption      { background: #eee; }


/* Color dummy
-------------------------------------------------------------- */
.blue	   { border: 3px dotted #0000ff; }
.green	   { border: 3px dotted #00ff00; }
.red	   { border: 3px dotted #ff0000; }
.gray      { border: 3px dotted #aaaaaa; }

/* Misc classes
-------------------------------------------------------------- */

.small     { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
.large     { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
.hide      { display: none; }

.quiet     { color: #666; }
.loud      { color: #000; }
.highlight { background:#ff0; }
.added     { background:#060; color: #fff; }
.removed   { background:#900; color: #fff; }

.first     { margin-left:0; padding-left:0; }
.last      { margin-right:0; padding-right:0; }
.top       { margin-top:0; padding-top:0; }
.bottom    { margin-bottom:0; padding-bottom:0; }

.right 	   { text-align: right; }

hr { 
    display: block;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 60px;
    margin-right: auto;
    border-style: inset;
    border-width: 1px;
} 

/* Mobile Grid
-------------------------------------------------------------- */
  
@media all and (max-width: 1000px) {
  #projects h3 { text-align: center; color: #ff9000; font-weight: bold; }
  .block { display: none; }
	
  [class*='col-'] {
    margin: 0px;
    /*padding-right: 10px; /* column-space */
  }

  [class*='push-'] {
    margin-left: 0px;
  }

  /* Mobile Layout */

  [class*='mobile-col-'] {
    float: left;
    margin: 0;
  }
  .mobile-col-1-1  { width: 100%; padding: 0 50px; }
}

@media all and (max-width: 1366px) {
/*  .grid {
    width: 100%;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
    /*padding-left: 20px; /* grid-space to left */
    /*padding-right: 10px; /* grid-space to right: (grid-space-left - column-space) e.g. 20px-10px=10px
  }*/

  #projects { padding: 0; }
  
  .main-navigation li a {
	  display: block;
	  color: black;
	  padding: 13px;
	  color: #fff;
	  font-size: 1.25em;
  }
}

@media all and (max-width: 580px) {

  #footer { padding: 30px; }
  
  #logo { height: auto; padding: 30px 20px;}
#contact { text-align: right; }

#legend {
  margin-right: 0px!important;
}

.mobile-col-1-1  { width: 100%; padding: 0; }
	
.slide-content { left: 0px; padding: 10px!important;
width: auto !important; font-size: 1em;
}

#widget #vsel .vsel-content { float: none; border: none; }
#widget #vsel .vsel-meta-date  { font-size: 1.2em; font-weight: bold; margin: 0; }
#sidebar {padding:0; text-align: center;}
#widget #vsel .vsel-content { padding: 10px 10px 0 10px; }

  .hide-on-mobile {
    display: none !important;
    width: 0;
    height: 0;
  }
}