/* CSS RESET */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}


/* FRAMEWORK */

html, body {
  height: 100%;
}

body {
  background: url(../gfx/bg.png);
  font: 14px/20px 'DroidSans', Arial, sans-serif;
  letter-spacing: 0;
  color: #282828;  
}

.redline {
  height: 1%;
  background-color: #810000; 
  width: 100%;
}

.menuline {
  border: 2px solid #E6E5E4;
  height: 29px;
  margin-left: 1%;
  position: absolute;
  text-align: center;
  top: 45px;
  width: 98%;
  z-index: -1;
  border-radius: 5px;
  background-color: #fff;  
  background-color: rgba(255,255,255,0.4);
}

.container {
  height: auto;
  margin: 0 auto -50px;
  min-height: 98%;
  width: 980px;
}

header {
  width: 100%;
  height: 110px;
  padding-top: 20px;
}

.logo {
  float:left;
}


#menu {
  font-size:14px;
  position:absolute;
  padding: 23px;
  top: 24px;
  margin-left: 315px; 
	z-index: 1;
}

#menu ul {
  list-style-type:none;
  list-style-image:none;
  margin:0px;
  padding:0px;

 
}

#menu li.topmenu {
  float:left;
  
}

.topmenu a {
  float:left;
  width:109px;
  height: 19px;
  text-align:left;
  
}

.topmenu ul{
  display:none;
  }
  



.topmenu a, .submenu a{
  padding: 4px 8px;
 border: 1px solid #E6E5E4;
 border-radius: 5px;
 background-color: #fff; 

  
   text-decoration: none;
  color: #414141;
  font-size: 14px;   
  font-family: 'DroidSansBold', Arial, sans-serif;
  margin-right: 47px;
  text-transform: uppercase;
  text-shadow: #c0c0c0 3px 3px 5px;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;  
  margin:0;  
 
}
.topmenu a, .submenu a:visited {color: #5b5b5b; text-shadow: #f8f8f8 0 3px 6px;}
.topmenu a, .submenu a:focus {color: #5b5b5b; text-shadow: #f8f8f8 0 3px 6px;}
.topmenu a, .submenu a:hover {color: #860e0e; text-shadow: #f8f8f8 0 3px 6px;}
.topmenu a, .submenu a {color: #5b5b5b; text-shadow: #f8f8f8 0 3px 6px;}


.submenu a{
  font-size:12px;
  width:109px;
  position:relative;
  z-index: 2;
  clear:both; /* special IE6 */
}

#menu a:hover, .topmenu.on a {
  color:#4C4C4C;
  background-color:#f8f8f8 !important;
}

.topmenu:hover ul {
  display:block;  
  z-index:500;
  }


/*
nav ul {
  padding-top: 30px;
  list-style-type: none;  
}

nav li {
  float: left;
}

nav a {
  text-decoration: none;
  color: #414141;
  font-size: 14px;
  font-family: 'DroidSansBold', Arial, sans-serif;
  margin-left: 47px;
  text-transform: uppercase;
  text-shadow: #c0c0c0 3px 3px 5px;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;  
}

nav a:visited {color: #5b5b5b; text-shadow: #5a5a5a 0 3px 6px;}
nav a:focus {color: #5b5b5b; text-shadow: #5a5a5a 0 3px 6px;}
nav a:hover {color: #860e0e; text-shadow: #5a5a5a 0 3px 6px;}
nav a:active {color: #5b5b5b; text-shadow: #5a5a5a 0 3px 6px;}
*/ 

section {
  background: #fff;
  border: 1px solid #d6d6d6;
  border-radius: 10px;
  padding: 20px;
  -moz-box-shadow: 5px 5px 15px #888;
  -webkit-box-shadow: 5px 5px 15px #888;
  -o-box-shadow: 5px 5px 15px #888;
  -ms-box-shadow: 5px 5px 15px #888;
  box-shadow: 5px 5px 15px #888;  
  margin-bottom: 30px;
}

section.banner {
	width: 930px;
	height: 270px;
	margin-bottom: 20px;
	z-index: 2;
	}
	
section.teaser {
 width: 280px;
 min-height: 820px;
 float:right;

}

section.video {
  margin-right: 340px;
  width: 590px;
  min-height: 820px;
  
}

section.site {
 width: 930px;
 min-height: 600px; 
}

	
	
footer {
  height: 60px;
  background-color: #101010; 
  background: -moz-linear-gradient(top, #101010, #000);
  background: -webkit-linear-gradient(top, #101010, #000); 
  background: -o-linear-gradient(top, #101010, #000);
  background: -ms-linear-gradient(top, #101010, #000);
  background: linear-gradient(top, #101010, #000); 
  width: 100%;
}


footer a {
  color: #adadad;
  text-decoration: none;
}

footer a:visited {color: #adadad;}
footer a:focus {color: #fff;}
footer a:hover {color: #fff;}
footer a:active {color: #adadad;}

footer ul {
  width: 990px;
  margin: auto;
  font-size: 11px;
  color: #adadad;
  height: 30px;
  padding-top: 10px;  
  list-style-type: none;  
}

footer ul li {
  float: left;
  margin-right: 10px;
}

footer ul .space {
  padding-top: 8px;
}

footer ul .right {
  margin-left: 530px;
}

footer ul li i {
  display: none;
}

footer .sprite {
  display: block;
  width: 24px;
  height: 24px;
  background: url(../gfx/footer-icons-sprite.png) no-repeat 0 0;
}

footer a.coffee {
  background-position: left 0;
}

footer a.coffee:hover {
  background-position: right 0;
}

footer a.contact {
  width:24px;
  height:20px;  
  background-position: left -25px;
}

footer a.contact:hover {
  background-position: right -25px;
}

footer a.mail {
  width:24px;
  height:20px;    
  background-position: left -45px;
}

footer a.mail:hover {
  background-position: right -45px;
}

footer .flattr {
  border-radius: 5px; 
  -ms-box-shadow: 0 0 5px 5px #4a4a4a;
  margin-top: 2px;

  -webkit-animation-name: 'glow';
  -webkit-animation-duration: .7s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  -webkit-animation-timing-function: ease-in-out;

  -moz-animation-name: glow;
  -moz-animation-duration: .7s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-direction: alternate;
  -moz-animation-timing-function: ease-in-out;    
}

@-webkit-keyframes 'glow' {
  0% {-webkit-box-shadow: 0 0 1px #4a4a4a;}
  100% {-webkit-box-shadow: 0 0 10px #f8f8f9;}
}

@-moz-keyframes glow {
  0% {-moz-box-shadow: 0 0 1px #4a4a4a;}
  100% {-moz-box-shadow: 0 0 10px #f8f8f9;}
}



/* LAYOUT */

a {
  color:#99221f;
  text-decoration:none;
  -webkit-transition: color 0.5s ease-in-out;
  -moz-transition: color 0.5s ease-in-out;
  -ms-transition: color 0.5s ease-in-out; 
  -o-transition: color 0.5s ease-in-out;
  transition: color 0.5s ease-in-out;       
}

a:visited {color: #99221f;}
a:focus {color: #5b5b5b;}
a:hover {color: #5b5b5b;}
a:active {color: #5b5b5b;}

a.teamlink,
a.teamlink:visited {
  color: #fff;
}

.sticky {
  height: 60px; 
}

h1, h2, h3 {
  text-transform: uppercase;
  color: #99221f;
  text-shadow: #cecece 1px 1px 2px;   
}

h1 {
  font-size: 22px;
  margin: 10px 2px;
}

h2 {
  font-size: 18px;
  margin: 24px 2px 12px;
}

.top {
  margin-top: 40px;
}

h3 {
  margin: 15px 4px;
}

p {
  margin-bottom: 8px;
}

ul {
  list-style-type:square;
  margin-left: 40px;
}

section.teaser p {
  margin: 14px 0;
}

section.teaser .feature {
  font-size: 16px;
  margin: 20px 0;
  color: #000;
}

section.teaser h2 {
  margin-top: 25px;
}

section.teaser .btn {
  margin: 20px 0 10px 35px;
}

a.btn,
a.btn:focus,
a.btn:active,
a.btn:hover {
  color: #fff;
}

section.site p {
  padding: 10px 0 0 10px;
}


strong {
  font-family: 'DroidSansBold', Arial, sans-serif;
}

ol {
  list-style-type: decimal;
  font-size: 13px;
  color: #545454;
}

ol li {
  margin-left: 25px;
  padding: 2px;
}

iframe {
  margin: 10px 0;
}

.info-icon {
  margin: -34px;
  position: absolute;
  -webkit-transition: all 0.7s ease-in-out;
  -moz-transition: all 0.7s ease-in-out;
  -ms-transition: all 0.7s ease-in-out;   
  -o-transition: all 0.7s ease-in-out;  
}

.info-icon:hover {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);  
  -o-transform: rotate(180deg);
  transform: rotate(180deg);  
}


/* BUTTON */

.btn {
  display: inline-block;
  outline: none;
  cursor: pointer;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  position: relative;
  left: 10px;
  top: 5px;
  padding: .31em 2em .35em;
  -webkit-border-radius: .35em;
  -moz-border-radius: .35em;      
  border-radius: .35em;
  }
.btndownload{
  display: inline-block;
  outline: none;
  cursor: pointer;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  position: relative;
  left: 50px;
  top: 0px;
  padding: .31em 2em .35em;
  -webkit-border-radius: .35em;
  -moz-border-radius: .35em;      
  border-radius: .35em;
  } 
.fs16 {
  font-size: 20px;
}

.fs12 {
  font-size: 12px;
}


.btn:hover {
  text-decoration: none;
  }
  
.btn:active {
  position: relative;
  top: 1px;

  }

.btnshadow {
  -moz-box-shadow: 0 1px 4px 0 #8FA7B6, 0 2px 10px 0 #b0c1cb; 
  -webkit-box-shadow: 0 1px 4px 0 #8FA7B6, 0 2px 10px 0 #b0c1cb;
  -ms-box-shadow: 0 1px 4px 0 #8FA7B6, 0 2px 10px 0 #b0c1cb; 
  -o-box-shadow: 0 1px 4px 0 #8FA7B6, 0 2px 10px 0 #b0c1cb;   
  box-shadow: 0 1px 4px 0 #8FA7B6, 0 2px 10px 0 #b0c1cb; 
  }

.green {
  color: #ffffff;
  background: #1d5123;
  background: -webkit-gradient(linear, left top, left bottom, from(#2a7432), to(#1d5123));
  background: -moz-linear-gradient(top, #2a7432, #1d5123);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2a7432', endColorstr='#1d5123');
  }

.green:hover {
  background: #2a7432;
  background: -webkit-gradient(linear, left top, left bottom, from(#289537), to(#1d5123));
  background: -moz-linear-gradient(top, #289537, #1d5123);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#289537', endColorstr='#1d5123');
  }

.green:active {
  background: #2a7432;
  background: -webkit-gradient(linear, left top, left bottom, from(#289537), to(#1d5123));
  background: -moz-linear-gradient(top, #289537, #1d5123);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#289537', endColorstr='#1d5123');
  }


/* SIDEBAR SLIDER */

.sidebar-slideout {
  background-color: #000000;
  border: 0 none;
  box-shadow: 5px 5px 10px #999999;  
  -webkit-border-bottom-left-radius: 15px;
  -webkit-border-top-left-radius: 15px;
  -moz-border-radius-bottomleft: 15px;     
  -moz-border-radius-topleft: 15px;
  border-bottom-left-radius: 15px;  
  border-top-left-radius: 15px;    
  color: #dddddd;  
  float: right;
  font-size: 10px;
  height: 28px;  
  line-height: 1.5em;  
  margin-right: 0;
  opacity: 0.85;
  padding: 12px;
  position: fixed; 
  right: -80px;
  text-align: left;  
  width: 100px;
  z-index: 9999;
  -webkit-transition: right 0.2s ease-in-out;
  -moz-transition: right 0.2s ease-in-out;
  -ms-transition: right 0.2s ease-in-out;   
  -o-transition: right 0.2s ease-in-out;
  transition: right 0.2s ease-in-out;  
  }

.sidebar-slideout:hover {
  right: -70px;
  }

 .social-icon {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; 
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;  
 }

.sidebar-slideout:hover .social-icon {
  -webkit-transform: rotate(25deg);
  -moz-transform: rotate(25deg);
  -ms-transform: rotate(25deg);  
  -o-transform: rotate(25deg);
  transform: rotate(25deg);  
 }
  
#twitter {
  top: 140px;
  } 

#facebook {
  top: 200px;
  }

#googleplus {
  top: 260px;
  }

#youtube {
  top: 320px;
  }

#xing {
  top: 380px;
  }  
  
/* FAQs */

.faq{
  margin: 30px 30px;
}

.faq input,
.faq p{
  display: none;
}

.faq label+p{
  display: block; 
  color: #999;
  font-size: .85em;
  -webkit-transition: all .20s ease-out; 
  -moz-transition: all .20s ease-out;
  -ms-transition: all .20s ease-out;
  -o-transition: all .20s ease-out;
  transition: all .20s ease-out;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; 
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd; 
  padding-bottom: 10px;     
  margin-left: 9px;
}

.faq input[type=checkbox]:checked~p{
  display: block;
  color: #444;
  font-size: 1em;
  text-overflow: clip; 
  white-space: normal;
  overflow: visible;  
  border-bottom: 2px solid #E6E5E4;
  border-left: 2px solid #E6E5E4;
  border-right: 2px solid #E6E5E4;       

}

.faq label{
  font-size: 1.2em;
  cursor: pointer;
  background: #eee;
  display: block;
  position: relative;
  padding: 7px 33px;
  font-weight: bold;
  border: 1px solid #ddd;
  border-left: 10px solid #ddd;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);
  border-top-left-radius: 15px;
  border-bottom-left-radius: 5px;      
  -webkit-transition: all .15s ease-out; 
  -moz-transition: all .15s ease-out;
  -ms-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;     

}

.faq label::-moz-selection{
  background: none;
}

.faq label::selection{
  background: none;
}

.faq label:hover{
  background: #f5f5f5;
}

.faq input[type=checkbox]:checked~label{
  border-right: 2px solid #E6E5E4;     
  border-top: 2px solid #E6E5E4;     
  border-left: 10px solid #810000;
  border-top-left-radius: 63px;
  border-bottom-left-radius: 20px;
  border-bottom: none;      
  background: #f5deb4;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#ffeef0));
  background-image: -webkit-linear-gradient(bottom, #fff, #ffeef0); 
  background-image: -moz-linear-gradient(bottom, #fff, #ffeef0); 
  background-image: -ms-linear-gradient(bottom, #fff, #f5deb4); 
  background-image: -o-linear-gradient(bottom, #fff, #f5deb4); 
  background-image: linear-gradient(to bottom, #fff, #f5deb4);
}

.faq input[type="checkbox"]:checked ~ label:before {
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-style: solid;
  border-top-color: #810000;
  border-width: 8px;
  left: 7px;
  margin-top: 4px;
}

.faq label:before {
  border-color: transparent transparent transparent gray;
  border-style: solid;
  border-width: 8px;
  content: "";
  left: 10px;
  margin-top: -1px;
  position: absolute;
  top: 10px;
}


/* TEAM */

.team  {
  height: 480px;
  margin: 30px 0 0 20px;
  list-style-type: none;
}

.team li {
  float: left;
  height: 165px;
  margin: 0 20px 20px 0;
  width: 201px;
  position: relative;
  border: 1px solid #DDDDDD;
  color: #999999; 
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px black inset;
}

.team li:hover {
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px #810000 inset, 0 0 5px 5px #888;;
}

.team li p {
  position: absolute;
  top: 0;
  width: 0;
  overflow: hidden;
  z-index:-100;
  -webkit-transition: top, width 0.45s ease-out;
  -moz-transition: top, width 0.45s ease-out;
  -ms-transition: top, width 0.45s ease-out;
  -o-transition: top, width 0.45s ease-out;
  transition: top, width 0.45s ease-out;
}

.team li span {
  background: #000;  
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.6);
  color: #FFFFFF;
  display: block;
  font-size: 14px;
  height: 19px;
  left: 75px;
  padding: 3px;
  position: absolute;
  text-transform: uppercase;
  top: 140px;
  width: 120px;
}

.team li:hover > p {
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.7);
  padding: 10px;
  position: absolute;
  top: 36px;
  width: 182px;
  display: block;
  font-size: 11px;
  height: 110px;  
  z-index: 1; 
  color: #c0c0c0;
}

.team li:hover > span {
  display: none;
}

.team strong {
  display: block;
  font-size: 13px;
  color: #fff;
}

.teampharos  {
  height: 480px;
  margin: 30px 0 0 20px;
  list-style-type: none;
}

.teampharos li {
  float: left;
  height: 165px;
  margin: 0 20px 20px 0;
  width: 201px;
  position: relative;
  border: 1px solid #DDDDDD;
  color: #999999; 
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px black inset;
}

.team li:hover {
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px #810000 inset, 0 0 5px 5px #888;;
}

.teampharos li p {
  position: absolute;
  top: 0;
  width: 0;
  overflow: hidden;
  z-index:-100;
  -webkit-transition: top, width 0.45s ease-out;
  -moz-transition: top, width 0.45s ease-out;
  -ms-transition: top, width 0.45s ease-out;
  -o-transition: top, width 0.45s ease-out;
  transition: top, width 0.45s ease-out;
}

.teampharos li span {
  background: #000;  
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.6);
  color: #FFFFFF;
  display: block;
  font-size: 14px;
  height: 19px;
  left: 75px;
  padding: 3px;
  position: absolute;
  text-transform: uppercase;
  top: 140px;
  width: 120px;
}

.teampharos li:hover > p {
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.7);
  padding: 10px;
  position: absolute;
  top: 36px;
  width: 182px;
  display: block;
  font-size: 11px;
  height: 110px;  
  z-index: 1; 
  color: #c0c0c0;
}

.teampharos li:hover > span {
  display: none;
}

.teampharos strong {
  display: block;
  font-size: 13px;
  color: #fff;
}

/*Büro*/

.büro  {
  height: 480px;
  margin: 30px 0 0 20px;
  list-style-type: none;
}

.büro li {
  float: left;
  height: 240px;
  margin: 0 20px 20px 0;
  width: 360px;
  position: relative;
  border: 1px solid #DDDDDD;
  color: #999999; 
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px black inset;
}

.büro li:hover {
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px #810000 inset, 0 0 5px 5px #888;;
}

.büro li p {
  position: absolute;
  top: 0;
  width: 0;
  overflow: hidden;
  z-index:-100;
  -webkit-transition: top, width 0.45s ease-out;
  -moz-transition: top, width 0.45s ease-out;
  -ms-transition: top, width 0.45s ease-out;
  -o-transition: top, width 0.45s ease-out;
  transition: top, width 0.45s ease-out;
}

.büro li span {
  background: #000;  
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.6);
  color: #FFFFFF;
  display: block;
  font-size: 14px;
  height: 19px;
  left: 233px;
  padding: 3px;
  position: absolute;
  text-transform: uppercase;
  top: 214px;
  width: 120px;
}

.büro li:hover > p {
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.7);
  padding: 10px;
  position: absolute;
  top: 110px;
  width: 340px;
  display: block;
  font-size: 11px;
  height: 110px;  
  z-index: 1; 
  color: #c0c0c0;
}

.büro li:hover > span {
  display: none;
}

.büro strong {
  display: block;
  font-size: 13px;
  color: #fff;
}

/* FORM */

#formbox {
  margin: 25px 15px;
}

input[type="text"], input[type="password"], textarea, select { 
  outline: none;
}

.hidden {
  display: none;
}

.fieldclass {
  border-radius: 10px 0 0 0 ;
  background-color: #f2f2f2;
  border: 1px solid #ddd;
  font-size: 140%;
  margin-bottom: 20px;
  padding: 10px;
  width: 580px;
}

.formsection {
  overflow: visible;
  position: relative;
}

.formsection textarea, 
.formsection input {
  margin-bottom: 20px;
  opacity: 1;
  padding: 9px 7px 10px;
  width: 500px;
}

.formsection textarea:focus, 
.formsection input:focus {
  border-color:gray;
  box-shadow: 0 0 15px 5px #c0c0c0;
}


.label {
  color: #fff; 
  border-radius: 10px 0 10px 0;
  cursor: text;
  font-size: 13px;
  left: 1px;
  line-height: 10px;
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.7);
  padding: 8px 10px;
  position: absolute;
  top: 1px;
  white-space: nowrap;
  z-index: 1;
  -moz-transition-property: color;
  -moz-transition-duration: 3s;
  -moz-transition-timing-function: ease-out;
  -webkit-transition-property: color;
  -webkit-transition-duration: 3s;
  -webkit-transition-timing-function: ease-out;
  -ms-transition-property: color;
  -ms-transition-duration: 3s;
  -ms-transition-timing-function: ease-out;
  -o-transition-property: color;
  -o-transition-duration: 3s;
  -o-transition-timing-function: ease-out;      
}

.mandatory {
  color: #99221F;
  font-size: 18px;
  left: 496px;
  position: absolute;
  top: 11px;
  -moz-transition-property: font-size;
  -moz-transition-duration: 2s;
  -webkit-transition-property: font-size;
  -webkit-transition-duration: 2s;
  -ms-transition-property: font-size;
  -ms-transition-duration: 2s;
  -o-transition-property: font-size;
  -o-transition-duration: 2s;  
}

.formsection textarea:focus + .label, 
.formsection input:focus + .label {
  opacity:0.7;
  background: none;
  color: #404040;
}

.formsection textarea:focus + .label .mandatory, 
.formsection input:focus + .label .mandatory {
  font-size: 32px;   
}

.tutimg {
  border: 5px solid #DDDDDD;
  box-shadow: 0 0 0 4px white, 0 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px black inset;  
  margin: 10px 30px;
}


/* FAQs */

.tutorial {
  margin: 20px 0;
}

.tutorial input,
.tutorial div {
  display: none;
}

.tutorial label+div{
  display: none; 
  color: #999;
  font-size: .85em;
  -webkit-transition: all .20s ease-out; 
  -moz-transition: all .20s ease-out;
  -ms-transition: all .20s ease-out;
  -o-transition: all .20s ease-out;
  transition: all .20s ease-out;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; 
}

.tutorial input[type=checkbox]:checked~div{
  display: block;
  color: #444;
  font-size: 1em;
  text-overflow: clip; 
  white-space: normal;
  overflow: visible;       

}

.tutorial label{
  font-size: 1.2em;
  cursor: pointer;
  background: #eee;
  display: block;
  position: relative;
  padding: 7px 33px;
  font-weight: bold;
  border: 1px solid #ddd;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);    
  -webkit-transition: all .15s ease-out; 
  -moz-transition: all .15s ease-out;
  -ms-transition: all .15s ease-out;
  -o-transition: all .15s ease-out;
  transition: all .15s ease-out;     

}

.tutorial label::-moz-selection{
  background: none;
}

.tutorial label::selection{
  background: none;
}

.tutorial label:hover{
  background: #f5f5f5;
}

.tutorial input[type=checkbox]:checked~label{
  border: 1px solid #E6E5E4;    
  background: #f5deb4;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#ffeef0));
  background-image: -webkit-linear-gradient(bottom, #fff, #ffeef0); 
  background-image: -moz-linear-gradient(bottom, #fff, #ffeef0); 
  background-image: -ms-linear-gradient(bottom, #fff, #f5deb4); 
  background-image: -o-linear-gradient(bottom, #fff, #f5deb4); 
  background-image: linear-gradient(to bottom, #fff, #f5deb4);
}

.tutorial input[type="checkbox"]:checked ~ label:before {
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-style: solid;
  border-top-color: #810000;
  border-width: 8px;
  left: 7px;
  margin-top: 4px;
}

.tutorial label:before {
  border-color: transparent transparent transparent gray;
  border-style: solid;
  border-width: 8px;
  content: "";
  left: 10px;
  margin-top: -1px;
  position: absolute;
  top: 10px;
}

.tutorial h3 {
  margin: 40px 0 10px 0;
  width: 98%;
  border-bottom: 1px dotted #c0c0c0;

}


.tutorial ol {
  margin-left: 25px;
}
