/* gahhh this is so messy... sorry */

*
{ margin: 0;
  padding: 0;
  }

body {
  font: normal 0.95em 'MS Gothic', sans-serif;
  text-shadow: 0px 3px 5px rgba(1,0,121,0.8);
  background-image: url("images/stage1.gif");
  background-size:cover;
  background-repeat:no-repeat;
  background-attachment:fixed;
  color: #FFF;}

hr {
  color:white;
  margin: 10px 0 10px 0;
}

p
{ padding: 0 0 10px 0;
  line-height: 1.7em;}

img { 
  border: 0;
}

iframe {
  border: 4px ridge white;
  border-radius:5px;
  margin-bottom:10px;
}

h1, h2, h3, h4, h5, h6 { 
  font: normal 200% 'MS Gothic', arial, sans-serif;
  color: #FFF;
  margin: 0 0 15px 0;
}

h2
{ font: normal 175% 'MS Gothic', arial, sans-serif;
  color: #FFF;}

h4, h5, h6
{ margin: 0;
  padding: 0 0 5px 0;
  font: normal 120% 'MS Gothic', sans-serif;
  color: #FFF;}

h5, h6
{ font: italic 95% arial, sans-serif;
  padding: 0 0 15px 0;
  color: #FFF;}

a, a:hover
{ outline: none;
  text-decoration: underline;
  color: #FFF;}

ol, ul {
  margin-left:20px;
}

.left
{ float: left;
  width: auto;
  margin-right: 10px;}

.right
{ float: right; 
  width: auto;
  margin-left: 10px;}

.center
{ display: block;
  text-align: center;
  margin: 20px auto;}
  
/* HEADER ==============================================================================*/

#main, #menubar, #site_content, #footer
{ margin-left: auto; 
  margin-right: auto;
}

#header
{ background: transparent;
  height: 20vh;}

#logo
{ width: 1044px;
  height: 120px;
  margin:auto;
  margin-top:10px;
  margin-bottom:10px;
  border:solid 2px;
  border-radius: 5px 5px 0px 0px;
  box-shadow: 0 0 10px #FFE4E5;
  background-image: url("images/touhousky.png");
  background-position: bottom; 
  background-size:cover;
  background-attachment: fixed;
  
  position:absolute;
  left:250px;
}

#logo #logo_text 
{ position: absolute; 
  top: 0px;
  left: 15px;}

#logo h1, #logo h2
{ font: normal 300% 'MS Gothic', arial, sans-serif;
  border-bottom: 0;
  text-transform: none;
  margin: 0;}

#logo_text h1, #logo_text h1 a, #logo_text h1 a:hover 
{ padding: 22px 0 10px 0;
  color: #FFF;
  letter-spacing: 0.1em;
  text-decoration: none;}

#logo_text h2
{ font-size: 100%;
  padding: 4px 0 0 0;
  color: #FFF;}

#menubar
{ width: 1044px;
  height: 72px;
  padding: 0;
  border:solid 2px;
  box-shadow: 0 0 10px #FFF;
  background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(86, 167, 215, 1) 78%);
  
  position:absolute;
  left:250px;
  top:140px;
} 


#menubar button {
  letter-spacing: 0.1em;
  font: normal 100% 'MS Gothic', sans-serif;
  display: block;
  float: left;
  height: 72px;
  padding: 29px 26px 26px 26px;
  text-align: center;
  color: #fff;
  background: transparent;
  font-weight: bold;
  text-shadow: 0px 3px 5px rgba(0,0,6,0.8);
  border:none;
  cursor:pointer;
}
#menubar button:hover, #menubar .active{
  background-color: #56A7D7;
}

/* CONTENT ELEMENTS =====================================================================*/

.scroll {
  overflow-y:scroll;
  scrollbar-width: thin;
  scrollbar-color: #fff rgba(0, 0, 0, 0);
}

.leftSide, .rightSide, .centerSide, .graphicsTab {
  background: linear-gradient(0deg, rgba(4,0,13,0.4464519596901261) 0%, rgba(10,0,30,0.3848273098301821) 45%, rgba(21,6,56,0.2400093826593137) 100%);
  border: 5px outset #fff;
  border-radius:20px;
  padding:20px;
  margin:10px;
}

.leftSide {

  float: left;
  max-height: 2000px;
  max-width:500px;
}

.rightSide {
  float:right;
  max-height: 2000px;
  max-width:350px;
}

.leftSide img, .rightSide img, .centerSide img {
    -webkit-box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
    -moz-box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
    box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
    border:3px ridge white;

    display: block;
    margin: 0 auto;
}

.centerSide {
  max-height: 2000px;
  max-width:100%;
  clear:both;
}

.graphicsTab {
  max-height: 2000px;
  max-width:100%;
  text-align:center;
}

.graphicsTab img {
  -webkit-filter: drop-shadow(1px 1px 0 white)
                  drop-shadow(-1px -1px 0 white);
  filter: drop-shadow(1px 1px 0 white) 
          drop-shadow(-1px -1px 0 white);
  max-width:400px;
}

.imgShadow {
-webkit-box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
-moz-box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
box-shadow: 1px 1px 16px -5px rgba(0,0,0,0.84);
}

#site_content
{ width: 1000px;
  max-height:1400px;
  overflow: hidden;
  margin: auto;
  padding: 20px 24px 20px 20px;
  border:solid 2px;
  border-top:none;
  border-radius: 0px 0px 5px 5px;
  box-shadow: 0 4px 10px #FFF;
  
  position:absolute;
  left:250px;
  top:210px;
  background: url("images/collage_bg.png");
  background-size: auto;
  background-position:top;
  background-repeat:no-repeat;
  background-color: #56A7D7;
  }


/* RANDOM ASS ROTATING GYOKU =========================================================== */

@-webkit-keyframes rotating {
    from{
        -webkit-transform: rotate(0deg);
    }
    to{
        -webkit-transform: rotate(360deg);
    }
}

.rotating {
    -webkit-animation: rotating 40s linear infinite;
    filter: drop-shadow(1px 1px 1px #ffffff);
}

.rotating2 {
    -webkit-animation: rotating 40s linear infinite;
    filter: drop-shadow(1px 1px 1px #ffffff);
}

@-webkit-keyframes rotating2 {
    from{
        -webkit-transform: rotate(360deg);
    }
    to{
        -webkit-transform: rotate(0deg);
    }
}
/* FOOTER ================================================================================*/

#footer
{ width: 898px;
  font: 100% 'lucida sans unicode', arial, sans-serif;
  height: 25px;
  padding: 15px 0 5px 0;
  text-align: center; 
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  text-shadow: 0px 1px 5px #360A96;}

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

#footer a:hover
{ color: #FFF;
  text-decoration: underline;}

/* oh also the logo ================================================================================*/

.hover_img {
position: absolute;
top: 0;
left: 0;
display: none;
}

.img:hover .hover_img {
display: inline;
}