/*
Theme Name: GKK
Theme URI: https://garde-korps-koeln.de
Author: internetgestalten.de for porzladen.de
Author URI: http://www.porzladen.de/
Version: 0.9.4, 0.9.7
Description: Wordpress Theme - Garde Korps Koeln
*/


/*
Farben

DunkelBlau: #25418f - RGB 37/65/143
Helleres Blau: #0072ae  - RGB 0/114/174
Rot: #d2232a - RGB 210/35/42

*/


html {
//    background-image: linear-gradient(white 35%, #D8E9F2, #0072ae);
    background-attachment: fixed;
    font-size: 16px;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%; 
    margin: 0;
    height: 100%;
}

body {
    margin:0;  
    font-family: "Trebuchet MS", "Trebuchet", Helvetica, sans-serif;
    color: #25418f;
    padding-bottom: 60px;
}

.wrap-element {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}

.wrap-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.content, p, li {line-height: 1.6;}
.content ul,
.content ol { list-style-position: outside; padding: 0 0 0 1em;}

a {
    color: #858585;
    text-decoration: none;
}

a:hover {
     color: #aaa;
}

strong { font-weight:bold;}
blockquote { font-weight: bold; font-size: 1.4em; line-height: 1.6em; border-left: 3px solid #233F8D; margin-left: 0; padding-left: 1.2em;}
.blogzitat { 
	border-left: 2px solid #233F8D; 
	border-bottom: 3px solid #233F8D; 
	/* border-right: 5px solid whitesmoke; */
	/* border-top: 5px solid whitesmoke; */
	/* border-bottom-left-radius: 20px; */
	/* border-top-right-radius: 20px; */
	/* background-color: #E6E6E6; */
	margin-left: 0; 
	margin-top: -1em;
	margin-bottom: 1em;
	padding-left: 1.2em; }

h1,
h2 {
 /* font-family: 'Overpass', sans-serif; */
	font-family: "Trebuchet MS", "Trebuchet", Helvetica, sans-serif;
  font-weight: 800;
  line-height: 1.2;
  color: #d2232a;
   /* text-shadow:
        3px 3px 0 #fff,
      -1px -1px 0 #fff,  
       1px -1px 0 #fff,
       -1px 1px 0 #fff,
        1px 1px 0 #fff;
  */
}

h1 { font-size: 2.8em; text-transform: uppercase; margin: 1em 0 1.5em;  }
h2 { font-size: 2em;}
h3 { font-size: 1.8em;}
h4 { font-size: 1.4em;} 

img { max-width: 100%; height: auto; border-style: none;}
img.alignright { float: right; margin: .5em 0 2em 2em;}
img.alignleft { float: left; margin: .5em 2em 2em 0;}

#main hr { clear: both; margin: 2em 0;   border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgb(0,0,0,0), rgb(35, 63, 141, 0.75), rgba(0, 0, 0, 0)); }

/* header */
#pagehead { margin-bottom: 50px;}
#pagehead nav { position: relative; margin-top: -6%; z-index: 9999;} 
nav > ul { list-style-type: none; 
           margin: 0;
           padding: 0;
           width: 100%;  /* 70%; */
           display: flex; 
           justify-content: space-between; 
           /*justify-content: space-evenly; */
           border-top: 2px solid #25418f;
           position: absolute;
           right: 0;
           top: -80px;   /* -135px */
}
nav ul li { display: inline-block; margin: 0; line-height: 2.4em;}
nav ul li a { 
	font-family: "Trebuchet MS", "Trebuchet", Helvetica, sans-serif;
/*	font-family: 'Overpass', sans-serif; */
                color: #25418f; 
                text-decoration: none; 
                font-size: 18px; 
                font-weight: bold; 
                transition: all 0.1s ease-in-out
}
nav ul li a:hover,
nav ul li.current-menu-item a { }

nav ul.sub-menu { 
	display: none; 
	padding-left: 0; 
	position: absolute; 
	background-color: #fff; 
	padding: 10px;
}

ul.sub-menu li { display: block;}
ul.sub-menu li a:before {
	content: "\21B3  ";
	font-size:150%;
}

nav li.menu-item-has-children:hover > ul.sub-menu { display: block;}

nav li.menu-item-has-children > a::after {
	padding-left: 0.5em;
	content: '\25BC';
	
}

#menu-item-1021 ul { margin-left: -70px; }

#burger {
      position: fixed;  
      top: 50px;  /*10px */
      right: 4%;
      z-index: 999;
      display: none;
      width: 46px;
      height: 46px;
      margin: 0;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      -o-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
      cursor: pointer;
      background-color: #0068A7;
      border-radius: 10px;
    }
    #burger span {
      display: block;
      position: absolute;
      height: 2px;
      width: 62%;
      background: #fff;
      border-radius: 4px;
      opacity: 1;
      left: 19%;
      margin-top: 6px;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: .25s ease-in-out;
      -moz-transition: .25s ease-in-out;
      -o-transition: .25s ease-in-out;
      transition: .25s ease-in-out;
    }
    #burger span:nth-child(1) { top: 6px;}
    #burger span:nth-child(2), #burger span:nth-child(3) {top: 16px; }
    #burger span:nth-child(4) {top: 26px; }
    
   .open #burger span:nth-child(1) {
      top: 19px;
      width: 0%;
      left: 50%;
    }
   .open #burger span:nth-child(2) {
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg);
    }
  .open  #burger span:nth-child(3) {
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      transform: rotate(-45deg);
    }
  .open  #burger span:nth-child(4) {
      top: 18px;
      width: 0%;
      left: 50%;
    }
    

#grafik { display: flex; flex-wrap: nowrap; justify-content: space-between;}
#scribble { max-width: 25%;}
#logo { 
        max-width: 180px;
        margin-right: 2%;
        margin-top: 80px;}
#slogan { margin-top: 120px; max-width: 690px}


/* general layout */
section {  padding: 0;}
.container { max-width: 1620px; display: block; margin: 0 auto; padding: 0 7%;}

#main { width: 70%; margin-left: 30%; margin-bottom: 220px;}
.page-id-1623 #main,
.page-id-1766 #main,
.home #main { width: 100%; margin: 0 0 220px 0;}


.bildbeschriftung { font-size: 0.8em; }
.alignright { float:right;}
.alignleft  { float:left; }
.wp-caption-text { font-size:0.8em; font-style:italic; text-align:center;}
.flexCont { display:flex; flex-wrap:wrap; justify-content:space-between; }
.border-all {
	border: 2px solid navy;
	border-radius:25px;
	box-shadow: 10px 5px 5px grey;
	padding: 1em;
	margin: 0.5em;
}
.div-border {
	margin-bottom: 8em; border: solid 2px;
}
/* vorstand */
.vorstand .spalte { width: 24%; margin-bottom: 1em; text-align: center;}
.vorstand .spalte h1 { font-size: 1.8em; margin: 0 0 .2em 0; min-height: 3em;}
.vorstand .spalte h2 { font-size: 1.4em; margin: 0;}
.vorstand .spalte h3 { font-size: 1.1em; margin: 0;} 
.vorstand .spalte h3 a { color: #25418f;} 
.vorstand .spalte h3 a:hover { color: #d2232a;} 

/* Videos */
.videos { width: 100%; text-align: center; }
.videos h2 { font-size: 1.4em; }
.videoGruppe h1 { margin: 0.5em 0; }

/* footer */
#page-footer { position: fixed; 
               bottom: 0; 
               height: 15%; 
               min-height: 150px;
               width: 100%; 
               background: url(images/bogen.png); 
               background-size: 100%; 
               background-repeat: no-repeat;
               background-position-y: top;
               background-position-x: right;
               z-index: 9999;
}

#tradition {
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 300px;
}

#menu-footer { list-style: none; position: absolute; bottom: 6px; padding: 0; }
#menu-footer li { display: inline-block; margin-right: 2em;}
#menu-footer li a { color: #fff; text-decoration: none; text-transform: uppercase; font-size: 14px; }
#menu-footer li.social img { max-width: 26px; margin-top: 10px; vertical-align: bottom; }
#menu-footer li.online-shop img { max-width: 60px; vertical-align: bottom; }

/* spalten */
aside { float: left; border:1px navy solid; border-radius:5px; background-image: linear-gradient(white 35%, #D8E9F2, #0072ae);}
aside h2 { font-size: 1.4em; margin: 0.5em auto;}
.spalten { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 2em;}
.spalte { width: 40%; min-width:23%;} 


/* veranstaltungen */
.kartenservice { 
    background-color: #fff; 
    padding: 1em;
    max-width: 24%;
    position: sticky;
    top:0;
} 
.cta-mail {
    background: #223382;
    border-radius: 4px;
    padding: 6px 2em;
    margin: 1em 0;
    display: block;
    color: #fff;
    text-align: center;
}

.event { width: 42%;}
.event h1, .event { text-align: center;}
.event ul { text-align: left; }
.event li { list-style:none;}

/* Ich bin... - Blog */
.wp-block-media-text { margin-bottom: 8em; border: solid 2px;}
#main .wp-block-media-text { margin-bottom: 1em; }
.page-id-2161 #main .wp-block-media-text { border:none;}

@media (min-width: 2000px) {
    #page-footer { height: 20%;} 
}

@media only screen and (max-width: 1860px) {
    #pagehead nav { margin-top: -3%}
}

@media only screen and (max-width: 1600px) {
    
    #pagehead nav { margin-top: -2%}
    #page-footer { height: 16%;} 
    
}

@media only screen and (max-width: 1560px) {
    #pagehead nav { margin-top: -1%}
}


@media only screen and (max-width: 1480px) {
    
    #pagehead nav { margin-top: 70px;}
   /* #pagehead nav > ul { width: 85%;} */
        
    .vorstand .spalte { width: 31%; margin: 1%; }    
    
    #slogan { margin-top: 10%;}
    #logo { margin-top: 7%;}
    
    h1 { font-size: 2.4em; }
    h2 { font-size: 1.8em;}
    h3 { font-size: 1.4em;}
    h4 { font-size: 1.2em;}
}

@media only screen and (max-width: 1280px) {
    #main {
        width: 68%;
        margin-left: 29%;
    }
}

@media only screen and (max-width: 1120px) {

    h1 { font-size: 2.2em; }
    h2 { font-size: 1.6em;}
    h3 { font-size: 1.2em;}
    h4 { font-size: 1.1em;}

    #pagehead nav { margin-top: 90px;}
    nav { padding-left:0;}
    #page-footer { min-height: 120px;} 
    
   /* #main { width: 96%; margin: 20px 2% 200px 2%;} */
    
    .vorstand .spalte { width: 48%; margin: 1%; }     
}

@media only screen and (min-width: 1120px){
	#pagehead nav > ul { max-width: 85%;} 
}

@media only screen and (max-width: 910px) {

    h1 { font-size: 2em;}
    aside { float: none;}
    .kartenservice {
        position: relative;
        max-width: inherit;
    }

	#main { width: 96%; margin: 20px 2% 200px 2%;} 	
    /* menu switch */
    #pagehead { 
        margin-bottom: 60px;
    }
    #pagehead nav { 
        display: none;
        background: #0068A7;
        position: fixed; 
        top: 120px;
       /* left: 0; */
		right: 0;
        width: 92%;
		max-width:50vw;  /* neu */
        margin: 0 4%;
        height: 80%;
        max-height: 80vh;
        overflow-y: auto;
        opacity: .9;
    }
    #pagehead nav.open { 
        display: block;         
    }
    #pagehead nav > ul { width: 100%; top: 0; border-top: none; }
    #grafik {
        max-width: 90%;
    }
    
    #burger,
    .open #menu-main,
    #menu-main li { display: block;}
    	
//	nav ul.sub-menu {display:none;}	
	nav ul.sub-menu.show { display:block; }
    nav ul.sub-menu { position: relative; background-color: #4494C7; }
//	nav li.menu-item-has-children:hover > ul.sub-menu { display: block;}
	
    #menu-main li {padding: 3px 10px;}
    #menu-main li a { display: block; color: #fff;}
    
	#menu-item-20 ul { margin-left: 0px; } /* notwendig??? */
	#menu-item-1021 ul { margin-left: 0px; } 
    
    body { padding-bottom: 0;}
    #page-footer { position: relative; height: auto; min-height: 130px; background: #25418f; border-top: 2px solid #fff; z-index: 1; }
    
    #tradition  { right: 0;}
    #tradition img { max-width: 260px;}
    
}

@media only screen and (max-width: 860px) {
    
    #pagehead { 
        margin-bottom: 20px;
    }

    #menu-footer  { position: relative; bottom: 0; margin-bottom: 0; padding-bottom: 2em;}
    #menu-footer ul { width: 100%; }
    #menu-footer li { display: block; text-align: center; line-height: 2em; margin: 0;  }
    
    #tradition {
        position: relative;
        right: auto;
        bottom: auto;
        width: 100%;
        text-align: center;
        display: block;
        padding-bottom: 30px;
    }
    #tradition img { max-width: 220px;}
    
}

@media only screen and (max-width: 640px) {
    
    #pagehead { 
        margin-bottom: 0;
    }

    h1, .vorstand .spalte h1 { font-size: 1.4em; text-align: center;}
     
    .container.content { padding: 0 15px;}
   
    .spalten { display: block; margin-bottom: 1em;}
    
    .spalte, 
    .event,
    .vorstand .spalte { width: 96%; margin-left:0; margin-right: 0; }
    
    .spalte img { margin: 2em 0 2em 0;}
    
	.alignleft,
	.alignright { float:none;}
	
    #grafik {
        max-width: 80%;
    }
   
}

@media only screen and (max-width: 480px) {
    
    #main img { width: 100%;}
    
	#pagehead nav { max-width: 92%;}
    blockquote { font-size: 1.2em;}

}
    