/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
Copyright (c) 2009, Nicole Sullivan. All rights reserved.
Code licensed under the BSD License:
version: 0.2
*/
/* **************** BLOCK STRUCTURES ***************** */
/* mod */
.mod{margin:10px;}
.mod .inner{/*background: url(skin/transparent.png) repeat left top;*/}
.bd,.ft, .hd{overflow:hidden; *overflow:visible; zoom:1;}
b.top, b.top b, b.bottom, b.bottom b{display:block;background-repeat:no-repeat;font-size:1%;position:relative;z-index:10;}
.tl, .tr, .bl, .br{height:10px; width:10px;float:left;}
.tl{background-position: left top;}
.tr{background-position: right top;}
.bl{background-position: left bottom;}
.br{background-position: right bottom;}
.br,.tr{float:right;}
.tr, .tl{overflow:hidden;margin-bottom:-32000px;}/* margin bottom needs to be < -9px */
.bl,.br{margin-top:-10px;}
.top{background-position:center top;}
.bottom{background-position:center bottom;_zoom:1;}/* this zoom required for IE5.5 only*/
/* complex */
.complex{overflow:hidden;*position:relative;*zoom:1;}/* position/zoom required for IE7, 6, 5.5 */
.complex .tl, .complex .tr{height:32000px; margin-bottom:-32000px;width:10px;}
.complex .bl, .complex .br{/*margin-top:0;*/}
.complex .top{height:5px;}
.complex .bottom{height:5px;/*margin-top:-10px;*/}
/* pop */
.pop{overflow:visible;margin: 10px 20px 20px 10px; background-position:left top;}
.pop .inner{right:-10px; bottom:-10px; background-position:right bottom;padding:0 10px 10px 0;}
.pop .tl, .pop .br{display:none;}
.pop .bl{bottom:-10px;}
.pop .tr{float:right;margin-right:-10px;_display:inline; /*fix double margin bug*/ }

/* **************** TEMPLATE ***************** */
/* ====== Page Head, Body, and Foot ====== */
body{_text-align:center;}/* IE5.5 */
.main{display:table-cell;*display:block;width:auto;}
.body,.main{*zoom:1;}
.body:after,.main:after{clear:both;display:block;visibility:hidden;overflow:hidden;height:0 !important;line-height:0;font-size:xx-large;content:" x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x ";}
.page{margin:0 auto;width:950px;_text-align:left;} /* wraps other template elems to set width */ /* text-align IE5.5 */


/** 
 * Spacing classes 
 * Should be used to modify the default spacing between objects (not between nodes of the same object)
 * Please use judiciously. You want to be using defaults most of the time, these are exceptions! 
 * <type><location><size>
 */
h1, h2, h3, h4, h5, h6, ul, ol,dl, p,blockquote, .media {margin:10px;}
h1, h2, h3, h4, h5, h6,img{padding-bottom:0px;}
pre{margin: 10px;}
table h1,table h2,table h3, table h4, table h5, table h6, table p, table ul, table ol, table dl{padding:0;}
 
/* spacing helpers
p,m = padding,margin
a,t,r,b,l,h,v = all,top,right,bottom,left,horizontal,vertical
s,m,l,n = small(5px),medium(10px),large(20px),none(0px)
*/
.ptn,.pvn,.pan{padding-top:0px !important}
.pts,.pvs,.pas{padding-top:5px !important}
.ptm,.pvm,.pam{padding-top:10px !important}
.ptl,.pvl,.pal{padding-top:20px !important}
.prn,.phn,.pan{padding-right:0px !important}
.prs,.phs,.pas{padding-right:5px !important}
.prm,.phm,.pam{padding-right:10px !important}
.prl,.phl,.pal{padding-right:20px !important}
.pbn,.pvn,.pan{padding-bottom:0px !important}  
.pbs,.pvs,.pas{padding-bottom:5px !important}
.pbm,.pvm,.pam{padding-bottom:10px !important}
.pbl,.pvl,.pal{padding-bottom:20px !important}
.pln,.phn,.pan{padding-left:0px !important}
.pls,.phs,.pas{padding-left:5px !important}
.plm,.phm,.pam{padding-left:10px !important}
.pll,.phl,.pal{padding-left:20px !important}
.mtn,.mvn,.man{margin-top:0px !important}
.mts,.mvs,.mas{margin-top:5px !important}
.mtm,.mvm,.mam{margin-top:10px !important}
.mtl,.mvl,.mal{margin-top:20px !important}
.mrn,.mhn,.man{margin-right:0px !important}
.mrs,.mhs,.mas{margin-right:5px !important}
.mrm,.mhm,.mam{margin-right:10px !important}
.mrl,.mhl,.mal{margin-right:20px !important}
.mbn,.mvn,.man{margin-bottom:0px !important}  
.mbs,.mvs,.mas{margin-bottom:5px !important}
.mbm,.mvm,.mam{margin-bottom:10px !important}
.mbl,.mvl,.mal{margin-bottom:20px !important}
.mln,.mhn,.man{margin-left:0px !important}
.mls,.mhs,.mas{margin-left:5px !important}
.mlm,.mhm,.mam{margin-left:10px !important}
.mll,.mhl,.mal{margin-left:20px !important}
.mra,.mha{margin-right:auto !important}
.mla,.mha{margin-left:auto !important}

/** 
 * Data Table 
 * Allows you to align various table cells so that the alignment class can be placed on either the table, table row, or table cell 
 * Cell takes precedence over table row and table
 * Table row takes precedence over table
 */
.data{position:relative; zoom:1;vertical-align: top;text-align: left; /*border-right:solid 1px transparent;*//* border fixes a FF2 bug which causes the data table to overlay its borders*/}
.data table {width:100%; table-layout:fixed;}
th, td{/*vertical-align:top;*/}
/* horizontal alignment */
.txtC, table .txtC, table tr .txtC{text-align:center;}
.txtL, table .txtL, table tr .txtL{text-align:left;}
.txtR, table .txtR, table tr .txtR{text-align:right;}
/* vertical alignment */
.txtT, table .txtT, table tr .txtT{vertical-align:top;}
.txtB, table .txtB, table tr .txtB{vertical-align:bottom;}
.txtM, table .txtM, table tr .txtM{vertical-align:middle;}
.data th,.data td{padding:3px 20px}

/* oocss grid */
.line,.lastUnit{overflow:hidden; *overflow:visible;*zoom:1;}
.unit{float:left;}
.unitRight{float:right;}
.size1of1{float:none;}
.size1of2{width:50%;}
.size1of3{width:33.33333%;}
.size2of3{width:66.66666%;}
.size1of4{width:25%;}
.size3of4{width:75%;}
.size1of5{width:20%;}
.size2of5{width:40%;}
.size3of5{width:60%;}
.size4of5{width:80%;}
.lastUnit{float:none;width:auto;_position:relative;_left:-3px;_margin-right:-3px;}

/* oocss heading */
/* .h1-.h6 classes should be used to maintain the semantically appropriate heading levels - NOT for use on non-headings */
h1, .h1{font-size:196%; font-weight:normal; font-style: normal; color:#AE0345;}
h2, .h2{font-size:167%; font-weight:normal; font-style: normal; color:#AE0345;}
h3, .h3{font-size:146.5%; font-weight:normal; font-style: normal; color:#DF2B72;}
h4, .h4{font-size:123.1%; font-weight:normal; font-style: normal; color: #333;}
h5, .h5{font-size:108%; font-weight:bold; font-style: normal; color:#AE0345;}
h6, .h6{font-size:108%; font-weight:normal; font-style: italic; color:#333;}
/* if additional headings are needed they should be created via additional classes, never via location dependant styling */
.category{font-size:108%; font-weight:normal; font-style: normal; text-transform:uppercase; color: #333;}
.category a{color: #333;}

/* oocss media */
.media{overflow:hidden;*overflow:visible;zoom:1;}
.media .img{float:left;/*margin-right: 10px;*/}
.media .img img{display:block;}
.media .imgExt{float:right; /*margin-left: 10px;*/}

/* border helpers
b = border
a,t,r,b,l,h,v = all,top,right,bottom,left,horizontal,vertical
s,m,l,n = small(1px),medium(3px),large(5px),none(0px)
*/
.btn,.bvn,.ban,.bts,.bvs,.bas,.btm,.bvm,.bam,.btl,
.bvl,.bal,.brn,.bhn,.brs,.bhs,.brm,.bhm,.brl,.bhl,
.bbn,.bbs,.bbm,.bbl,.bln,.bls,.blm,.bll { border-color: #000; border-style: solid; border-width:0px }
.btn,.bvn,.ban{border-top-width:0px !important}
.bts,.bvs,.bas{border-top-width:1px !important}
.btm,.bvm,.bam{border-top-width:3px !important}
.btl,.bvl,.bal{border-top-width:5px !important}
.brn,.bhn,.ban{border-right-width:0px !important}
.brs,.bhs,.bas{border-right-width:1px !important}
.brm,.bhm,.bam{border-right-width:3px !important}
.brl,.bhl,.bal{border-right-width:5px !important}
.bbn,.bvn,.ban{border-bottom-width:0px !important}  
.bbs,.bvs,.bas{border-bottom-width:1px !important}
.bbm,.bvm,.bam{border-bottom-width:3px !important}
.bbl,.bvl,.bal{border-bottom-width:5px !important}
.bln,.bhn,.ban{border-left-width:0px !important}
.bls,.bhs,.bas{border-left-width:1px !important}
.blm,.bhm,.bam{border-left-width:3px !important}
.bll,.bhl,.bal{border-left-width:5px !important}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

body { background: #24160f url("../image/main2.png") no-repeat top center; } 

.page, .body { width: 100%; height: 100% } 
.body { margin-top: 115px; margin-bottom: 45px; }
.body .nav { min-width: 170px; width: 20% }
.body .content { margin-left: 20%}
header {
	width: 100%;
	margin: auto;
	position: fixed;
	top: 0px;
	background-color: #ebe7e1;
	z-index: 10000;
	height: 100px;
	-moz-box-shadow: 10px 4px 6px #888;
	-webkit-box-shadow: 10px 4px 6px #888;
	-ms-box-shadow: 10px 4px 6px #888;
	box-shadow: 10px 4px 6px #888;
}
footer { width: 100%; height: 100px; background-color: #ebe7e1; margin: auto; }
header .title { font-size: 5em; text-shadow: -1px 1px 3px #595959; }
header .nav {
	text-decoration: none;
	color: #000;
	text-shadow: -1px 1px 3px #595959;
	display: inline-block;
	float: right;
}
header .nav  ul { position: relative; top: -3em}
header .nav  ul li, footer .nav ul li{ list-style: none; display: inline; }
header .nav  ul li a, footer .nav ul li a { text-decoration: none; color: #000; }
header .nav  ul li a { padding: 10px 15px 15px 15px; }
header .nav  ul li a:hover { background-color: #24160f; color: #fff; }

.fc1 { color: #c3996d }
.fc2 {}
.fc3 {}

.section{ width: 80%; background-color: #fff; height: 100%; margin: 0 auto;}
.shadowleft{
	-moz-box-shadow: 0 10px 30px rgba(0,0,0,1);
	-webkit-box-shadow: 0 10px 30px rgba(0,0,0,1);
	-ms-box-shadow: 0 10px 30px rgba(0,0,0,1);
	box-shadow: 0 10px 30px rgba(0,0,0,1);
}
.shadow{
	-moz-box-shadow: 5px 5px 10px rgba(0,0,0,0.5);
	-webkit-box-shadow: 5px 5px 10px rgba(0,0,0,0.5);
	-ms-box-shadow: 5px 5px 10px rgba(0,0,0,0.5);
	box-shadow: 5px 5px 10px rgba(0,0,0,0.5);
}
.textShadow{
	-moz-text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
	-webkit-text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
	-ms-text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
	text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
}
.nav-home, .nav-portfolio, .nav-resume, .nav-playground{ overflow-x: hidden; overflow-y: auto;}
.nav-home .nav  ul li{
	list-style: none;
	background: #f7e6c8 url("../image/background01.png") repeat top left;
	color: #fff;
	margin: 1px 10px;
	padding: 20px;
	cursor: pointer;
}
.nav-home .nav  ul li:hover, .nav-home .nav  ul li.selected{
	border-color: #fff;
	margin: 1px 0;
	padding: 20px 30px;
	z-index: 100;
	-moz-box-shadow: 5px 5px 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 5px 5px 3px rgba(0,0,0,0.3);
	-ms-box-shadow: 5px 5px 3px rgba(0,0,0,0.3);
	box-shadow: 5px 5px 3px rgba(0,0,0,0.3);
}
.nav-resume { background-color: #eee; }
.nav-resume > div{ margin: 0 auto; max-width: 800px; background-color: #fff;}
.rotate {
	-webkit-transform:rotate(-2deg);
	-moz-transform:rotate(-2deg);
	-o-transform:rotate(-2deg);
	-ms-transform:rotate(-2deg);
	transform:rotate(-2deg);
}
.highlighthover:hover{
	background-color: #ddd;
}

#brailleDiv{ width: 35px; }
.polaroid { 
	-moz-transition: all 0.2s ease-in-out; 
	-webkit-transition: all 0.2s ease-in-out; 
	-o-transition: all 0.2s ease-in-out; 
	-ms-transition: all 0.2s ease-in-out; 
	display: block; 
	background: #fff; 
	padding: 10px; 
	margin:5px; 
	-moz-box-shadow: #ccc 5px 5px 20px; 
	-webkit-box-shadow: #ccc 5px 5px 20px; 
	-o-box-shadow: #ccc 5px 5px 20px; 
	-ms-box-shadow: #ccc 5px 5px 20px; 
	margin-bottom:1em; 
}
.polaroid img { width: 200px; }
.polaroid:hover { 
	-moz-box-shadow: #666 5px 5px 20px; 
	-webkit-box-shadow: #666 5px 5px 20px; 
	-o-box-shadow: #666 5px 5px 20px; 
	-ms-box-shadow: #666 5px 5px 20px; 
}

#resume > h3{
	margin-top: 10px;
	padding-left: 5px;
	font-size: 14pt;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
}
#resume p{
	width: 100%;
	font-weight: bold;
	margin: 0px;
}
#resume p span{
	float: right;
}

@media print {
	header, footer, .noprint, .body .nav  { display: none; }
	.body { margin: 0 }	
}

.codeborder{
  padding: 5px;
  margin-bottom: 10px;
  border-left: 3px solid #000;
  border-right: 1px solid #000;
  background-color: #CCC;
  font-family:monospace;
  font-size:10pt;
}
/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
