/*-------------------------+
 | Site: Routelines        |
 | Part: Master stylesheet |
 +-------------------------*/


/* Imports
=====================================================================*/
@import url(//fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic,700,700italic|Open+Sans+Condensed:700,300,300italic);
@import url(/styles/reset.css);
@import url(//netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css);


/* Fonts
=====================================================================*/
body { font-family: "Open Sans", Arial, sans-serif; }
#footer h6, h1, #nav { font-family: "Open Sans Condensed", Arial, sans-serif; }


/* Basics
=====================================================================*/
a { color: #000; text-decoration: underline; }
a:hover { text-decoration: none; }
body { background: #4c4c4c; font-size: 17px; line-height: 1.4; padding-bottom: 30px; }
cite, em { font-style: italic; }
dl, ol, p, table, ul { margin-bottom: 1em; }
h1 { font-size: 50px; margin-bottom: 0.2em; text-transform: uppercase; }
h1, h2, h3, strong { font-weight: bold; }
h2 { font-size: 28px; margin-bottom: 0.25em; }
h2 span { font-size: 17px; font-weight: normal; margin-left: 1em; }
hr { background: #ddd; border: 0; clear: both; color: #ddd; height: 1px; margin: 30px 0; }
input, select, textarea { font-size: 1em; }
li { margin-bottom: 0.5em; }
ol { list-style: decimal; margin-left: 2em; }
table { border-collapse: collapse; width: 100%; }
ul { list-style: disc; margin-left: 2em; }


/* Layout
=====================================================================*/
.clear { clear: both; }
.content { margin-bottom: 30px; }
#footer-content, #header-content, #page-content { margin: 0 auto; max-width: 1280px; padding: 0 40px; }
.section { clear: both; overflow: hidden; margin-bottom: 30px; }
#page { background: #fff; padding: 50px 0; }


/* Content
=====================================================================*/

/* Action links */
.action {
    background: #fc0;
    color: #000;
    font-size: 20px;
    display: inline-block;
    padding: 0.4em 1em 0.5em;
    text-decoration: none;
    vertical-align: middle;
}

.action:hover { background: #4c4c4c; color: #fc0; }

/* Balloons */
.balloon img { border: 1px solid #ccc; float: left; margin-right: 15px; width: 80px; }
.balloon a:hover img { border-color: #000; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5); }

/* Callouts */
.call-l { float: left; margin: 0 30px 10px 0; }
.call-r { float: right; margin: 0 0 10px 30px; }

.photo {
    border: 10px solid #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    margin-right: 12px;
    -moz-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
    position: relative;
}

/* Features */
#features { list-style: none; margin: 0; }
#features a { border: 10px solid #333; display: block; }
#features a:hover { border-color: #fc0; }
#features img { display: block; margin-bottom: -1px; width: 100%; }
#features li { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); float: left; margin: 0 3.5% 70px 0; width: 31%; }
#features li.last { margin-right: 0; }

/* Footer */
#copyright { border-top: 1px solid #5e5e5e; font-size: 11px; padding-top: 10px; }
#footer { color: #ababab; font-size: 13px; padding-top: 20px; text-align: center; }
#footer a, #footer h6 { color: #fff; text-decoration: none; }
#footer a:hover { text-decoration: underline; }
#sources { list-style: none; margin: 2em 0 0; }
#sources a:hover img { opacity: 0.5; }
#sources img { vertical-align: middle; }
#sources li { display: inline; margin: 0 20px; }
#subfooter { margin-bottom: 25px; }

/* Forms */
    /* Placeholder */
    input::-moz-placeholder, textarea::-moz-placeholder { color: #999; font-style: italic; }
    input:-ms-input-placeholder, textarea:-ms-input-placeholder { color: #999; font-style: italic; }
    input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #999; font-style: italic; }
    
    /* Search */
    #search { margin: 30px 0; }
    #search .txt { margin-right: 1em; width: 50%; }
    #search p { margin: 0; }
    
    /* Subscribe */
	#subscribe { border-top: 1px solid #ddd; clear: both; line-height: 1.9em; padding: 30px 0; }
	#subscribe #mc_embed_signup .action { border: 0; width: 35%; }
	#subscribe #mc_embed_signup form { padding: 0; }
	#subscribe #mc_embed_signup .txt { width: 58%; }
	
	/* Text boxes */
	.txt {
        border: 1px solid #ccc;
        border-radius: 4px;
        box-shadow: inset 0 1px 1px #ddd;
        font-size: 20px;
        margin-right: 0.5em;
        padding: 0.3em;
        vertical-align: middle;
    }

/* Gallery */
#gallery { list-style: none; margin: 0; }
#gallery a { text-decoration: none; }
#gallery img { display: block; width: 100%; }
#gallery li { float: left; margin: 0 3.5% 18px 0; position: relative; width: 17.2%; }
#gallery li.clear { float: none; height: auto; width: auto; }
#gallery li.end { float: right; margin-right: 0; }
#gallery li:hover .thumb { border-color: #000; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.5); }

#gallery .hot {
    background: #4c4c4c;
    border-radius: 0 3px 3px 0;
    color: #fff;
    display: block;
    font-size: 12px;
    left: 0;
    padding: 0.5em 1em;
    position: absolute;
    text-transform: uppercase;
    top: 10px;
}

#gallery .hot .fa { color: #fc0; }

#gallery .new {
    background: url(/images/new.png) no-repeat 0 0;
    display: block;
    height: 80px;
    position: absolute;
    right: 0;
    text-indent: -9999em;
    top: 0;
    width: 80px;
}

#gallery .thumb { border: 1px solid #ccc; display: block; margin-bottom: 7px; }

#gallery .title {
    background: #fff;
    bottom: 0;
    display: block;
    font-size: 15px;
    letter-spacing: 0.02em;
    line-height: 1.3;
    text-align: center;
}

#gallery .title .city { font-weight: bold; }

/* Header */
#header { padding: 25px 0; }
    
    /* Logo */
    #logo { float: left; max-width: 242px; }
    #logo img { display: block; width: 100%; }
    
    /* Navigation */
    #nav { float: right; font-size: 30px; list-style: none; margin: 0; text-align: right; text-transform: uppercase; }
    #nav a { color: #fff; text-decoration: none; }
    #nav a:hover { text-decoration: underline; }
    #nav li { display: inline; margin: 0 0 0 1.5em; }
    #nav li.current { font-weight: 600; }

/* Intro */
#intro { margin-bottom: 60px; text-align: center; }
#intro h1 { margin: 0; }
#intro h2 { font-size: 23px; font-weight: normal; margin-bottom: 0.5em; }

/* List of posters */
#list h2 { margin-bottom: 1em; }

/* Locations */
#locations { background: #fff; border: 4px solid #4c4c4c; margin-bottom: 25px; overflow: hidden; }
#locations a { text-decoration: none; }
#locations-content { border-top: 1px solid #ddd; padding: 30px; position: relative; }

    /* Close */
    .close { color: #aaa; font-size: 33px; position: absolute; right: 30px; top: 30px; }
    .close:hover { color: #000; }
    
    /* Countries */
    #countries { list-style: none; margin: 0; }
    #countries a { display: block; padding: 0.5em 0.5em 0.5em 46px; }
    #countries a:hover { background: #4c4c4c; color: #fff; }
    #countries a:hover strong { color: #fff; }
    #countries img { float: left; margin: -3px 0 0 -40px; width: 32px; }
    #countries li { float: left; margin: 0 3% 0 0; width: 30%; }
    #countries strong { color: #555; font-weight: normal; }
    
    /* Trigger */
    #locations-trigger { display: block; font-size: 20px; padding: 1em 1em; text-align: center; }
    #locations-trigger:hover { background: #4c4c4c; color: #fff; }

/* Map */
#map { height: 750px; }

/* Mute */
.mute { color: #555; font-size: 12px; }

/* Page tools */
.page-tools { margin-bottom: 20px; }

/* Poster details */
#poster-primary { float: right; width: 48%; }
#poster-secondary { float: left; width: 48%; }

    /* Colors */
    #colors { list-style: none; margin-left: 0; }
    #colors a { display: inline-block; position: relative; }
    #colors .fa { color: #fc0; display: none; font-size: 45px; left: 14px; position: absolute; top: 10px; }
    #colors img { border: 5px solid #fff; display: inline-block; max-width: 100px; }
    #colors li { display: inline; margin: 0 10px 0 0; }
    #colors li.current .fa { display: block; }
    #colors li.current img { border-color: #fc0; }
    #colors .title { display: none; }
    
    /* Sizes */
    #sizes td, #sizes th { border: 1px solid #ddd; border-width: 1px 0; padding: 0.3em 0; text-align: center; width: 33.3%; }
    #sizes #prices { font-size: 33px; font-weight: bold; }
    #sizes #prices .cents { font-size: 16px; }

    /* Viewer */
    #viewport { border: 1px solid #aaa; margin-bottom: 30px; position: relative; }
    #viewport a { text-decoration: none; }
    #viewport a:hover #magnify { opacity: 1; }
    #viewport img { display: block; width: 100%; }
    
    #viewport #magnify {
        color: #fff;
        left: 10px;
        opacity: 0.7;
        position: absolute;
        text-shadow: 0 0 4px rgba(0, 0, 0, 1);
        top: 10px;
    }

/* Sale */
.sale { background: #fff; border: 3px solid #fc0; font-size: 25px; text-align: center; margin-bottom: 20px; padding: 1em; }
.sale em { font-style: normal; font-weight: bold; }
.sale .fa { color: #fc0; }
.sale p { margin: 0 0 0.3em; }

/* Sharing */
.addthis_toolbox { margin-top: 50px; }
.addthis_toolbox a { color: #4c4c4c; margin-right: 5px; opacity: 0.5; text-decoration: none; }
.addthis_toolbox a:hover { opacity: 1; }

/* View nav */
#view-nav { float: right; font-size: 26px; list-style: none; margin: 0; }
#view-nav a { text-decoration: none; }
#view-nav a:hover { opacity: 0.7; }
#view-nav li { display: inline; margin: 0 0 0 15px; }
#view-nav li.current a { color: #fc0; }