/* ==========================================================================
	    BASE
========================================================================== */
html
{
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
body
{
    color: #666;
    font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 24px;
}
p
{
    font-family: Georgia, sans-serif;
    font-size: 1.125em;
    text-align:center;
    line-height: 32px;
    color: #282525;
    margin-bottom: 18px;
}


h1
{
    color: #333;
    font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 36px;
}


video
{
    width:100%;
    height:auto;
    -webkit-transform-style: preserve-3d;
}


figcaption
{
    background-color: #f6f6f6;
    font-size: 14px;
    margin: 0;
    padding: 15px 35px 15px 15px;
    line-height: 18px;
    color: #666;
    font-style: italic;
}

ul > li{line-height: 32px;}

footer{background-color:#282525;display:block;min-height:40px;}
footer p{color:#e9e9e9;text-align: right;font-size: 16px;}
footer .is-bold{color:#e9e9e9}


#canvas
{
    position: absolute;
    z-index: 0;
}

#page-wrapper
{
    overflow: hidden;
}

/* ==========================================================================
	    LAYOUT
========================================================================== */

#site-header 
{
    text-align: justify;
    height: 50px;;
    padding: 0 5%;
    background: #282525;
    color: #e9e9e9;
    width: 100%;
    position: relative;
    z-index: 1000;
}

#site-header-holder
{
    display:none;
    width: 100%;
    min-height: 50px;
}
 
#site-header::after 
{
    content: '';
    display: inline-block;
    width: 100%;
}
 
#site-header > div,
#site-header > div::before,
#site-header nav,
#site-header > div h1 
{
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    margin: 0;
}
#site-header > div h1 a
{
    color: #e9e9e9;
}
#site-header > div h1 a: hover
{
    text-decoration: none;
}
 
#site-header > div 
{
    height: 100%;
}
 
#site-header > div::before 
{
    content: '';
    height: 100%;
}
 
#site-header > div h1 
{
    font-size: 20px;
    font-weight: 500;
}
 
#site-nav a 
{
    padding: 0 0.6em;
    white-space: nowrap;
    color: #e9e9e9;
    display: inline-block;
    text-align: center;
    font-size: 12px;
    height: 50px;
    padding-top: 10px;
    font-weight: normal;
}

#site-nav a:hover
{
    text-decoration: none;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
}

#mobile-site-nav
{
    position: fixed;
    background-color: #333;
    z-index: 9000;
    border-top:1px solid #111;
}
#mobile-site-nav-inner
{
    margin-left: 5% auto;
}
#mobile-site-nav-inner a
{
    color: #fff;
    text-align: center;
    height: 50px;
    min-width: 150px;
    display: block;
    text-decoration: none;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    margin: 20px 0;
}
 
#site-header nav a:last-child 
{
    padding-right: 0;
}

#showHide{background-color: #222;}
#showHide span{background-color: #e9e9e9;}

#story-deck
{
    font-size:16px;
    color:#282525;
    text-align: center;
    padding: 80px 0;
    position:absolute;
    z-index: 100000;
    height: 80%;
    width: 80%;
    overflow: auto;
    margin: auto;
    top: 0; left: 0; bottom: 0; right: 0;
}
#story-deck .story-title
{
    font-family: Georgia, serif;
    font-size: 5em;
    font-weight: 500;
    text-transform: uppercase;
    position: relative;
    letter-spacing: .1em;
    margin-bottom: 20px;
    padding-bottom: 20px;
    color: #fff;
    text-shadow: 2px 2px 5px #000;
}
#story-deck h1.story-title::after
{
    content: "";
    height: 1px;
    width: 200px;
    /*background: #282525;*/
    background: #fff;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.story-subtitle
{
    line-height: 1.8;
    font-size: 1.525em;
    font-style: italic;
    font-weight: 300;
    color: #fff;
    text-shadow: 1px 1px 5px #000;
}


#hero{min-height:500px;background-color:#000;position: relative;}
#hero > .title {position: absolute; right: 10%; top: 20%;z-index: 900;}

#hero > .title
{
    text-align: left;
    font-size: 36px;
    border-left: 3px solid #e9e9e9;
    padding-left: 25px;

}
#hero > .title h1
{
    font-weight: 200;
    position: relative;
    color: #fff;
}
#hero > .title h2
{
    position: relative;
    font-size: 18px;
    font-weight: 200;
    color: #999;
}
#hero > .title span.is-bold
{
    font-weight: 400;
    color: #eaeaea;
}
#hero video
{
    width: 100%;
}

#hero-title.title{left: 5%; right:0; text-align: left;}
#hero-title.title > h1{color:#fff;}
#hero-title.title h2{color:#dadada;}
#hero-title.title h2 span.is-bold{color:#dadada;}

#pano-enter
{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    display: block;
    z-index: 900;
}

.full-screen{z-index:9000;}
.full-pano
{
    position: absolute;
    z-index: 9010;
    height:100%;
    width:100%;
    cursor: pointer;
}
#mypanoviewer{height:500px;}

#main-text
{
    position: relative;
    border-right: 1px solid #282525;
    border-left: 1px solid #282525;
    padding: 40px 10%;
}
#main-text:before
{
    content: "";
    display: block;
    height: 100%;
    width: 1px;
    background: #282525;
    position: absolute;
    left: 12px;
    top: 0;
}
#main-text:after
{
    content: "";
    display: block;
    height: 100%;
    width: 1px;
    background: #282525;
    position: absolute;
    right: 12px;
    top: 0;
}
#main-text, #main-text > p
{
    text-align: left;
}


/* ==========================================================================
	    MODULE
========================================================================== */

/*ID, because there can only be one!*/
#top-office
{
    position: absolute;
    height: 125%;
    width: 125%;
    z-index: 900;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    right: -13%;
    top: -17%;
    background-image: url(../../top-office-award-crown.png);

}

#top-office2
{
    z-index: 900;
    margin: 0 auto 20px auto;
    display: block;
}

.top-office.gold{background-image: url(../../top-office-award2.png);}
.top-office.silver{background-image: url(../../top-office-award-silver.png);}
.top-office.bronze{background-image: url(../../top-office-award-bronze.png);}

#vote-results{max-width: 980px; margin: 20px auto; text-align: center;}

.card
{
    box-shadow: 0 1px 0 #cfcfcf;
    border-radius: 3px;
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid #d2d2d2;
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: block;
    text-decoration: none;
}

.card .card-heading
{
    background-color:#ffffff;
    font-weight:700;
    font-size:16px;
    color:#262626;
    border-color:#ffffff;
}
.card .card-heading a
{
    font-weight:400;
    font-size:11px;
}
.card .lead
{
    font-size: 35px;
    margin: 0;
}
.card .card-default
{
    border-color:#cccccc;
}
.card-body
{
    padding: 15px;
    min-height: 160px;
    display: block;
}
.card .card-thumbnail
{
    padding:0;
    
}
.card .card-thumbnail > a
{
    display:block;
}
.card .card-thumbnail img
{
    max-height:240px;
    width: auto;
    
}

.inner{max-width:850px;margin:0 auto;}

.section-title
{
    font-family: AndaleMono, droid-sans-mono, Impact, Arial, sans;
    text-transform: uppercase;
    font-size: 32px;
    font-weight: 300;
    color: #282525;
    text-align: center;
 
}

.call-box
{
    padding: 80px 10%;
    max-height: 400px;
}
.right-divider{border-right: 1px solid #282525;}
.left-divider{border-left: 1px solid #282525;}

.bottom-divider{border-bottom: 1px solid #282525;}

.alt-dark > .inner > .section-title
{
    color:#fff;
}
.alt-dark > .inner > p
{
    color:#b3b4ae;
}

.content-img
{
    max-width: 80%;
    width: 80%;
    margin: 10px auto;
}


#person-img
{
    background: url(../img/content/person.jpg) no-repeat center;
    background-size: cover;
    height: 200px;
    position: relative;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
}

.circle-play
{
    border: 5px solid #282525;
    border-radius: 50%;
    font-size: 60px;
    width: 75px;
    height: 75px;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 28px 0 0 8px;
    color: #282525;
    margin-top: 30px;
    background-color: white;
    position: absolute;
    left: 40%;
    top: 15%;
    text-decoration: none;
}
.circle-play:hover
{
    color: #282525;
    text-decoration: none;
}


#quick-facts{margin-left: 15%;margin-top: 20px;}

/* ==========================================================================
	    STATE
========================================================================== */

.alt-dark
{
    background-color: #282525;
}
.is-bold
{
    font-weight: bold;
    color: #333;
}

.is-right
{
    right: -30%;
    height: 100%;
    width: 30%;
    top: 50px;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-invisible{opacity: 0;}
.is-visible{opacity: 1;display:block!important;}

.show-right
{
    right: 0;
    width: 30%;
    min-width: 150px;
    height: 100%;
    top: 50px;
    visibility: visible;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.is-animated
{    
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.meta-data.is-animated .is-invisible,.meta-data.is-animated .is-visible
{
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    transition: all 0.6s ease;
}


.is-fixed
{
    position: fixed!important;
}

.is-block
{
    display:block!important;
}

.is-hidden
{
    display:none!important;
}



/* ==========================================================================
	    THEME
========================================================================== */


/*
* === MEDIA QUERIES ===
*/
@media screen and (min-width: 969px)
{
    #mobile-site-nav{display:none;}
}
@media screen and (max-width: 968px)
{
    #site-nav{display:none!important;}
    #showHide{display:block;}

}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    section#hero{position: relative;}
    #hero video{position: absolute;height: 100%; width:100%;}
    video{min-height:300px;}
}


@media screen and (max-width: 720px)
{    
    #site-header > div,
    #site-header > div h1,
    #site-header nav 
    {
        height: 50px;
        width: auto;
        padding-top: 7px;
    }
    
    
    #hero{min-height:0;}
    #hero > .title
    {
        top: 10%;
    }
     
}

@media screen and (max-width: 480px)
{
    
    #hero{padding-top:50px;}
    
    #hero-title.title{top:6%;}
    
    #hero > .title
    {
        text-align: left;
        border-left: 3px solid #e9e9e9;
        padding-left: 25px;

    }
    #hero > .title h1
    {
        font-weight: 200;
        position: relative;
        color: #fff;
        font-size: 24px;
        margin-top: 5px;
    }
    #hero > .title h2
    {
        position: relative;
        font-size: 16px;
        font-weight: 200;
        color: #999;
    }
    #hero > .title span.is-bold
    {
        font-weight: 400;
        color: #eaeaea;
    }
    #story-deck .story-title
    {
        font-size: 4em;
    }   
    
    
}
@media screen and (max-width:320px)
{
       #story-deck .story-title
    {
        font-size: 3em;
    }   
}

